* qatar/master: fifo: add FIFO API test program, and fate test fifo: add av_fifo_peek2(), and deprecate av_fifo_peek() postprocess.c: filter name needs to be double 0 terminated doxygen: fix wrong comment syntax, //< vs. ///< doxygen: drop pointless star from pointer variable names Replace deprecated av_find_stream_info() by avformat_find_stream_info(). xmv: eliminate superfluous zeroing of zero data configure: fix typo in avconv dependency list Conflicts: configure doc/APIchanges libavutil/Makefile libavutil/avutil.h Merged-by: Michael Niedermayer <michaelni@gmx.at>tags/n0.9
| @@ -1529,8 +1529,8 @@ postproc_deps="gpl" | |||||
| # programs | # programs | ||||
| ffmpeg_deps="avcodec avformat swscale" | ffmpeg_deps="avcodec avformat swscale" | ||||
| ffmpeg_select="buffer_filter buffersink_filter" | ffmpeg_select="buffer_filter buffersink_filter" | ||||
| av_deps="avcodec avformat swscale" | |||||
| av_select="buffer_filter" | |||||
| avconv_deps="avcodec avformat swscale" | |||||
| avconv_select="buffer_filter" | |||||
| ffplay_deps="avcodec avformat swscale sdl" | ffplay_deps="avcodec avformat swscale sdl" | ||||
| ffplay_select="buffersink_filter rdft" | ffplay_select="buffersink_filter rdft" | ||||
| ffprobe_deps="avcodec avformat" | ffprobe_deps="avcodec avformat" | ||||
| @@ -2162,7 +2162,7 @@ static int open_input_stream(HTTPContext *c, const char *info) | |||||
| } | } | ||||
| s->flags |= AVFMT_FLAG_GENPTS; | s->flags |= AVFMT_FLAG_GENPTS; | ||||
| c->fmt_in = s; | c->fmt_in = s; | ||||
| if (strcmp(s->iformat->name, "ffm") && av_find_stream_info(c->fmt_in) < 0) { | |||||
| if (strcmp(s->iformat->name, "ffm") && avformat_find_stream_info(c->fmt_in, NULL) < 0) { | |||||
| http_log("Could not find stream info '%s'\n", input_filename); | http_log("Could not find stream info '%s'\n", input_filename); | ||||
| av_close_input_file(s); | av_close_input_file(s); | ||||
| return -1; | return -1; | ||||
| @@ -3621,7 +3621,7 @@ static void build_file_streams(void) | |||||
| } else { | } else { | ||||
| /* find all the AVStreams inside and reference them in | /* find all the AVStreams inside and reference them in | ||||
| 'stream' */ | 'stream' */ | ||||
| if (av_find_stream_info(infile) < 0) { | |||||
| if (avformat_find_stream_info(infile, NULL) < 0) { | |||||
| http_log("Could not find codec parameters from '%s'\n", | http_log("Could not find codec parameters from '%s'\n", | ||||
| stream->feed_filename); | stream->feed_filename); | ||||
| av_close_input_file(infile); | av_close_input_file(infile); | ||||
| @@ -104,11 +104,11 @@ enum CouplingPoint { | |||||
| * Output configuration status | * Output configuration status | ||||
| */ | */ | ||||
| enum OCStatus { | enum OCStatus { | ||||
| OC_NONE, //< Output unconfigured | |||||
| OC_TRIAL_PCE, //< Output configuration under trial specified by an inband PCE | |||||
| OC_TRIAL_FRAME, //< Output configuration under trial specified by a frame header | |||||
| OC_GLOBAL_HDR, //< Output configuration set in a global header but not yet locked | |||||
| OC_LOCKED, //< Output configuration locked in place | |||||
| OC_NONE, ///< Output unconfigured | |||||
| OC_TRIAL_PCE, ///< Output configuration under trial specified by an inband PCE | |||||
| OC_TRIAL_FRAME, ///< Output configuration under trial specified by a frame header | |||||
| OC_GLOBAL_HDR, ///< Output configuration set in a global header but not yet locked | |||||
| OC_LOCKED, ///< Output configuration locked in place | |||||
| }; | }; | ||||
| /** | /** | ||||
| @@ -28,9 +28,9 @@ | |||||
| #include "aacps_tablegen.h" | #include "aacps_tablegen.h" | ||||
| #include "aacpsdata.c" | #include "aacpsdata.c" | ||||
| #define PS_BASELINE 0 //< Operate in Baseline PS mode | |||||
| //< Baseline implies 10 or 20 stereo bands, | |||||
| //< mixing mode A, and no ipd/opd | |||||
| #define PS_BASELINE 0 ///< Operate in Baseline PS mode | |||||
| ///< Baseline implies 10 or 20 stereo bands, | |||||
| ///< mixing mode A, and no ipd/opd | |||||
| #define numQMFSlots 32 //numTimeSlots * RATE | #define numQMFSlots 32 //numTimeSlots * RATE | ||||
| @@ -654,7 +654,7 @@ static void decorrelation(PSContext *ps, float (*out)[32][2], const float (*s)[3 | |||||
| const int8_t *k_to_i = is34 ? k_to_i_34 : k_to_i_20; | const int8_t *k_to_i = is34 ? k_to_i_34 : k_to_i_20; | ||||
| const float peak_decay_factor = 0.76592833836465f; | const float peak_decay_factor = 0.76592833836465f; | ||||
| const float transient_impact = 1.5f; | const float transient_impact = 1.5f; | ||||
| const float a_smooth = 0.25f; //< Smoothing coefficient | |||||
| const float a_smooth = 0.25f; ///< Smoothing coefficient | |||||
| int i, k, m, n; | int i, k, m, n; | ||||
| int n0 = 0, nL = 32; | int n0 = 0, nL = 32; | ||||
| static const int link_delay[] = { 3, 4, 5 }; | static const int link_delay[] = { 3, 4, 5 }; | ||||
| @@ -52,11 +52,11 @@ typedef struct { | |||||
| int num_env; | int num_env; | ||||
| int enable_ipdopd; | int enable_ipdopd; | ||||
| int border_position[PS_MAX_NUM_ENV+1]; | int border_position[PS_MAX_NUM_ENV+1]; | ||||
| int8_t iid_par[PS_MAX_NUM_ENV][PS_MAX_NR_IIDICC]; //<Inter-channel Intensity Difference Parameters | |||||
| int8_t icc_par[PS_MAX_NUM_ENV][PS_MAX_NR_IIDICC]; //<Inter-Channel Coherence Parameters | |||||
| int8_t iid_par[PS_MAX_NUM_ENV][PS_MAX_NR_IIDICC]; ///< Inter-channel Intensity Difference Parameters | |||||
| int8_t icc_par[PS_MAX_NUM_ENV][PS_MAX_NR_IIDICC]; ///< Inter-Channel Coherence Parameters | |||||
| /* ipd/opd is iid/icc sized so that the same functions can handle both */ | /* ipd/opd is iid/icc sized so that the same functions can handle both */ | ||||
| int8_t ipd_par[PS_MAX_NUM_ENV][PS_MAX_NR_IIDICC]; //<Inter-channel Phase Difference Parameters | |||||
| int8_t opd_par[PS_MAX_NUM_ENV][PS_MAX_NR_IIDICC]; //<Overall Phase Difference Parameters | |||||
| int8_t ipd_par[PS_MAX_NUM_ENV][PS_MAX_NR_IIDICC]; ///< Inter-channel Phase Difference Parameters | |||||
| int8_t opd_par[PS_MAX_NUM_ENV][PS_MAX_NR_IIDICC]; ///< Overall Phase Difference Parameters | |||||
| int is34bands; | int is34bands; | ||||
| int is34bands_old; | int is34bands_old; | ||||
| @@ -139,7 +139,7 @@ static void ps_tableinit(void) | |||||
| } | } | ||||
| for (iid = 0; iid < 46; iid++) { | for (iid = 0; iid < 46; iid++) { | ||||
| float c = iid_par_dequant[iid]; //<Linear Inter-channel Intensity Difference | |||||
| float c = iid_par_dequant[iid]; ///< Linear Inter-channel Intensity Difference | |||||
| float c1 = (float)M_SQRT2 / sqrtf(1.0f + c*c); | float c1 = (float)M_SQRT2 / sqrtf(1.0f + c*c); | ||||
| float c2 = c * c1; | float c2 = c * c1; | ||||
| for (icc = 0; icc < 8; icc++) { | for (icc = 0; icc < 8; icc++) { | ||||
| @@ -2888,8 +2888,8 @@ typedef struct AVCodecContext { | |||||
| * - decoding: Set by user, otherwise the default is used. | * - decoding: Set by user, otherwise the default is used. | ||||
| */ | */ | ||||
| int thread_type; | int thread_type; | ||||
| #define FF_THREAD_FRAME 1 //< Decode more than one frame at once | |||||
| #define FF_THREAD_SLICE 2 //< Decode more than one part of a single frame at once | |||||
| #define FF_THREAD_FRAME 1 ///< Decode more than one frame at once | |||||
| #define FF_THREAD_SLICE 2 ///< Decode more than one part of a single frame at once | |||||
| /** | /** | ||||
| * Which multithreading methods are in use by the codec. | * Which multithreading methods are in use by the codec. | ||||
| @@ -31,13 +31,13 @@ typedef struct { | |||||
| int sampling_index; | int sampling_index; | ||||
| int sample_rate; | int sample_rate; | ||||
| int chan_config; | int chan_config; | ||||
| int sbr; //< -1 implicit, 1 presence | |||||
| int sbr; ///< -1 implicit, 1 presence | |||||
| int ext_object_type; | int ext_object_type; | ||||
| int ext_sampling_index; | int ext_sampling_index; | ||||
| int ext_sample_rate; | int ext_sample_rate; | ||||
| int ext_chan_config; | int ext_chan_config; | ||||
| int channels; | int channels; | ||||
| int ps; //< -1 implicit, 1 presence | |||||
| int ps; ///< -1 implicit, 1 presence | |||||
| } MPEG4AudioConfig; | } MPEG4AudioConfig; | ||||
| extern const int ff_mpeg4audio_sample_rates[16]; | extern const int ff_mpeg4audio_sample_rates[16]; | ||||
| @@ -300,7 +300,7 @@ typedef struct MpegEncContext { | |||||
| Picture *current_picture_ptr; ///< pointer to the current picture | Picture *current_picture_ptr; ///< pointer to the current picture | ||||
| int picture_count; ///< number of allocated pictures (MAX_PICTURE_COUNT * avctx->thread_count) | int picture_count; ///< number of allocated pictures (MAX_PICTURE_COUNT * avctx->thread_count) | ||||
| int picture_range_start, picture_range_end; ///< the part of picture that this context can allocate in | int picture_range_start, picture_range_end; ///< the part of picture that this context can allocate in | ||||
| uint8_t *visualization_buffer[3]; //< temporary buffer vor MV visualization | |||||
| uint8_t *visualization_buffer[3]; ///< temporary buffer vor MV visualization | |||||
| int last_dc[3]; ///< last DC values for MPEG1 | int last_dc[3]; ///< last DC values for MPEG1 | ||||
| int16_t *dc_val_base; | int16_t *dc_val_base; | ||||
| int16_t *dc_val[3]; ///< used for mpeg4 DC prediction, all 3 arrays must be continuous | int16_t *dc_val[3]; ///< used for mpeg4 DC prediction, all 3 arrays must be continuous | ||||
| @@ -29,8 +29,8 @@ | |||||
| /** | /** | ||||
| * Decode DXT1 encoded data to RGB32 | * Decode DXT1 encoded data to RGB32 | ||||
| * @param *src source buffer, has to be aligned on a 4-byte boundary | |||||
| * @param *dst destination buffer | |||||
| * @param src source buffer, has to be aligned on a 4-byte boundary | |||||
| * @param dst destination buffer | |||||
| * @param w width of output image | * @param w width of output image | ||||
| * @param h height of output image | * @param h height of output image | ||||
| * @param stride line size of output image | * @param stride line size of output image | ||||
| @@ -40,8 +40,8 @@ void ff_decode_dxt1(const uint8_t *src, uint8_t *dst, | |||||
| const unsigned int stride); | const unsigned int stride); | ||||
| /** | /** | ||||
| * Decode DXT3 encoded data to RGB32 | * Decode DXT3 encoded data to RGB32 | ||||
| * @param *src source buffer, has to be aligned on a 4-byte boundary | |||||
| * @param *dst destination buffer | |||||
| * @param src source buffer, has to be aligned on a 4-byte boundary | |||||
| * @param dst destination buffer | |||||
| * @param w width of output image | * @param w width of output image | ||||
| * @param h height of output image | * @param h height of output image | ||||
| * @param stride line size of output image | * @param stride line size of output image | ||||
| @@ -3306,7 +3306,7 @@ static void update_last_header_values(SnowContext *s){ | |||||
| static int qscale2qlog(int qscale){ | static int qscale2qlog(int qscale){ | ||||
| return rint(QROOT*log(qscale / (float)FF_QP2LAMBDA)/log(2)) | return rint(QROOT*log(qscale / (float)FF_QP2LAMBDA)/log(2)) | ||||
| + 61*QROOT/8; //<64 >60 | |||||
| + 61*QROOT/8; ///< 64 > 60 | |||||
| } | } | ||||
| static int ratecontrol_1pass(SnowContext *s, AVFrame *pict) | static int ratecontrol_1pass(SnowContext *s, AVFrame *pict) | ||||
| @@ -33,13 +33,13 @@ | |||||
| */ | */ | ||||
| typedef struct { | typedef struct { | ||||
| /* input data */ | /* input data */ | ||||
| int16_t vector[8]; //< input vector: 5/5/4/4/4/3/3/3 | |||||
| int offset1[2]; //< 8-bit value, used in one copying offset | |||||
| int offset2[4]; //< 7-bit value, encodes offsets for copying and for two-point filter | |||||
| int pulseoff[4]; //< 4-bit offset of pulse values block | |||||
| int pulsepos[4]; //< 27-bit variable, encodes 7 pulse positions | |||||
| int pulseval[4]; //< 7x2-bit pulse values | |||||
| int flag; //< 1-bit flag, shows how to choose filters | |||||
| int16_t vector[8]; ///< input vector: 5/5/4/4/4/3/3/3 | |||||
| int offset1[2]; ///< 8-bit value, used in one copying offset | |||||
| int offset2[4]; ///< 7-bit value, encodes offsets for copying and for two-point filter | |||||
| int pulseoff[4]; ///< 4-bit offset of pulse values block | |||||
| int pulsepos[4]; ///< 27-bit variable, encodes 7 pulse positions | |||||
| int pulseval[4]; ///< 7x2-bit pulse values | |||||
| int flag; ///< 1-bit flag, shows how to choose filters | |||||
| /* temporary data */ | /* temporary data */ | ||||
| int filtbuf[146]; // some big vector used for storing filters | int filtbuf[146]; // some big vector used for storing filters | ||||
| int prevfilt[8]; // filter from previous frame | int prevfilt[8]; // filter from previous frame | ||||
| @@ -225,7 +225,7 @@ typedef struct Vp3DecodeContext { | |||||
| /* these arrays need to be on 16-byte boundaries since SSE2 operations | /* these arrays need to be on 16-byte boundaries since SSE2 operations | ||||
| * index into them */ | * index into them */ | ||||
| DECLARE_ALIGNED(16, int16_t, qmat)[3][2][3][64]; //<qmat[qpi][is_inter][plane] | |||||
| DECLARE_ALIGNED(16, int16_t, qmat)[3][2][3][64]; ///< qmat[qpi][is_inter][plane] | |||||
| /* This table contains superblock_count * 16 entries. Each set of 16 | /* This table contains superblock_count * 16 entries. Each set of 16 | ||||
| * numbers corresponds to the fragment indexes 0..15 of the superblock. | * numbers corresponds to the fragment indexes 0..15 of the superblock. | ||||
| @@ -34,7 +34,7 @@ enum { Y, U, V, A }; | |||||
| typedef struct { | typedef struct { | ||||
| int x, y, w, h; | int x, y, w, h; | ||||
| unsigned char yuv_color[4]; | unsigned char yuv_color[4]; | ||||
| int vsub, hsub; //< chroma subsampling | |||||
| int vsub, hsub; ///< chroma subsampling | |||||
| } DrawBoxContext; | } DrawBoxContext; | ||||
| static av_cold int init(AVFilterContext *ctx, const char *args, void *opaque) | static av_cold int init(AVFilterContext *ctx, const char *args, void *opaque) | ||||
| @@ -86,7 +86,7 @@ int main(int argc, char **argv) | |||||
| exit(1); | exit(1); | ||||
| } | } | ||||
| ret = av_find_stream_info(ic); | |||||
| ret = avformat_find_stream_info(ic, NULL); | |||||
| if (ret < 0) { | if (ret < 0) { | ||||
| fprintf(stderr, "%s: could not find codec parameters\n", filename); | fprintf(stderr, "%s: could not find codec parameters\n", filename); | ||||
| exit(1); | exit(1); | ||||
| @@ -77,7 +77,8 @@ OBJS-$(ARCH_ARM) += arm/cpu.o | |||||
| OBJS-$(ARCH_PPC) += ppc/cpu.o | OBJS-$(ARCH_PPC) += ppc/cpu.o | ||||
| OBJS-$(ARCH_X86) += x86/cpu.o | OBJS-$(ARCH_X86) += x86/cpu.o | ||||
| TESTPROGS = adler32 aes avstring base64 cpu crc des eval file lfg lls \ | |||||
| TESTPROGS = adler32 aes avstring base64 cpu crc des eval file fifo lfg lls \ | |||||
| md5 opt pca parseutils rational sha tree | md5 opt pca parseutils rational sha tree | ||||
| TESTPROGS-$(HAVE_LZO1X_999_COMPRESS) += lzo | TESTPROGS-$(HAVE_LZO1X_999_COMPRESS) += lzo | ||||
| @@ -40,7 +40,7 @@ | |||||
| #define AV_VERSION(a, b, c) AV_VERSION_DOT(a, b, c) | #define AV_VERSION(a, b, c) AV_VERSION_DOT(a, b, c) | ||||
| #define LIBAVUTIL_VERSION_MAJOR 51 | #define LIBAVUTIL_VERSION_MAJOR 51 | ||||
| #define LIBAVUTIL_VERSION_MINOR 13 | |||||
| #define LIBAVUTIL_VERSION_MINOR 14 | |||||
| #define LIBAVUTIL_VERSION_MICRO 0 | #define LIBAVUTIL_VERSION_MICRO 0 | ||||
| #define LIBAVUTIL_VERSION_INT AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \ | #define LIBAVUTIL_VERSION_INT AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \ | ||||
| @@ -128,3 +128,39 @@ void av_fifo_drain(AVFifoBuffer *f, int size) | |||||
| f->rptr -= f->end - f->buffer; | f->rptr -= f->end - f->buffer; | ||||
| f->rndx += size; | f->rndx += size; | ||||
| } | } | ||||
| #ifdef TEST | |||||
| #undef printf | |||||
| int main(void) | |||||
| { | |||||
| /* create a FIFO buffer */ | |||||
| AVFifoBuffer *fifo = av_fifo_alloc(13 * sizeof(int)); | |||||
| int i, j, n; | |||||
| /* fill data */ | |||||
| for (i = 0; av_fifo_space(fifo) >= sizeof(int); i++) | |||||
| av_fifo_generic_write(fifo, &i, sizeof(int), NULL); | |||||
| /* peek at FIFO */ | |||||
| n = av_fifo_size(fifo)/sizeof(int); | |||||
| for (i = -n+1; i < n; i++) { | |||||
| int *v = (int *)av_fifo_peek2(fifo, i*sizeof(int)); | |||||
| printf("%d: %d\n", i, *v); | |||||
| } | |||||
| printf("\n"); | |||||
| /* read data */ | |||||
| for (i = 0; av_fifo_size(fifo) >= sizeof(int); i++) { | |||||
| av_fifo_generic_read(fifo, &j, sizeof(int), NULL); | |||||
| printf("%d ", j); | |||||
| } | |||||
| printf("\n"); | |||||
| av_fifo_free(fifo); | |||||
| return 0; | |||||
| } | |||||
| #endif | |||||
| @@ -42,20 +42,20 @@ AVFifoBuffer *av_fifo_alloc(unsigned int size); | |||||
| /** | /** | ||||
| * Free an AVFifoBuffer. | * Free an AVFifoBuffer. | ||||
| * @param *f AVFifoBuffer to free | |||||
| * @param f AVFifoBuffer to free | |||||
| */ | */ | ||||
| void av_fifo_free(AVFifoBuffer *f); | void av_fifo_free(AVFifoBuffer *f); | ||||
| /** | /** | ||||
| * Reset the AVFifoBuffer to the state right after av_fifo_alloc, in particular it is emptied. | * Reset the AVFifoBuffer to the state right after av_fifo_alloc, in particular it is emptied. | ||||
| * @param *f AVFifoBuffer to reset | |||||
| * @param f AVFifoBuffer to reset | |||||
| */ | */ | ||||
| void av_fifo_reset(AVFifoBuffer *f); | void av_fifo_reset(AVFifoBuffer *f); | ||||
| /** | /** | ||||
| * Return the amount of data in bytes in the AVFifoBuffer, that is the | * Return the amount of data in bytes in the AVFifoBuffer, that is the | ||||
| * amount of data you can read from it. | * amount of data you can read from it. | ||||
| * @param *f AVFifoBuffer to read from | |||||
| * @param f AVFifoBuffer to read from | |||||
| * @return size | * @return size | ||||
| */ | */ | ||||
| int av_fifo_size(AVFifoBuffer *f); | int av_fifo_size(AVFifoBuffer *f); | ||||
| @@ -63,27 +63,27 @@ int av_fifo_size(AVFifoBuffer *f); | |||||
| /** | /** | ||||
| * Return the amount of space in bytes in the AVFifoBuffer, that is the | * Return the amount of space in bytes in the AVFifoBuffer, that is the | ||||
| * amount of data you can write into it. | * amount of data you can write into it. | ||||
| * @param *f AVFifoBuffer to write into | |||||
| * @param f AVFifoBuffer to write into | |||||
| * @return size | * @return size | ||||
| */ | */ | ||||
| int av_fifo_space(AVFifoBuffer *f); | int av_fifo_space(AVFifoBuffer *f); | ||||
| /** | /** | ||||
| * Feed data from an AVFifoBuffer to a user-supplied callback. | * Feed data from an AVFifoBuffer to a user-supplied callback. | ||||
| * @param *f AVFifoBuffer to read from | |||||
| * @param f AVFifoBuffer to read from | |||||
| * @param buf_size number of bytes to read | * @param buf_size number of bytes to read | ||||
| * @param *func generic read function | |||||
| * @param *dest data destination | |||||
| * @param func generic read function | |||||
| * @param dest data destination | |||||
| */ | */ | ||||
| int av_fifo_generic_read(AVFifoBuffer *f, void *dest, int buf_size, void (*func)(void*, void*, int)); | int av_fifo_generic_read(AVFifoBuffer *f, void *dest, int buf_size, void (*func)(void*, void*, int)); | ||||
| /** | /** | ||||
| * Feed data from a user-supplied callback to an AVFifoBuffer. | * Feed data from a user-supplied callback to an AVFifoBuffer. | ||||
| * @param *f AVFifoBuffer to write to | |||||
| * @param *src data source; non-const since it may be used as a | |||||
| * @param f AVFifoBuffer to write to | |||||
| * @param src data source; non-const since it may be used as a | |||||
| * modifiable context by the function defined in func | * modifiable context by the function defined in func | ||||
| * @param size number of bytes to write | * @param size number of bytes to write | ||||
| * @param *func generic write function; the first parameter is src, | |||||
| * @param func generic write function; the first parameter is src, | |||||
| * the second is dest_buf, the third is dest_buf_size. | * the second is dest_buf, the third is dest_buf_size. | ||||
| * func must return the number of bytes written to dest_buf, or <= 0 to | * func must return the number of bytes written to dest_buf, or <= 0 to | ||||
| * indicate no more data available to write. | * indicate no more data available to write. | ||||
| @@ -94,7 +94,7 @@ int av_fifo_generic_write(AVFifoBuffer *f, void *src, int size, int (*func)(void | |||||
| /** | /** | ||||
| * Resize an AVFifoBuffer. | * Resize an AVFifoBuffer. | ||||
| * @param *f AVFifoBuffer to resize | |||||
| * @param f AVFifoBuffer to resize | |||||
| * @param size new AVFifoBuffer size in bytes | * @param size new AVFifoBuffer size in bytes | ||||
| * @return <0 for failure, >=0 otherwise | * @return <0 for failure, >=0 otherwise | ||||
| */ | */ | ||||
| @@ -102,7 +102,7 @@ int av_fifo_realloc2(AVFifoBuffer *f, unsigned int size); | |||||
| /** | /** | ||||
| * Read and discard the specified amount of data from an AVFifoBuffer. | * Read and discard the specified amount of data from an AVFifoBuffer. | ||||
| * @param *f AVFifoBuffer to read from | |||||
| * @param f AVFifoBuffer to read from | |||||
| * @param size amount of data to read in bytes | * @param size amount of data to read in bytes | ||||
| */ | */ | ||||
| void av_fifo_drain(AVFifoBuffer *f, int size); | void av_fifo_drain(AVFifoBuffer *f, int size); | ||||
| @@ -25,6 +25,10 @@ FATE_TESTS += fate-eval | |||||
| fate-eval: libavutil/eval-test$(EXESUF) | fate-eval: libavutil/eval-test$(EXESUF) | ||||
| fate-eval: CMD = run libavutil/eval-test | fate-eval: CMD = run libavutil/eval-test | ||||
| FATE_TESTS += fate-fifo | |||||
| fate-fifo: libavutil/fifo-test$(EXESUF) | |||||
| fate-fifo: CMD = run libavutil/fifo-test | |||||
| FATE_TESTS += fate-md5 | FATE_TESTS += fate-md5 | ||||
| fate-md5: libavutil/md5-test$(EXESUF) | fate-md5: libavutil/md5-test$(EXESUF) | ||||
| fate-md5: CMD = run libavutil/md5-test | fate-md5: CMD = run libavutil/md5-test | ||||
| @@ -0,0 +1,27 @@ | |||||
| -12: 1 | |||||
| -11: 2 | |||||
| -10: 3 | |||||
| -9: 4 | |||||
| -8: 5 | |||||
| -7: 6 | |||||
| -6: 7 | |||||
| -5: 8 | |||||
| -4: 9 | |||||
| -3: 10 | |||||
| -2: 11 | |||||
| -1: 12 | |||||
| 0: 0 | |||||
| 1: 1 | |||||
| 2: 2 | |||||
| 3: 3 | |||||
| 4: 4 | |||||
| 5: 5 | |||||
| 6: 6 | |||||
| 7: 7 | |||||
| 8: 8 | |||||
| 9: 9 | |||||
| 10: 10 | |||||
| 11: 11 | |||||
| 12: 12 | |||||
| 0 1 2 3 4 5 6 7 8 9 10 11 12 | |||||
| @@ -89,9 +89,9 @@ int main(int argc, char **argv) | |||||
| return 1; | return 1; | ||||
| } | } | ||||
| err = av_find_stream_info(fctx); | |||||
| err = avformat_find_stream_info(fctx, NULL); | |||||
| if (err < 0) { | if (err < 0) { | ||||
| fprintf(stderr, "av_find_stream_info: error %d\n", err); | |||||
| fprintf(stderr, "avformat_find_stream_info: error %d\n", err); | |||||
| return 1; | return 1; | ||||
| } | } | ||||