Also move the declaration to internal.h, and add restrict qualifiers to the declaration (as in the implementation). Signed-off-by: Martin Storsjö <martin@martin.st>tags/n2.0
| @@ -1135,7 +1135,7 @@ static int cavs_decode_frame(AVCodecContext *avctx, void *data, int *got_frame, | |||||
| buf_ptr = buf; | buf_ptr = buf; | ||||
| buf_end = buf + buf_size; | buf_end = buf + buf_size; | ||||
| for(;;) { | for(;;) { | ||||
| buf_ptr = avpriv_mpv_find_start_code(buf_ptr, buf_end, &stc); | |||||
| buf_ptr = avpriv_find_start_code(buf_ptr, buf_end, &stc); | |||||
| if ((stc & 0xFFFFFE00) || buf_ptr == buf_end) | if ((stc & 0xFFFFFE00) || buf_ptr == buf_end) | ||||
| return FFMAX(0, buf_ptr - buf); | return FFMAX(0, buf_ptr - buf); | ||||
| input_size = (buf_end - buf_ptr) * 8; | input_size = (buf_end - buf_ptr) * 8; | ||||
| @@ -28,6 +28,7 @@ | |||||
| #include "parser.h" | #include "parser.h" | ||||
| #include "h264data.h" | #include "h264data.h" | ||||
| #include "golomb.h" | #include "golomb.h" | ||||
| #include "internal.h" | |||||
| #include <assert.h> | #include <assert.h> | ||||
| @@ -130,7 +131,7 @@ static inline int parse_nal_units(AVCodecParserContext *s, | |||||
| for(;;) { | for(;;) { | ||||
| int src_length, dst_length, consumed; | int src_length, dst_length, consumed; | ||||
| buf = avpriv_mpv_find_start_code(buf, buf_end, &state); | |||||
| buf = avpriv_find_start_code(buf, buf_end, &state); | |||||
| if(buf >= buf_end) | if(buf >= buf_end) | ||||
| break; | break; | ||||
| --buf; | --buf; | ||||
| @@ -30,6 +30,7 @@ | |||||
| #include "libavutil/mathematics.h" | #include "libavutil/mathematics.h" | ||||
| #include "libavutil/pixfmt.h" | #include "libavutil/pixfmt.h" | ||||
| #include "avcodec.h" | #include "avcodec.h" | ||||
| #include "config.h" | |||||
| #define FF_SANE_NB_CHANNELS 63U | #define FF_SANE_NB_CHANNELS 63U | ||||
| @@ -161,4 +162,8 @@ int ff_get_buffer(AVCodecContext *avctx, AVFrame *frame, int flags); | |||||
| */ | */ | ||||
| int ff_reget_buffer(AVCodecContext *avctx, AVFrame *frame); | int ff_reget_buffer(AVCodecContext *avctx, AVFrame *frame); | ||||
| const uint8_t *avpriv_find_start_code(const uint8_t *restrict p, | |||||
| const uint8_t *end, | |||||
| uint32_t *restrict state); | |||||
| #endif /* AVCODEC_INTERNAL_H */ | #endif /* AVCODEC_INTERNAL_H */ | ||||
| @@ -1709,7 +1709,7 @@ static int mpeg_decode_slice(MpegEncContext *s, int mb_y, | |||||
| if (avctx->hwaccel) { | if (avctx->hwaccel) { | ||||
| const uint8_t *buf_end, *buf_start = *buf - 4; /* include start_code */ | const uint8_t *buf_end, *buf_start = *buf - 4; /* include start_code */ | ||||
| int start_code = -1; | int start_code = -1; | ||||
| buf_end = avpriv_mpv_find_start_code(buf_start + 2, *buf + buf_size, &start_code); | |||||
| buf_end = avpriv_find_start_code(buf_start + 2, *buf + buf_size, &start_code); | |||||
| if (buf_end < *buf + buf_size) | if (buf_end < *buf + buf_size) | ||||
| buf_end -= 4; | buf_end -= 4; | ||||
| s->mb_y = mb_y; | s->mb_y = mb_y; | ||||
| @@ -1901,7 +1901,7 @@ static int slice_decode_thread(AVCodecContext *c, void *arg) | |||||
| return 0; | return 0; | ||||
| start_code = -1; | start_code = -1; | ||||
| buf = avpriv_mpv_find_start_code(buf, s->gb.buffer_end, &start_code); | |||||
| buf = avpriv_find_start_code(buf, s->gb.buffer_end, &start_code); | |||||
| mb_y= (start_code - SLICE_MIN_START_CODE) << field_pic; | mb_y= (start_code - SLICE_MIN_START_CODE) << field_pic; | ||||
| if (s->picture_structure == PICT_BOTTOM_FIELD) | if (s->picture_structure == PICT_BOTTOM_FIELD) | ||||
| mb_y++; | mb_y++; | ||||
| @@ -2185,7 +2185,7 @@ int ff_mpeg1_find_frame_end(ParseContext *pc, const uint8_t *buf, int buf_size, | |||||
| } | } | ||||
| state++; | state++; | ||||
| } else { | } else { | ||||
| i = avpriv_mpv_find_start_code(buf + i, buf + buf_size, &state) - buf - 1; | |||||
| i = avpriv_find_start_code(buf + i, buf + buf_size, &state) - buf - 1; | |||||
| if (pc->frame_start_found == 0 && state >= SLICE_MIN_START_CODE && state <= SLICE_MAX_START_CODE) { | if (pc->frame_start_found == 0 && state >= SLICE_MIN_START_CODE && state <= SLICE_MAX_START_CODE) { | ||||
| i++; | i++; | ||||
| pc->frame_start_found = 4; | pc->frame_start_found = 4; | ||||
| @@ -2229,7 +2229,7 @@ static int decode_chunks(AVCodecContext *avctx, | |||||
| for (;;) { | for (;;) { | ||||
| /* find next start code */ | /* find next start code */ | ||||
| uint32_t start_code = -1; | uint32_t start_code = -1; | ||||
| buf_ptr = avpriv_mpv_find_start_code(buf_ptr, buf_end, &start_code); | |||||
| buf_ptr = avpriv_find_start_code(buf_ptr, buf_end, &start_code); | |||||
| if (start_code > 0x1ff) { | if (start_code > 0x1ff) { | ||||
| if (s2->pict_type != AV_PICTURE_TYPE_B || avctx->skip_frame <= AVDISCARD_DEFAULT) { | if (s2->pict_type != AV_PICTURE_TYPE_B || avctx->skip_frame <= AVDISCARD_DEFAULT) { | ||||
| if (HAVE_THREADS && (avctx->active_thread_type & FF_THREAD_SLICE)) { | if (HAVE_THREADS && (avctx->active_thread_type & FF_THREAD_SLICE)) { | ||||
| @@ -800,7 +800,6 @@ int ff_update_duplicate_context(MpegEncContext *dst, MpegEncContext *src); | |||||
| int ff_MPV_lowest_referenced_row(MpegEncContext *s, int dir); | int ff_MPV_lowest_referenced_row(MpegEncContext *s, int dir); | ||||
| void ff_MPV_report_decode_progress(MpegEncContext *s); | void ff_MPV_report_decode_progress(MpegEncContext *s); | ||||
| int ff_mpeg_update_thread_context(AVCodecContext *dst, const AVCodecContext *src); | int ff_mpeg_update_thread_context(AVCodecContext *dst, const AVCodecContext *src); | ||||
| const uint8_t *avpriv_mpv_find_start_code(const uint8_t *p, const uint8_t *end, uint32_t *state); | |||||
| void ff_set_qscale(MpegEncContext * s, int qscale); | void ff_set_qscale(MpegEncContext * s, int qscale); | ||||
| void ff_mpeg_er_frame_start(MpegEncContext *s); | void ff_mpeg_er_frame_start(MpegEncContext *s); | ||||
| @@ -22,6 +22,7 @@ | |||||
| #include "parser.h" | #include "parser.h" | ||||
| #include "mpegvideo.h" | #include "mpegvideo.h" | ||||
| #include "internal.h" | |||||
| struct MpvParseContext { | struct MpvParseContext { | ||||
| ParseContext pc; | ParseContext pc; | ||||
| @@ -48,7 +49,7 @@ static void mpegvideo_extract_headers(AVCodecParserContext *s, | |||||
| while (buf < buf_end) { | while (buf < buf_end) { | ||||
| start_code= -1; | start_code= -1; | ||||
| buf= avpriv_mpv_find_start_code(buf, buf_end, &start_code); | |||||
| buf= avpriv_find_start_code(buf, buf_end, &start_code); | |||||
| bytes_left = buf_end - buf; | bytes_left = buf_end - buf; | ||||
| switch(start_code) { | switch(start_code) { | ||||
| case PICTURE_START_CODE: | case PICTURE_START_CODE: | ||||
| @@ -39,7 +39,6 @@ | |||||
| #include "avcodec.h" | #include "avcodec.h" | ||||
| #include "dsputil.h" | #include "dsputil.h" | ||||
| #include "libavutil/opt.h" | #include "libavutil/opt.h" | ||||
| #include "mpegvideo.h" | |||||
| #include "thread.h" | #include "thread.h" | ||||
| #include "internal.h" | #include "internal.h" | ||||
| #include "bytestream.h" | #include "bytestream.h" | ||||
| @@ -2199,9 +2198,9 @@ int avcodec_is_open(AVCodecContext *s) | |||||
| return !!s->internal; | return !!s->internal; | ||||
| } | } | ||||
| const uint8_t *avpriv_mpv_find_start_code(const uint8_t *restrict p, | |||||
| const uint8_t *end, | |||||
| uint32_t * restrict state) | |||||
| const uint8_t *avpriv_find_start_code(const uint8_t *restrict p, | |||||
| const uint8_t *end, | |||||
| uint32_t * restrict state) | |||||
| { | { | ||||
| int i; | int i; | ||||
| @@ -22,9 +22,10 @@ | |||||
| #include "libavutil/bswap.h" | #include "libavutil/bswap.h" | ||||
| #include "libavutil/crc.h" | #include "libavutil/crc.h" | ||||
| #include "libavutil/dict.h" | #include "libavutil/dict.h" | ||||
| #include "libavutil/intreadwrite.h" | |||||
| #include "libavutil/mathematics.h" | #include "libavutil/mathematics.h" | ||||
| #include "libavutil/opt.h" | #include "libavutil/opt.h" | ||||
| #include "libavcodec/mpegvideo.h" | |||||
| #include "libavcodec/internal.h" | |||||
| #include "avformat.h" | #include "avformat.h" | ||||
| #include "internal.h" | #include "internal.h" | ||||
| #include "mpegts.h" | #include "mpegts.h" | ||||
| @@ -1019,7 +1020,7 @@ static int mpegts_write_packet_internal(AVFormatContext *s, AVPacket *pkt) | |||||
| } | } | ||||
| do { | do { | ||||
| p = avpriv_mpv_find_start_code(p, buf_end, &state); | |||||
| p = avpriv_find_start_code(p, buf_end, &state); | |||||
| av_dlog(s, "nal %d\n", state & 0x1f); | av_dlog(s, "nal %d\n", state & 0x1f); | ||||
| } while (p < buf_end && (state & 0x1f) != 9 && | } while (p < buf_end && (state & 0x1f) != 9 && | ||||
| (state & 0x1f) != 5 && (state & 0x1f) != 1); | (state & 0x1f) != 5 && (state & 0x1f) != 1); | ||||
| @@ -20,7 +20,7 @@ | |||||
| * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA | ||||
| */ | */ | ||||
| #include "libavcodec/mpegvideo.h" | |||||
| #include "libavcodec/internal.h" | |||||
| #include "avformat.h" | #include "avformat.h" | ||||
| #include "rtpenc.h" | #include "rtpenc.h" | ||||
| @@ -56,7 +56,7 @@ void ff_rtp_send_mpegvideo(AVFormatContext *s1, const uint8_t *buf1, int size) | |||||
| r1 = buf1; | r1 = buf1; | ||||
| while (1) { | while (1) { | ||||
| start_code = -1; | start_code = -1; | ||||
| r = avpriv_mpv_find_start_code(r1, end, &start_code); | |||||
| r = avpriv_find_start_code(r1, end, &start_code); | |||||
| if((start_code & 0xFFFFFF00) == 0x100) { | if((start_code & 0xFFFFFF00) == 0x100) { | ||||
| /* New start code found */ | /* New start code found */ | ||||
| if (start_code == 0x100) { | if (start_code == 0x100) { | ||||