doc/formats: add section describing stream specifiers
[ffmpeg.git] / doc / APIchanges
1 Never assume the API of libav* to be stable unless at least 1 month has passed
2 since the last major version increase or the API was added.
3
4 The last version increases were:
5 libavcodec:    2013-03-xx
6 libavdevice:   2013-03-xx
7 libavfilter:   2012-06-22
8 libavformat:   2013-03-xx
9 libavresample: 2012-10-05
10 libpostproc:   2011-04-18
11 libswresample: 2011-09-19
12 libswscale:    2011-06-20
13 libavutil:     2012-10-22
14
15
16 API changes, most recent first:
17
18 2013-07-03 - xxxxxxx - lavfi 3.78.100 - avfilter.h
19   Deprecate avfilter_graph_parse() in favor of the equivalent
20   avfilter_graph_parse_ptr().
21
22 2013-06-xx - xxxxxxx - lavc 55.10.0 - avcodec.h
23   Add MPEG-2 AAC profiles
24
25 2013-06-xx - xxxxxxx - lavf 55.10.100 - avformat.h
26   Add AV_DISPOSITION_* flags to indicate text track kind.
27
28 2013-06-xx - xxxxxxx - lavu 52.36.100
29   Add AVRIPEMD:
30    av_ripemd_alloc()
31    av_ripemd_init()
32    av_ripemd_update()
33    av_ripemd_final()
34
35 2013-06-05 - fc962d4 - lavu 52.13.0 - mem.h
36   Add av_realloc_array and av_reallocp_array
37
38 2013-05-30 - 682b227 - lavu 52.35.100
39   Add AVSHA512:
40    av_sha512_alloc()
41    av_sha512_init()
42    av_sha512_update()
43    av_sha512_final()
44
45 2013-05-24 - xxxxxxx - lavfi 3.70.100 - avfilter.h
46   Add support for slice multithreading to lavfi. Filters supporting threading
47   are marked with AVFILTER_FLAG_SLICE_THREADS.
48   New fields AVFilterContext.thread_type, AVFilterGraph.thread_type and
49   AVFilterGraph.nb_threads (accessible directly or through AVOptions) may be
50   used to configure multithreading.
51
52 2013-05-24 - xxxxxxx - lavu 52.34.100 - cpu.h
53   Add av_cpu_count() function for getting the number of logical CPUs.
54
55 2013-05-24 - xxxxxxx - lavc 55.12.100 - avcodec.h
56   Add picture_structure to AVCodecParserContext.
57
58 2013-05-17 - xxxxxxx - lavu 52.33.100 - opt.h
59   Add AV_OPT_TYPE_COLOR value to AVOptionType enum.
60
61 2013-05-13 - xxxxxxx - lavu 52.31.100 - mem.h
62   Add av_dynarray2_add().
63
64 2013-05-12 - xxxxxxx - lavfi 3.65.100
65   Add AVFILTER_FLAG_SUPPORT_TIMELINE* filter flags.
66
67 2013-04-19 - xxxxxxx - lavc 55.4.100
68   Add AV_CODEC_PROP_TEXT_SUB property for text based subtitles codec.
69
70 2013-04-18 - xxxxxxx - lavf 55.3.100
71   The matroska demuxer can now output proper verbatim ASS packets. It will
72   become the default starting lavf 56.0.100.
73
74 2013-04-10 - xxxxxxx - lavu 25.26.100 - avutil.h,opt.h
75   Add av_int_list_length()
76   and av_opt_set_int_list().
77
78 2013-03-30 - xxxxxxx - lavu 52.24.100 - samplefmt.h
79   Add av_samples_alloc_array_and_samples().
80
81 2013-03-29 - xxxxxxx - lavf 55.1.100 - avformat.h
82   Add av_guess_frame_rate()
83
84 2013-03-20 - xxxxxxx - lavu 52.22.100 - opt.h
85   Add AV_OPT_TYPE_DURATION value to AVOptionType enum.
86
87 2013-03-17 - xxxxxx - lavu 52.20.100 - opt.h
88   Add AV_OPT_TYPE_VIDEO_RATE value to AVOptionType enum.
89
90 2013-03-07 - xxxxxx - lavu 52.18.100 - avstring.h,bprint.h
91   Add av_escape() and av_bprint_escape() API.
92
93 2013-02-24 - xxxxxx - lavfi 3.41.100 - buffersink.h
94   Add sample_rates field to AVABufferSinkParams.
95
96 2013-01-17 - a1a707f - lavf 54.61.100
97   Add av_codec_get_tag2().
98
99 2013-01-01 - 2eb2e17 - lavfi 3.34.100
100   Add avfilter_get_audio_buffer_ref_from_arrays_channels.
101
102 2012-12-20 - 34de47aa - lavfi 3.29.100 - avfilter.h
103   Add AVFilterLink.channels, avfilter_link_get_channels()
104   and avfilter_ref_get_channels().
105
106 2012-12-15 - 2ada584d - lavc 54.80.100 - avcodec.h
107   Add pkt_size field to AVFrame.
108
109 2012-11-25 - c70ec631 - lavu 52.9.100 - opt.h
110   Add the following convenience functions to opt.h:
111    av_opt_get_image_size
112    av_opt_get_pixel_fmt
113    av_opt_get_sample_fmt
114    av_opt_set_image_size
115    av_opt_set_pixel_fmt
116    av_opt_set_sample_fmt
117
118 2012-11-17 - 4cd74c81 - lavu 52.8.100 - bprint.h
119   Add av_bprint_strftime().
120
121 2012-11-15 - 92648107 - lavu 52.7.100 - opt.h
122   Add av_opt_get_key_value().
123
124 2012-11-13 - 79456652 - lavfi 3.23.100 - avfilter.h
125   Add channels field to AVFilterBufferRefAudioProps.
126
127 2012-11-03 - 481fdeee - lavu 52.3.100 - opt.h
128   Add AV_OPT_TYPE_SAMPLE_FMT value to AVOptionType enum.
129
130 2012-10-21 - 6fb2fd8 - lavc  54.68.100 - avcodec.h
131                        lavfi  3.20.100 - avfilter.h
132   Add AV_PKT_DATA_STRINGS_METADATA side data type, used to transmit key/value
133   strings between AVPacket and AVFrame, and add metadata field to
134   AVCodecContext (which shall not be accessed by users; see AVFrame metadata
135   instead).
136
137 2012-09-27 - a70b493 - lavd 54.3.100 - version.h
138   Add LIBAVDEVICE_IDENT symbol.
139
140 2012-09-27 - a70b493 - lavfi 3.18.100 - version.h
141   Add LIBAVFILTER_IDENT symbol.
142
143 2012-09-27 - a70b493 - libswr 0.16.100 - version.h
144   Add LIBSWRESAMPLE_VERSION, LIBSWRESAMPLE_BUILD
145   and LIBSWRESAMPLE_IDENT symbols.
146
147 2012-09-06 - 29e972f - lavu 51.72.100 - parseutils.h
148   Add av_small_strptime() time parsing function.
149
150   Can be used as a stripped-down replacement for strptime(), on
151   systems which do not support it.
152
153 2012-08-25 - 2626cc4 - lavf 54.28.100
154   Matroska demuxer now identifies SRT subtitles as AV_CODEC_ID_SUBRIP instead
155   of AV_CODEC_ID_TEXT.
156
157 2012-08-13 - 5c0d8bc - lavfi 3.8.100 - avfilter.h
158   Add avfilter_get_class() function, and priv_class field to AVFilter
159   struct.
160
161 2012-08-12 - a25346e - lavu 51.69.100 - opt.h
162   Add AV_OPT_FLAG_FILTERING_PARAM symbol in opt.h.
163
164 2012-07-31 - 23fc4dd - lavc 54.46.100
165   Add channels field to AVFrame.
166
167 2012-07-30 - f893904 - lavu 51.66.100
168   Add av_get_channel_description()
169   and av_get_standard_channel_layout() functions.
170
171 2012-07-21 - 016a472 - lavc 54.43.100
172   Add decode_error_flags field to AVFrame.
173
174 2012-07-20 - b062936 - lavf 54.18.100
175   Add avformat_match_stream_specifier() function.
176
177 2012-07-14 - f49ec1b - lavc 54.38.100 - avcodec.h
178   Add metadata to AVFrame, and the accessor functions
179   av_frame_get_metadata() and av_frame_set_metadata().
180
181 2012-07-10 - 0e003d8 - lavc 54.33.100
182   Add av_fast_padded_mallocz().
183
184 2012-07-10 - 21d5609 - lavfi 3.2.0 - avfilter.h
185   Add init_opaque() callback to AVFilter struct.
186
187 2012-06-26 - e6674e4 - lavu 51.63.100 - imgutils.h
188   Add functions to libavutil/imgutils.h:
189   av_image_get_buffer_size()
190   av_image_fill_arrays()
191   av_image_copy_to_buffer()
192
193 2012-06-24 - c41899a - lavu 51.62.100 - version.h
194   version moved from avutil.h to version.h
195
196 2012-04-11 - 359abb1 - lavu 51.58.100 - error.h
197   Add av_make_error_string() and av_err2str() utilities to
198   libavutil/error.h.
199
200 2012-06-05 - 62b39d4 - lavc 54.24.100
201   Add pkt_duration field to AVFrame.
202
203 2012-05-24 - f2ee065 - lavu 51.54.100
204   Move AVPALETTE_SIZE and AVPALETTE_COUNT macros from
205   libavcodec/avcodec.h to libavutil/pixfmt.h.
206
207 2012-05-14 - 94a9ac1 - lavf 54.5.100
208   Add av_guess_sample_aspect_ratio() function.
209
210 2012-04-20 - 65fa7bc - lavfi 2.70.100
211   Add avfilter_unref_bufferp() to avfilter.h.
212
213 2012-04-13 - 162e400 - lavfi 2.68.100
214   Install libavfilter/asrc_abuffer.h public header.
215
216 2012-03-26 - a67d9cf - lavfi 2.66.100
217   Add avfilter_fill_frame_from_{audio_,}buffer_ref() functions.
218
219 2013-05-xx - xxxxxxx - lavu 52.11.0 - pixdesc.h
220   Replace PIX_FMT_* flags with AV_PIX_FMT_FLAG_*.
221
222 2013-04-xx - xxxxxxx - lavc 55.4.0 - avcodec.h
223   Add field_order to AVCodecParserContext.
224
225 2013-03-xx - xxxxxxx - lavc 55.2.0 - avcodec.h
226   Add CODEC_FLAG_UNALIGNED to allow decoders to produce unaligned output.
227
228 2013-04-11 - lavfi 3.8.0
229   38f0c07 - Move all content from avfiltergraph.h to avfilter.h. Deprecate
230             avfilterhraph.h, user applications should include just avfilter.h
231   bc1a985 - Add avfilter_graph_alloc_filter(), deprecate avfilter_open() and
232             avfilter_graph_add_filter().
233   1113672 - Add AVFilterContext.graph pointing to the AVFilterGraph that contains the
234             filter.
235   48a5ada - Add avfilter_init_str(), deprecate avfilter_init_filter().
236   1ba95a9 - Add avfilter_init_dict().
237   7cdd737 - Add AVFilter.flags field and AVFILTER_FLAG_DYNAMIC_{INPUTS,OUTPUTS} flags.
238   7e8fe4b - Add avfilter_pad_count() for counting filter inputs/outputs.
239   fa2a34c - Add avfilter_next(), deprecate av_filter_next().
240             Deprecate avfilter_uninit().
241
242 2013-04-09 - lavfi 3.7.0 - avfilter.h
243   b439c99 - Add AVFilter.priv_class for exporting filter options through the
244             AVOptions API in the similar way private options work in lavc and lavf.
245   8114c10 - Add avfilter_get_class().
246   Switch all filters to use AVOptions.
247
248 2013-03-19 - 2c328a9 - lavu 52.9.0 - pixdesc.h
249   Add av_pix_fmt_count_planes() function for counting planes in a pixel format.
250
251 2013-03-16 - 42c7c61 - lavfi 3.6.0
252   Add AVFilterGraph.nb_filters, deprecate AVFilterGraph.filter_count.
253
254 2013-03-08 - Reference counted buffers - lavu 52.8.0, lavc 55.0.0, lavf 55.0.0,
255 lavd 54.0.0, lavfi 3.5.0
256   8e401db, 1cec062 - add a new API for reference counted buffers and buffer
257                      pools (new header libavutil/buffer.h).
258   1afddbe - add AVPacket.buf to allow reference counting for the AVPacket data.
259             Add av_packet_from_data() function for constructing packets from
260             av_malloc()ed data.
261   7ecc2d4 - move AVFrame from lavc to lavu (new header libavutil/frame.h), add
262             AVFrame.buf/extended_buf to allow reference counting for the AVFrame
263             data. Add new API for working with reference-counted AVFrames.
264   759001c - add the refcounted_frames field to AVCodecContext to make audio and
265             video decoders return reference-counted frames. Add get_buffer2()
266             callback to AVCodecContext which allocates reference-counted frames.
267             Add avcodec_default_get_buffer2() as the default get_buffer2()
268             implementation.
269             Deprecate AVCodecContext.get_buffer() / release_buffer() /
270             reget_buffer(), avcodec_default_get_buffer(),
271             avcodec_default_reget_buffer(), avcodec_default_release_buffer().
272             Remove avcodec_default_free_buffers(), which should not have ever
273             been called from outside of lavc.
274             Deprecate the following AVFrame fields:
275                 * base -- is now stored in AVBufferRef
276                 * reference, type, buffer_hints -- are unnecessary in the new API
277                 * hwaccel_picture_private, owner, thread_opaque -- should not
278                   have been acessed from outside of lavc
279                 * qscale_table, qstride, qscale_type, mbskip_table, motion_val,
280                   mb_type, dct_coeff, ref_index -- mpegvideo-specific tables,
281                   which are not exported anymore.
282   7e35037 - switch libavfilter to use AVFrame instead of AVFilterBufferRef. Add
283             av_buffersrc_add_frame(), deprecate av_buffersrc_buffer().
284             Add av_buffersink_get_frame() and av_buffersink_get_samples(),
285             deprecate av_buffersink_read() and av_buffersink_read_samples().
286             Deprecate AVFilterBufferRef and all functions for working with it.
287
288 2013-03-17 - 12c5c1d - lavu 52.8.0 - avstring.h
289   Add av_isdigit, av_isgraph, av_isspace, av_isxdigit.
290
291 2013-02-23 - 9f12235 - lavfi 3.4.0 - avfiltergraph.h
292   Add resample_lavr_opts to AVFilterGraph for setting libavresample options
293   for auto-inserted resample filters.
294
295 2013-01-25 - 38c1466 - lavu 52.7.0 - dict.h
296   Add av_dict_parse_string() to set multiple key/value pairs at once from a
297   string.
298
299 2013-01-25 - b85a5e8 - lavu 52.6.0 - avstring.h
300   Add av_strnstr()
301
302 2013-01-15 - 8ee288d - lavu 52.5.0 - hmac.h
303   Add AVHMAC.
304
305 2013-01-13 - 44e065d - lavc 54.87.100 / 54.36.0 - vdpau.h
306   Add AVVDPAUContext struct for VDPAU hardware-accelerated decoding.
307
308 2013-01-12 - dae382b / 169fb94 - lavu 52.14.100 / 52.4.0 - pixdesc.h
309   Add AV_PIX_FMT_VDPAU flag.
310
311 2013-01-07 - 249fca3 / 074a00d - lavr 1.1.0
312   Add avresample_set_channel_mapping() for input channel reordering,
313   duplication, and silencing.
314
315 2012-12-29 - 2ce43b3 / d8fd06c - lavu 52.13.100 / 52.3.0 - avstring.h
316   Add av_basename() and av_dirname().
317
318 2012-11-11 - 03b0787 / 5980f5d - lavu 52.6.100 / 52.2.0 - audioconvert.h
319   Rename audioconvert.h to channel_layout.h. audioconvert.h is now deprecated.
320
321 2012-11-05 - 7d26be6 / dfde8a3 - lavu 52.5.100 / 52.1.0 - intmath.h
322   Add av_ctz() for trailing zero bit count
323
324 2012-10-21 - e3a91c5 / a893655 - lavu 51.77.100 / 51.45.0 - error.h
325   Add AVERROR_EXPERIMENTAL
326
327 2012-10-12 - a33ed6b / d2fcb35 - lavu 51.76.100 / 51.44.0 - pixdesc.h
328   Add functions for accessing pixel format descriptors.
329   Accessing the av_pix_fmt_descriptors array directly is now
330   deprecated.
331
332 2012-10-11 - f391e40 / 9a92aea - lavu 51.75.100 / 51.43.0 - aes.h, md5.h, sha.h, tree.h
333   Add functions for allocating the opaque contexts for the algorithms,
334
335 2012-10-10 - de31814 / b522000 - lavf 54.32.100 / 54.18.0 - avio.h
336   Add avio_closep to complement avio_close.
337
338 2012-10-08 - ae77266 / 78071a1 - lavu 51.74.100 / 51.42.0 - pixfmt.h
339   Rename PixelFormat to AVPixelFormat and all PIX_FMT_* to AV_PIX_FMT_*.
340   To provide backwards compatibility, PixelFormat is now #defined as
341   AVPixelFormat.
342   Note that this can break user code that includes pixfmt.h and uses the
343   'PixelFormat' identifier. Such code should either #undef PixelFormat
344   or stop using the PixelFormat name.
345
346 2012-10-05 - 55c49af / e7ba5b1 - lavr 1.0.0 - avresample.h
347   Data planes parameters to avresample_convert() and
348   avresample_read() are now uint8_t** instead of void**.
349   Libavresample is now stable.
350
351 2012-09-24 - 46a3595 / a42aada - lavc 54.59.100 / 54.28.0 - avcodec.h
352   Add avcodec_free_frame(). This function must now
353   be used for freeing an AVFrame.
354
355 2012-09-12 - e3e09f2 / 8919fee - lavu 51.73.100 / 51.41.0 - audioconvert.h
356   Added AV_CH_LOW_FREQUENCY_2 channel mask value.
357
358 2012-09-04 - b21b5b0 / 686a329 - lavu 51.71.100 / 51.40.0 - opt.h
359   Reordered the fields in default_val in AVOption, changed which
360   default_val field is used for which AVOptionType.
361
362 2012-08-30 - 98298eb / a231832 - lavc 54.54.101 / 54.26.1 - avcodec.h
363   Add codec descriptor properties AV_CODEC_PROP_LOSSY and
364   AV_CODEC_PROP_LOSSLESS.
365
366 2012-08-18 - lavc 54.26 - avcodec.h
367   Add codec descriptors for accessing codec properties without having
368   to refer to a specific decoder or encoder.
369
370   f5f3684 / c223d79 - Add an AVCodecDescriptor struct and functions
371             avcodec_descriptor_get() and avcodec_descriptor_next().
372   f5f3684 / 51efed1 - Add AVCodecDescriptor.props and AV_CODEC_PROP_INTRA_ONLY.
373   6c180b3 / 91e59fe - Add avcodec_descriptor_get_by_name().
374
375 2012-08-08 - f5f3684 / 987170c - lavu 51.68.100 / 51.38.0 - dict.h
376   Add av_dict_count().
377
378 2012-08-07 - 7a72695 / 104e10f - lavc 54.51.100 / 54.25.0 - avcodec.h
379   Rename CodecID to AVCodecID and all CODEC_ID_* to AV_CODEC_ID_*.
380   To provide backwards compatibility, CodecID is now #defined as AVCodecID.
381   Note that this can break user code that includes avcodec.h and uses the
382   'CodecID' identifier. Such code should either #undef CodecID or stop using the
383   CodecID name.
384
385 2012-08-03 - e776ee8 / 239fdf1 - lavu 51.66.101 / 51.37.1 - cpu.h
386                        lsws 2.1.1   - swscale.h
387   Rename AV_CPU_FLAG_MMX2  ---> AV_CPU_FLAG_MMXEXT.
388   Rename SWS_CPU_CAPS_MMX2 ---> SWS_CPU_CAPS_MMXEXT.
389
390 2012-07-29 - 7c26761 / 681ed00 - lavf 54.22.100 / 54.13.0 - avformat.h
391   Add AVFMT_FLAG_NOBUFFER for low latency use cases.
392
393 2012-07-10 - 5fade8a - lavu 51.37.0
394   Add av_malloc_array() and av_mallocz_array()
395
396 2012-06-22 - e847f41 / d3d3a32 - lavu 51.61.100 / 51.34.0
397   Add av_usleep()
398
399 2012-06-20 - 4da42eb / ae0a301 - lavu 51.60.100 / 51.33.0
400   Move av_gettime() to libavutil, add libavutil/time.h
401
402 2012-06-09 - 82edf67 / 3971be0 - lavr 0.0.3
403   Add a parameter to avresample_build_matrix() for Dolby/DPLII downmixing.
404
405 2012-06-12 - c7b9eab / 9baeff9 - lavfi 2.79.100 / 2.23.0 - avfilter.h
406   Add AVFilterContext.nb_inputs/outputs. Deprecate
407   AVFilterContext.input/output_count.
408
409 2012-06-12 - c7b9eab / 84b9fbe - lavfi 2.79.100 / 2.22.0 - avfilter.h
410   Add avfilter_pad_get_type() and avfilter_pad_get_name(). Those
411   should now be used instead of accessing AVFilterPad members
412   directly.
413
414 2012-06-12 - 3630a07 / b0f0dfc - lavu 51.57.100 / 51.32.0 - audioconvert.h
415   Add av_get_channel_layout_channel_index(), av_get_channel_name()
416   and av_channel_layout_extract_channel().
417
418 2012-05-25 - 53ce990 / 154486f - lavu 51.55.100 / 51.31.0 - opt.h
419   Add av_opt_set_bin()
420
421 2012-05-15 - lavfi 2.74.100 / 2.17.0
422   Add support for audio filters
423   61930bd / ac71230, 1cbf7fb / a2cd9be - add video/audio buffer sink in a new installed
424                     header buffersink.h
425   1cbf7fb / 720c6b7 - add av_buffersrc_write_frame(), deprecate
426             av_vsrc_buffer_add_frame()
427   61930bd / ab16504 - add avfilter_copy_buf_props()
428   61930bd / 9453c9e - add extended_data to AVFilterBuffer
429   61930bd / 1b8c927 - add avfilter_get_audio_buffer_ref_from_arrays()
430
431 2012-05-09 - lavu 51.53.100 / 51.30.0 - samplefmt.h
432   61930bd / 142e740 - add av_samples_copy()
433   61930bd / 6d7f617 - add av_samples_set_silence()
434
435 2012-05-09 - 61930bd / a5117a2 - lavc 54.21.101 / 54.13.1
436   For audio formats with fixed frame size, the last frame
437   no longer needs to be padded with silence, libavcodec
438   will handle this internally (effectively all encoders
439   behave as if they had CODEC_CAP_SMALL_LAST_FRAME set).
440
441 2012-05-07 - 653d117 / 828bd08 - lavc 54.20.100 / 54.13.0 - avcodec.h
442   Add sample_rate and channel_layout fields to AVFrame.
443
444 2012-05-01 - 2330eb1 / 4010d72 - lavr 0.0.1
445   Change AV_MIX_COEFF_TYPE_Q6 to AV_MIX_COEFF_TYPE_Q8.
446
447 2012-04-25 - e890b68 / 3527a73 - lavu 51.48.100 / 51.29.0 - cpu.h
448   Add av_parse_cpu_flags()
449
450 2012-04-24 - 3ead79e / c8af852 - lavr 0.0.0
451   Add libavresample audio conversion library
452
453 2012-04-20 - 3194ab7 / 0c0d1bc - lavu 51.47.100 / 51.28.0 - audio_fifo.h
454   Add audio FIFO functions:
455     av_audio_fifo_free()
456     av_audio_fifo_alloc()
457     av_audio_fifo_realloc()
458     av_audio_fifo_write()
459     av_audio_fifo_read()
460     av_audio_fifo_drain()
461     av_audio_fifo_reset()
462     av_audio_fifo_size()
463     av_audio_fifo_space()
464
465 2012-04-14 - lavfi 2.70.100 / 2.16.0 - avfiltergraph.h
466   7432bcf / d7bcc71 Add avfilter_graph_parse2().
467
468 2012-04-08 - 6bfb304 / 4d693b0 - lavu 51.46.100 / 51.27.0 - samplefmt.h
469   Add av_get_packed_sample_fmt() and av_get_planar_sample_fmt()
470
471 2012-03-21 - b75c67d - lavu 51.43.100
472   Add bprint.h for bprint API.
473
474 2012-02-21 - 9cbf17e - lavc 54.4.100
475   Add av_get_pcm_codec() function.
476
477 2012-02-16 - 560b224 - libswr 0.7.100
478   Add swr_set_matrix() function.
479
480 2012-02-09 - c28e7af - lavu 51.39.100
481   Add a new installed header libavutil/timestamp.h with timestamp
482   utilities.
483
484 2012-02-06 - 70ffda3 - lavu 51.38.100
485   Add av_parse_ratio() function to parseutils.h.
486
487 2012-02-06 - 70ffda3 - lavu 51.38.100
488   Add AV_LOG_MAX_OFFSET macro to log.h.
489
490 2012-02-02 - 0eaa123 - lavu 51.37.100
491   Add public timecode helpers.
492
493 2012-01-24 - 0c3577b - lavfi 2.60.100
494   Add avfilter_graph_dump.
495
496 2012-03-20 - 0ebd836 / 3c90cc2 - lavfo 54.2.0
497   Deprecate av_read_packet(), use av_read_frame() with
498   AVFMT_FLAG_NOPARSE | AVFMT_FLAG_NOFILLIN in AVFormatContext.flags
499
500 2012-03-05 - lavc 54.10.100 / 54.8.0
501   f095391 / 6699d07 Add av_get_exact_bits_per_sample()
502   f095391 / 9524cf7 Add av_get_audio_frame_duration()
503
504 2012-03-04 - 2af8f2c / 44fe77b - lavc 54.8.100 / 54.7.0 - avcodec.h
505   Add av_codec_is_encoder/decoder().
506
507 2012-03-01 - 1eb7f39 / 442c132 - lavc 54.5.100 / 54.3.0 - avcodec.h
508   Add av_packet_shrink_side_data.
509
510 2012-02-29 - 79ae084 / dd2a4bc - lavf 54.2.100 / 54.2.0 - avformat.h
511   Add AVStream.attached_pic and AV_DISPOSITION_ATTACHED_PIC,
512   used for dealing with attached pictures/cover art.
513
514 2012-02-25 - 305e4b3 / c9bca80 - lavu 51.41.100 / 51.24.0 - error.h
515   Add AVERROR_UNKNOWN
516   NOTE: this was backported to 0.8
517
518 2012-02-20 - eadd426 / e9cda85 - lavc 54.2.100 / 54.2.0
519   Add duration field to AVCodecParserContext
520
521 2012-02-20 - eadd426 / 0b42a93 - lavu 51.40.100 / 51.23.1 - mathematics.h
522   Add av_rescale_q_rnd()
523
524 2012-02-08 - f2b20b7 / 38d5533 - lavu 51.38.101 / 51.22.1 - pixdesc.h
525   Add PIX_FMT_PSEUDOPAL flag.
526
527 2012-02-08 - f2b20b7 / 52f82a1 - lavc 54.2.100 / 54.1.0
528   Add avcodec_encode_video2() and deprecate avcodec_encode_video().
529
530 2012-02-01 - 4c677df / 316fc74 - lavc 54.1.0
531   Add av_fast_padded_malloc() as alternative for av_realloc() when aligned
532   memory is required. The buffer will always have FF_INPUT_BUFFER_PADDING_SIZE
533   zero-padded bytes at the end.
534
535 2012-01-31 - a369a6b / dd6d3b0 - lavf 54.1.0
536   Add avformat_get_riff_video_tags() and avformat_get_riff_audio_tags().
537   NOTE: this was backported to 0.8
538
539 2012-01-31 - a369a6b / af08d9a - lavc 54.1.0
540   Add avcodec_is_open() function.
541   NOTE: this was backported to 0.8
542
543 2012-01-30 - 151ecc2 / 8b93312 - lavu 51.36.100 / 51.22.0 - intfloat.h
544   Add a new installed header libavutil/intfloat.h with int/float punning
545   functions.
546   NOTE: this was backported to 0.8
547
548 2012-01-25 - lavf 53.31.100 / 53.22.0
549   3c5fe5b / f1caf01 Allow doing av_write_frame(ctx, NULL) for flushing possible
550           buffered data within a muxer. Added AVFMT_ALLOW_FLUSH for
551           muxers supporting it (av_write_frame makes sure it is called
552           only for muxers with this flag).
553
554 2012-01-15 - lavc 53.56.105 / 53.34.0
555   New audio encoding API:
556   67f5650 / b2c75b6 Add CODEC_CAP_VARIABLE_FRAME_SIZE capability for use by audio
557           encoders.
558   67f5650 / 5ee5fa0 Add avcodec_fill_audio_frame() as a convenience function.
559   67f5650 / b2c75b6 Add avcodec_encode_audio2() and deprecate avcodec_encode_audio().
560           Add AVCodec.encode2().
561
562 2012-01-12 - b18e17e / 3167dc9 - lavfi 2.59.100 / 2.15.0
563   Add a new installed header -- libavfilter/version.h -- with version macros.
564
565 2011-12-08 - a502939 - lavfi 2.52.0
566   Add av_buffersink_poll_frame() to buffersink.h.
567
568 2011-12-08 - 26c6fec - lavu 51.31.0
569   Add av_log_format_line.
570
571 2011-12-03 - 976b095 - lavu 51.30.0
572   Add AVERROR_BUG.
573
574 2011-11-24 - 573ffbb - lavu 51.28.1
575   Add av_get_alt_sample_fmt() to samplefmt.h.
576
577 2011-11-03 - 96949da - lavu 51.23.0
578   Add av_strcasecmp() and av_strncasecmp() to avstring.h.
579
580 2011-10-20 - b35e9e1 - lavu 51.22.0
581   Add av_strtok() to avstring.h.
582
583 2012-01-03 - ad1c8dd / b73ec05 - lavu 51.34.100 / 51.21.0
584   Add av_popcount64
585
586 2011-12-18 - 7c29313 / 8400b12 - lavc 53.46.1 / 53.28.1
587   Deprecate AVFrame.age. The field is unused.
588
589 2011-12-12 - 8bc7fe4 / 5266045 - lavf 53.25.0 / 53.17.0
590   Add avformat_close_input().
591   Deprecate av_close_input_file() and av_close_input_stream().
592
593 2011-12-02 - e4de716 / 0eea212 - lavc 53.40.0 / 53.25.0
594   Add nb_samples and extended_data fields to AVFrame.
595   Deprecate AVCODEC_MAX_AUDIO_FRAME_SIZE.
596   Deprecate avcodec_decode_audio3() in favor of avcodec_decode_audio4().
597   avcodec_decode_audio4() writes output samples to an AVFrame, which allows
598   audio decoders to use get_buffer().
599
600 2011-12-04 - e4de716 / 560f773 - lavc 53.40.0 / 53.24.0
601   Change AVFrame.data[4]/base[4]/linesize[4]/error[4] to [8] at next major bump.
602   Change AVPicture.data[4]/linesize[4] to [8] at next major bump.
603   Change AVCodecContext.error[4] to [8] at next major bump.
604   Add AV_NUM_DATA_POINTERS to simplify the bump transition.
605
606 2011-11-23 - 8e576d5 / bbb46f3 - lavu 51.27.0 / 51.18.0
607   Add av_samples_get_buffer_size(), av_samples_fill_arrays(), and
608   av_samples_alloc(), to samplefmt.h.
609
610 2011-11-23 - 8e576d5 / 8889cc4 - lavu 51.27.0 / 51.17.0
611   Add planar sample formats and av_sample_fmt_is_planar() to samplefmt.h.
612
613 2011-11-19 - dbb38bc / f3a29b7 - lavc 53.36.0 / 53.21.0
614   Move some AVCodecContext fields to a new private struct, AVCodecInternal,
615   which is accessed from a new field, AVCodecContext.internal.
616   - fields moved:
617       AVCodecContext.internal_buffer       --> AVCodecInternal.buffer
618       AVCodecContext.internal_buffer_count --> AVCodecInternal.buffer_count
619       AVCodecContext.is_copy               --> AVCodecInternal.is_copy
620
621 2011-11-16 - 8709ba9 / 6270671 - lavu 51.26.0 / 51.16.0
622   Add av_timegm()
623
624 2011-11-13 - lavf 53.21.0 / 53.15.0
625   New interrupt callback API, allowing per-AVFormatContext/AVIOContext
626   interrupt callbacks.
627   5f268ca / 6aa0b98 Add AVIOInterruptCB struct and the interrupt_callback field to
628           AVFormatContext.
629   5f268ca / 1dee0ac Add avio_open2() with additional parameters. Those are
630           an interrupt callback and an options AVDictionary.
631           This will allow passing AVOptions to protocols after lavf
632           54.0.
633
634 2011-11-06 - 13b7781 / ba04ecf - lavu 51.24.0 / 51.14.0
635   Add av_strcasecmp() and av_strncasecmp() to avstring.h.
636
637 2011-11-06 - 13b7781 / 07b172f - lavu 51.24.0 / 51.13.0
638   Add av_toupper()/av_tolower()
639
640 2011-11-05 - d8cab5c / b6d08f4 - lavf 53.19.0 / 53.13.0
641   Add avformat_network_init()/avformat_network_deinit()
642
643 2011-10-27 - 6faf0a2 / 512557b - lavc 53.24.0 / 53.15.0
644   Remove avcodec_parse_frame.
645   Deprecate AVCodecContext.parse_only and CODEC_CAP_PARSE_ONLY.
646
647 2011-10-19 - d049257 / 569129a - lavf 53.17.0 / 53.10.0
648   Add avformat_new_stream(). Deprecate av_new_stream().
649
650 2011-10-13 - 91eb1b1 / b631fba - lavf 53.16.0 / 53.9.0
651   Add AVFMT_NO_BYTE_SEEK AVInputFormat flag.
652
653 2011-10-12 - lavu 51.21.0 / 51.12.0
654   AVOptions API rewrite.
655
656   - f884ef0 / 145f741 FF_OPT_TYPE* renamed to AV_OPT_TYPE_*
657   - new setting/getting functions with slightly different semantics:
658         f884ef0 / dac66da av_set_string3 -> av_opt_set
659                 av_set_double  -> av_opt_set_double
660                 av_set_q       -> av_opt_set_q
661                 av_set_int     -> av_opt_set_int
662
663         f884ef0 / 41d9d51 av_get_string  -> av_opt_get
664                 av_get_double  -> av_opt_get_double
665                 av_get_q       -> av_opt_get_q
666                 av_get_int     -> av_opt_get_int
667
668   - f884ef0 / 8c5dcaa trivial rename av_next_option -> av_opt_next
669   - f884ef0 / 641c7af new functions - av_opt_child_next, av_opt_child_class_next
670     and av_opt_find2()
671
672 2011-09-22 - a70e787 - lavu 51.17.0
673   Add av_x_if_null().
674
675 2011-09-18 - 645cebb - lavc 53.16.0
676   Add showall flag2
677
678 2011-09-16 - ea8de10 - lavfi 2.42.0
679   Add avfilter_all_channel_layouts.
680
681 2011-09-16 - 9899037 - lavfi 2.41.0
682   Rename avfilter_all_* function names to avfilter_make_all_*.
683
684   In particular, apply the renames:
685   avfilter_all_formats         -> avfilter_make_all_formats
686   avfilter_all_channel_layouts -> avfilter_make_all_channel_layouts
687   avfilter_all_packing_formats -> avfilter_make_all_packing_formats
688
689 2011-09-12 - 4381bdd - lavfi 2.40.0
690   Change AVFilterBufferRefAudioProps.sample_rate type from uint32_t to int.
691
692 2011-09-12 - 2c03174 - lavfi 2.40.0
693   Simplify signature for avfilter_get_audio_buffer(), make it
694   consistent with avfilter_get_video_buffer().
695
696 2011-09-06 - 4f7dfe1 - lavfi 2.39.0
697   Rename libavfilter/vsink_buffer.h to libavfilter/buffersink.h.
698
699 2011-09-06 - c4415f6 - lavfi 2.38.0
700   Unify video and audio sink API.
701
702   In particular, add av_buffersink_get_buffer_ref(), deprecate
703   av_vsink_buffer_get_video_buffer_ref() and change the value for the
704   opaque field passed to the abuffersink init function.
705
706 2011-09-04 - 61e2e29 - lavu 51.16.0
707   Add av_asprintf().
708
709 2011-08-22 - dacd827 - lavf 53.10.0
710   Add av_find_program_from_stream().
711
712 2011-08-20 - 69e2c1a - lavu 51.13.0
713   Add av_get_media_type_string().
714
715 2011-09-03 - 1889c67 / fb4ca26 - lavc 53.13.0
716                        lavf 53.11.0
717                        lsws  2.1.0
718   Add {avcodec,avformat,sws}_get_class().
719
720 2011-08-03 - 1889c67 / c11fb82 - lavu 51.15.0
721   Add AV_OPT_SEARCH_FAKE_OBJ flag for av_opt_find() function.
722
723 2011-08-14 - 323b930 - lavu 51.12.0
724   Add av_fifo_peek2(), deprecate av_fifo_peek().
725
726 2011-08-26 - lavu 51.14.0 / 51.9.0
727   - 976a8b2 / add41de..976a8b2 / abc78a5 Do not include intfloat_readwrite.h,
728     mathematics.h, rational.h, pixfmt.h, or log.h from avutil.h.
729
730 2011-08-16 - 27fbe31 / 48f9e45 - lavf 53.11.0 / 53.8.0
731   Add avformat_query_codec().
732
733 2011-08-16 - 27fbe31 / bca06e7 - lavc 53.11.0
734   Add avcodec_get_type().
735
736 2011-08-06 - 0cb233c / 2f63440 - lavf 53.7.0
737   Add error_recognition to AVFormatContext.
738
739 2011-08-02 - 1d186e9 / 9d39cbf - lavc 53.9.1
740   Add AV_PKT_FLAG_CORRUPT AVPacket flag.
741
742 2011-07-16 - b57df29 - lavfi 2.27.0
743   Add audio packing negotiation fields and helper functions.
744
745   In particular, add AVFilterPacking enum, planar, in_packings and
746   out_packings fields to AVFilterLink, and the functions:
747   avfilter_set_common_packing_formats()
748   avfilter_all_packing_formats()
749
750 2011-07-10 - 3602ad7 / a67c061 - lavf 53.6.0
751   Add avformat_find_stream_info(), deprecate av_find_stream_info().
752   NOTE: this was backported to 0.7
753
754 2011-07-10 - 3602ad7 / 0b950fe - lavc 53.8.0
755   Add avcodec_open2(), deprecate avcodec_open().
756   NOTE: this was backported to 0.7
757
758   Add avcodec_alloc_context3. Deprecate avcodec_alloc_context() and
759   avcodec_alloc_context2().
760
761 2011-07-01 - b442ca6 - lavf 53.5.0 - avformat.h
762   Add function av_get_output_timestamp().
763
764 2011-06-28 - 5129336 - lavu 51.11.0 - avutil.h
765   Define the AV_PICTURE_TYPE_NONE value in AVPictureType enum.
766
767 2011-06-19 - fd2c0a5 - lavfi 2.23.0 - avfilter.h
768   Add layout negotiation fields and helper functions.
769
770   In particular, add in_chlayouts and out_chlayouts to AVFilterLink,
771   and the functions:
772   avfilter_set_common_sample_formats()
773   avfilter_set_common_channel_layouts()
774   avfilter_all_channel_layouts()
775
776 2011-06-19 - 527ca39 - lavfi 2.22.0 - AVFilterFormats
777   Change type of AVFilterFormats.formats from int * to int64_t *,
778   and update formats handling API accordingly.
779
780   avfilter_make_format_list() still takes a int32_t array and converts
781   it to int64_t. A new function, avfilter_make_format64_list(), that
782   takes int64_t arrays has been added.
783
784 2011-06-19 - 44f669e - lavfi 2.21.0 - vsink_buffer.h
785   Add video sink buffer and vsink_buffer.h public header.
786
787 2011-06-12 - 9fdf772 - lavfi 2.18.0 - avcodec.h
788   Add avfilter_get_video_buffer_ref_from_frame() function in
789   libavfilter/avcodec.h.
790
791 2011-06-12 - c535494 - lavfi 2.17.0 - avfiltergraph.h
792   Add avfilter_inout_alloc() and avfilter_inout_free() functions.
793
794 2011-06-12 - 6119b23 - lavfi 2.16.0 - avfilter_graph_parse()
795   Change avfilter_graph_parse() signature.
796
797 2011-06-23 - 686959e / 67e9ae1 - lavu 51.10.0 / 51.8.0 - attributes.h
798   Add av_printf_format().
799
800 2011-06-16 - 2905e3f / 05e84c9, 2905e3f / 25de595 - lavf 53.4.0 / 53.2.0 - avformat.h
801   Add avformat_open_input and avformat_write_header().
802   Deprecate av_open_input_stream, av_open_input_file,
803   AVFormatParameters and av_write_header.
804
805 2011-06-16 - 2905e3f / 7e83e1c, 2905e3f / dc59ec5 - lavu 51.9.0 / 51.7.0 - opt.h
806   Add av_opt_set_dict() and av_opt_find().
807   Deprecate av_find_opt().
808   Add AV_DICT_APPEND flag.
809
810 2011-06-10 - 45fb647 / cb7c11c - lavu 51.6.0 - opt.h
811   Add av_opt_flag_is_set().
812
813 2011-06-10 - c381960 - lavfi 2.15.0 - avfilter_get_audio_buffer_ref_from_arrays
814   Add avfilter_get_audio_buffer_ref_from_arrays() to avfilter.h.
815
816 2011-06-09 - f9ecb84 / d9f80ea - lavu 51.8.0 - AVMetadata
817   Move AVMetadata from lavf to lavu and rename it to
818   AVDictionary -- new installed header dict.h.
819   All av_metadata_* functions renamed to av_dict_*.
820
821 2011-06-07 - d552f61 / a6703fa - lavu 51.8.0 - av_get_bytes_per_sample()
822   Add av_get_bytes_per_sample() in libavutil/samplefmt.h.
823   Deprecate av_get_bits_per_sample_fmt().
824
825 2011-06-05 - f956924 / b39b062 - lavu 51.8.0 - opt.h
826   Add av_opt_free convenience function.
827
828 2011-06-06 - 95a0242 - lavfi 2.14.0 - AVFilterBufferRefAudioProps
829   Remove AVFilterBufferRefAudioProps.size, and use nb_samples in
830   avfilter_get_audio_buffer() and avfilter_default_get_audio_buffer() in
831   place of size.
832
833 2011-06-06 - 0bc2cca - lavu 51.6.0 - av_samples_alloc()
834   Switch nb_channels and nb_samples parameters order in
835   av_samples_alloc().
836
837 2011-06-06 - e1c7414 - lavu 51.5.0 - av_samples_*
838   Change the data layout created by av_samples_fill_arrays() and
839   av_samples_alloc().
840
841 2011-06-06 - 27bcf55 - lavfi 2.13.0 - vsrc_buffer.h
842   Make av_vsrc_buffer_add_video_buffer_ref() accepts an additional
843   flags parameter in input.
844
845 2011-06-03 - e977ca2 - lavfi 2.12.0 - avfilter_link_free()
846   Add avfilter_link_free() function.
847
848 2011-06-02 - 5ad38d9 - lavu 51.4.0 - av_force_cpu_flags()
849   Add av_cpu_flags() in libavutil/cpu.h.
850
851 2011-05-28 - e71f260 - lavu 51.3.0 - pixdesc.h
852   Add av_get_pix_fmt_name() in libavutil/pixdesc.h, and deprecate
853   avcodec_get_pix_fmt_name() in libavcodec/avcodec.h in its favor.
854
855 2011-05-25 - 39e4206 / 30315a8 - lavf 53.3.0 - avformat.h
856   Add fps_probe_size to AVFormatContext.
857
858 2011-05-22 - 5ecdfd0 - lavf 53.2.0 - avformat.h
859   Introduce avformat_alloc_output_context2() and deprecate
860   avformat_alloc_output_context().
861
862 2011-05-22 - 83db719 - lavfi 2.10.0 - vsrc_buffer.h
863   Make libavfilter/vsrc_buffer.h public.
864
865 2011-05-19 - c000a9f - lavfi 2.8.0 - avcodec.h
866   Add av_vsrc_buffer_add_frame() to libavfilter/avcodec.h.
867
868 2011-05-14 - 9fdf772 - lavfi 2.6.0 - avcodec.h
869   Add avfilter_get_video_buffer_ref_from_frame() to libavfilter/avcodec.h.
870
871 2011-05-18 - 75a37b5 / 64150ff - lavc 53.7.0 - AVCodecContext.request_sample_fmt
872   Add request_sample_fmt field to AVCodecContext.
873
874 2011-05-10 - 59eb12f / 188dea1 - lavc 53.6.0 - avcodec.h
875   Deprecate AVLPCType and the following fields in
876   AVCodecContext: lpc_coeff_precision, prediction_order_method,
877   min_partition_order, max_partition_order, lpc_type, lpc_passes.
878   Corresponding FLAC encoder options should be used instead.
879
880 2011-05-07 - 9fdf772 - lavfi 2.5.0 - avcodec.h
881   Add libavfilter/avcodec.h header and avfilter_copy_frame_props()
882   function.
883
884 2011-05-07 - 18ded93 - lavc 53.5.0 - AVFrame
885   Add format field to AVFrame.
886
887 2011-05-07 - 22333a6 - lavc 53.4.0 - AVFrame
888   Add width and height fields to AVFrame.
889
890 2011-05-01 - 35fe66a - lavfi 2.4.0 - avfilter.h
891   Rename AVFilterBufferRefVideoProps.pixel_aspect to
892   sample_aspect_ratio.
893
894 2011-05-01 - 77e9dee - lavc 53.3.0 - AVFrame
895   Add a sample_aspect_ratio field to AVFrame.
896
897 2011-05-01 - 1ba5727 - lavc 53.2.0 - AVFrame
898   Add a pkt_pos field to AVFrame.
899
900 2011-04-29 - 35ceaa7 - lavu 51.2.0 - mem.h
901   Add av_dynarray_add function for adding
902   an element to a dynamic array.
903
904 2011-04-26 - d7e5aeb / bebe72f - lavu 51.1.0 - avutil.h
905   Add AVPictureType enum and av_get_picture_type_char(), deprecate
906   FF_*_TYPE defines and av_get_pict_type_char() defined in
907   libavcodec/avcodec.h.
908
909 2011-04-26 - d7e5aeb / 10d3940 - lavfi 2.3.0 - avfilter.h
910   Add pict_type and key_frame fields to AVFilterBufferRefVideo.
911
912 2011-04-26 - d7e5aeb / 7a11c82 - lavfi 2.2.0 - vsrc_buffer
913   Add sample_aspect_ratio fields to vsrc_buffer arguments
914
915 2011-04-21 - 8772156 / 94f7451 - lavc 53.1.0 - avcodec.h
916   Add CODEC_CAP_SLICE_THREADS for codecs supporting sliced threading.
917
918 2011-04-15 - lavc 52.120.0 - avcodec.h
919   AVPacket structure got additional members for passing side information:
920     c407984 / 4de339e introduce side information for AVPacket
921     c407984 / 2d8591c make containers pass palette change in AVPacket
922
923 2011-04-12 - lavf 52.107.0 - avio.h
924   Avio cleanup, part II - deprecate the entire URLContext API:
925     c55780d / 175389c add avio_check as a replacement for url_exist
926     9891004 / ff1ec0c add avio_pause and avio_seek_time as replacements
927             for _av_url_read_fseek/fpause
928     d4d0932 / cdc6a87 deprecate av_protocol_next(), avio_enum_protocols
929             should be used instead.
930     c88caa5 / 80c6e23 rename url_set_interrupt_cb->avio_set_interrupt_cb.
931     c88caa5 / f87b1b3 rename open flags: URL_* -> AVIO_*
932     d4d0932 / f8270bb add avio_enum_protocols.
933     d4d0932 / 5593f03 deprecate URLProtocol.
934     d4d0932 / c486dad deprecate URLContext.
935     d4d0932 / 026e175 deprecate the typedef for URLInterruptCB
936     c88caa5 / 8e76a19 deprecate av_register_protocol2.
937     11d7841 / b840484 deprecate URL_PROTOCOL_FLAG_NESTED_SCHEME
938     11d7841 / 1305d93 deprecate av_url_read_seek
939     11d7841 / fa104e1 deprecate av_url_read_pause
940     434f248 / 727c7aa deprecate url_get_filename().
941     434f248 / 5958df3 deprecate url_max_packet_size().
942     434f248 / 1869ea0 deprecate url_get_file_handle().
943     434f248 / 32a97d4 deprecate url_filesize().
944     434f248 / e52a914 deprecate url_close().
945     434f248 / 58a48c6 deprecate url_seek().
946     434f248 / 925e908 deprecate url_write().
947     434f248 / dce3756 deprecate url_read_complete().
948     434f248 / bc371ac deprecate url_read().
949     434f248 / 0589da0 deprecate url_open().
950     434f248 / 62eaaea deprecate url_connect.
951     434f248 / 5652bb9 deprecate url_alloc.
952     434f248 / 333e894 deprecate url_open_protocol
953     434f248 / e230705 deprecate url_poll and URLPollEntry
954
955 2011-04-08 - lavf 52.106.0 - avformat.h
956   Minor avformat.h cleanup:
957     d4d0932 / a9bf9d8 deprecate av_guess_image2_codec
958     d4d0932 / c3675df rename avf_sdp_create->av_sdp_create
959
960 2011-04-03 - lavf 52.105.0 - avio.h
961   Large-scale renaming/deprecating of AVIOContext-related functions:
962     2cae980 / 724f6a0 deprecate url_fdopen
963     2cae980 / 403ee83 deprecate url_open_dyn_packet_buf
964     2cae980 / 6dc7d80 rename url_close_dyn_buf       -> avio_close_dyn_buf
965     2cae980 / b92c545 rename url_open_dyn_buf        -> avio_open_dyn_buf
966     2cae980 / 8978fed introduce an AVIOContext.seekable field as a replacement for
967             AVIOContext.is_streamed and url_is_streamed()
968     1caa412 / b64030f deprecate get_checksum()
969     1caa412 / 4c4427a deprecate init_checksum()
970     2fd41c9 / 4ec153b deprecate udp_set_remote_url/get_local_port
971     4fa0e24 / 933e90a deprecate av_url_read_fseek/fpause
972     4fa0e24 / 8d9769a deprecate url_fileno
973     0fecf26 / b7f2fdd rename put_flush_packet -> avio_flush
974     0fecf26 / 35f1023 deprecate url_close_buf
975     0fecf26 / 83fddae deprecate url_open_buf
976     0fecf26 / d9d86e0 rename url_fprintf -> avio_printf
977     0fecf26 / 59f65d9 deprecate url_setbufsize
978     6947b0c / 3e68b3b deprecate url_ferror
979     e8bb2e2 deprecate url_fget_max_packet_size
980     76aa876 rename url_fsize -> avio_size
981     e519753 deprecate url_fgetc
982     655e45e deprecate url_fgets
983     a2704c9 rename url_ftell -> avio_tell
984     e16ead0 deprecate get_strz() in favor of avio_get_str
985     0300db8,2af07d3 rename url_fskip -> avio_skip
986     6b4aa5d rename url_fseek -> avio_seek
987     61840b4 deprecate put_tag
988     22a3212 rename url_fopen/fclose -> avio_open/close.
989     0ac8e2b deprecate put_nbyte
990     77eb550 rename put_byte          -> avio_w8
991                    put_[b/l]e<type>  -> avio_w[b/l]<type>
992                    put_buffer        -> avio_write
993     b7effd4 rename get_byte          -> avio_r8,
994                    get_[b/l]e<type>  -> avio_r[b/l]<type>
995                    get_buffer        -> avio_read
996     b3db9ce deprecate get_partial_buffer
997     8d9ac96 rename av_alloc_put_byte -> avio_alloc_context
998
999 2011-03-25 - 27ef7b1 / 34b47d7 - lavc 52.115.0 - AVCodecContext.audio_service_type
1000   Add audio_service_type field to AVCodecContext.
1001
1002 2011-03-17 - e309fdc - lavu 50.40.0 - pixfmt.h
1003   Add PIX_FMT_BGR48LE and PIX_FMT_BGR48BE pixel formats
1004
1005 2011-03-02 - 863c471 - lavf  52.103.0 - av_pkt_dump2, av_pkt_dump_log2
1006   Add new functions av_pkt_dump2, av_pkt_dump_log2 that uses the
1007   source stream timebase for outputting timestamps. Deprecate
1008   av_pkt_dump and av_pkt_dump_log.
1009
1010 2011-02-20 - e731b8d - lavf  52.102.0 - avio.h
1011   * e731b8d - rename init_put_byte() to ffio_init_context(), deprecating the
1012               original, and move it to a private header so it is no longer
1013               part of our public API. Instead, use av_alloc_put_byte().
1014   * ae628ec - rename ByteIOContext to AVIOContext.
1015
1016 2011-02-16 - 09d171b - lavf  52.101.0 - avformat.h
1017                        lavu  52.39.0  - parseutils.h
1018   * 610219a - Add av_ prefix to dump_format().
1019   * f6c7375 - Replace parse_date() in lavf with av_parse_time() in lavu.
1020   * ab0287f - Move find_info_tag from lavf to lavu and add av_prefix to it.
1021
1022 2011-02-15 - lavu 52.38.0 - merge libavcore
1023   libavcore is merged back completely into libavutil
1024
1025 2011-02-10 - 55bad0c - lavc 52.113.0 - vbv_delay
1026   Add vbv_delay field to AVCodecContext
1027
1028 2011-02-14 - 24a83bd - lavf 52.100.0 - AV_DISPOSITION_CLEAN_EFFECTS
1029   Add AV_DISPOSITION_CLEAN_EFFECTS disposition flag.
1030
1031 2011-02-14 - 910b5b8 - lavfi 1.76.0 - AVFilterLink sample_aspect_ratio
1032   Add sample_aspect_ratio field to AVFilterLink.
1033
1034 2011-02-10 - 12c14cd - lavf 52.99.0 - AVStream.disposition
1035   Add AV_DISPOSITION_HEARING_IMPAIRED and AV_DISPOSITION_VISUAL_IMPAIRED.
1036
1037 2011-02-09 - c0b102c - lavc 52.112.0 - avcodec_thread_init()
1038   Deprecate avcodec_thread_init()/avcodec_thread_free() use; instead
1039   set thread_count before calling avcodec_open.
1040
1041 2011-02-09 - 37b00b4 - lavc 52.111.0 - threading API
1042   Add CODEC_CAP_FRAME_THREADS with new restrictions on get_buffer()/
1043   release_buffer()/draw_horiz_band() callbacks for appropriate codecs.
1044   Add thread_type and active_thread_type fields to AVCodecContext.
1045
1046 2011-02-08 - 3940caa - lavf 52.98.0 - av_probe_input_buffer
1047   Add av_probe_input_buffer() to avformat.h for probing format from a
1048   ByteIOContext.
1049
1050 2011-02-06 - fe174fc - lavf 52.97.0 - avio.h
1051   Add flag for non-blocking protocols: URL_FLAG_NONBLOCK
1052
1053 2011-02-04 - f124b08 - lavf 52.96.0 - avformat_free_context()
1054   Add avformat_free_context() in avformat.h.
1055
1056 2011-02-03 - f5b82f4 - lavc 52.109.0 - add CODEC_ID_PRORES
1057   Add CODEC_ID_PRORES to avcodec.h.
1058
1059 2011-02-03 - fe9a3fb - lavc 52.109.0 - H.264 profile defines
1060   Add defines for H.264 * Constrained Baseline and Intra profiles
1061
1062 2011-02-02 - lavf 52.95.0
1063   * 50196a9 - add a new installed header version.h.
1064   * 4efd5cf, dccbd97, 93b78d1 - add several variants of public
1065     avio_{put,get}_str* functions.  Deprecate corresponding semi-public
1066     {put,get}_str*.
1067
1068 2011-02-02 - dfd2a00 - lavu 50.37.0 - log.h
1069   Make av_dlog public.
1070
1071 2011-01-31 - 7b3ea55 - lavfi 1.76.0 - vsrc_buffer
1072   Add sample_aspect_ratio fields to vsrc_buffer arguments
1073
1074 2011-01-31 - 910b5b8 - lavfi 1.75.0 - AVFilterLink sample_aspect_ratio
1075   Add sample_aspect_ratio field to AVFilterLink.
1076
1077 2011-01-15 - a242ac3 - lavfi 1.74.0 - AVFilterBufferRefAudioProps
1078   Rename AVFilterBufferRefAudioProps.samples_nb to nb_samples.
1079
1080 2011-01-14 - 7f88a5b - lavf 52.93.0 - av_metadata_copy()
1081   Add av_metadata_copy() in avformat.h.
1082
1083 2011-01-07 - 81c623f - lavc 52.107.0 - deprecate reordered_opaque
1084   Deprecate reordered_opaque in favor of pkt_pts/dts.
1085
1086 2011-01-07 - 1919fea - lavc 52.106.0 - pkt_dts
1087   Add pkt_dts to AVFrame, this will in the future allow multithreading decoders
1088   to not mess up dts.
1089
1090 2011-01-07 - 393cbb9 - lavc 52.105.0 - pkt_pts
1091   Add pkt_pts to AVFrame.
1092
1093 2011-01-07 - 060ec0a - lavc 52.104.0 - av_get_profile_name()
1094   Add av_get_profile_name to libavcodec/avcodec.h.
1095
1096 2010-12-27 - 0ccabee - lavfi 1.71.0 - AV_PERM_NEG_LINESIZES
1097   Add AV_PERM_NEG_LINESIZES in avfilter.h.
1098
1099 2010-12-27 - 9128ae0 - lavf 52.91.0 - av_find_best_stream()
1100   Add av_find_best_stream to libavformat/avformat.h.
1101
1102 2010-12-27 - 107a7e3 - lavf 52.90.0
1103   Add AVFMT_NOSTREAMS flag for formats with no streams,
1104   like e.g. text metadata.
1105
1106 2010-12-22 - 0328b9e - lavu 50.36.0 - file.h
1107   Add functions av_file_map() and av_file_unmap() in file.h.
1108
1109 2010-12-19 - 0bc55f5 - lavu 50.35.0 - error.h
1110   Add "not found" error codes:
1111   AVERROR_DEMUXER_NOT_FOUND
1112   AVERROR_MUXER_NOT_FOUND
1113   AVERROR_DECODER_NOT_FOUND
1114   AVERROR_ENCODER_NOT_FOUND
1115   AVERROR_PROTOCOL_NOT_FOUND
1116   AVERROR_FILTER_NOT_FOUND
1117   AVERROR_BSF_NOT_FOUND
1118   AVERROR_STREAM_NOT_FOUND
1119
1120 2010-12-09 - c61cdd0 - lavcore 0.16.0 - avcore.h
1121   Move AV_NOPTS_VALUE, AV_TIME_BASE, AV_TIME_BASE_Q symbols from
1122   avcodec.h to avcore.h.
1123
1124 2010-12-04 - 16cfc96 - lavc 52.98.0 - CODEC_CAP_NEG_LINESIZES
1125   Add CODEC_CAP_NEG_LINESIZES codec capability flag in avcodec.h.
1126
1127 2010-12-04 - bb4afa1 - lavu 50.34.0 - av_get_pix_fmt_string()
1128   Deprecate avcodec_pix_fmt_string() in favor of
1129   pixdesc.h/av_get_pix_fmt_string().
1130
1131 2010-12-04 - 4da12e3 - lavcore 0.15.0 - av_image_alloc()
1132   Add av_image_alloc() to libavcore/imgutils.h.
1133
1134 2010-12-02 - 037be76 - lavfi 1.67.0 - avfilter_graph_create_filter()
1135   Add function avfilter_graph_create_filter() in avfiltergraph.h.
1136
1137 2010-11-25 - 4723bc2 - lavfi 1.65.0 - avfilter_get_video_buffer_ref_from_arrays()
1138   Add function avfilter_get_video_buffer_ref_from_arrays() in
1139   avfilter.h.
1140
1141 2010-11-21 - 176a615 - lavcore 0.14.0 - audioconvert.h
1142   Add a public audio channel API in audioconvert.h, and deprecate the
1143   corresponding functions in libavcodec:
1144   avcodec_get_channel_name()
1145   avcodec_get_channel_layout()
1146   avcodec_get_channel_layout_string()
1147   avcodec_channel_layout_num_channels()
1148   and the CH_* macros defined in libavcodec/avcodec.h.
1149
1150 2010-11-21 - 6bfc268 - lavf 52.85.0 - avformat.h
1151   Add av_append_packet().
1152
1153 2010-11-21 - a08d918 - lavc 52.97.0 - avcodec.h
1154   Add av_grow_packet().
1155
1156 2010-11-17 - 0985e1a - lavcore 0.13.0 - parseutils.h
1157   Add av_parse_color() declared in libavcore/parseutils.h.
1158
1159 2010-11-13 - cb2c971 - lavc 52.95.0 - AVCodecContext
1160   Add AVCodecContext.subtitle_header and AVCodecContext.subtitle_header_size
1161   fields.
1162
1163 2010-11-13 - 5aaea02 - lavfi 1.62.0 - avfiltergraph.h
1164   Make avfiltergraph.h public.
1165
1166 2010-11-13 - 4fcbb2a - lavfi 1.61.0 - avfiltergraph.h
1167   Remove declarations from avfiltergraph.h for the functions:
1168   avfilter_graph_check_validity()
1169   avfilter_graph_config_links()
1170   avfilter_graph_config_formats()
1171   which are now internal.
1172   Use avfilter_graph_config() instead.
1173
1174 2010-11-08 - d2af720 - lavu 50.33.0 - eval.h
1175   Deprecate functions:
1176   av_parse_and_eval_expr(),
1177   av_parse_expr(),
1178   av_eval_expr(),
1179   av_free_expr(),
1180   in favor of the functions:
1181   av_expr_parse_and_eval(),
1182   av_expr_parse(),
1183   av_expr_eval(),
1184   av_expr_free().
1185
1186 2010-11-08 - 24de0ed - lavfi 1.59.0 - avfilter_free()
1187   Rename avfilter_destroy() to avfilter_free().
1188   This change breaks libavfilter API/ABI.
1189
1190 2010-11-07 - 1e80a0e - lavfi 1.58.0 - avfiltergraph.h
1191   Remove graphparser.h header, move AVFilterInOut and
1192   avfilter_graph_parse() declarations to libavfilter/avfiltergraph.h.
1193
1194 2010-11-07 - 7313132 - lavfi 1.57.0 - AVFilterInOut
1195   Rename field AVFilterInOut.filter to AVFilterInOut.filter_ctx.
1196   This change breaks libavfilter API.
1197
1198 2010-11-04 - 97dd1e4 - lavfi 1.56.0 - avfilter_graph_free()
1199   Rename avfilter_graph_destroy() to avfilter_graph_free().
1200   This change breaks libavfilter API/ABI.
1201
1202 2010-11-04 - e15aeea - lavfi 1.55.0 - avfilter_graph_alloc()
1203   Add avfilter_graph_alloc() to libavfilter/avfiltergraph.h.
1204
1205 2010-11-02 - 6f84cd1 - lavcore 0.12.0 - av_get_bits_per_sample_fmt()
1206   Add av_get_bits_per_sample_fmt() to libavcore/samplefmt.h and
1207   deprecate av_get_bits_per_sample_format().
1208
1209 2010-11-02 - d63e456 - lavcore 0.11.0 - samplefmt.h
1210   Add sample format functions in libavcore/samplefmt.h:
1211   av_get_sample_fmt_name(),
1212   av_get_sample_fmt(),
1213   av_get_sample_fmt_string(),
1214   and deprecate the corresponding libavcodec/audioconvert.h functions:
1215   avcodec_get_sample_fmt_name(),
1216   avcodec_get_sample_fmt(),
1217   avcodec_sample_fmt_string().
1218
1219 2010-11-02 - 262d1c5 - lavcore 0.10.0 - samplefmt.h
1220   Define enum AVSampleFormat in libavcore/samplefmt.h, deprecate enum
1221   SampleFormat.
1222
1223 2010-10-16 - 2a24df9 - lavfi 1.52.0 - avfilter_graph_config()
1224   Add the function avfilter_graph_config() in avfiltergraph.h.
1225
1226 2010-10-15 - 03700d3 - lavf 52.83.0 - metadata API
1227   Change demuxers to export metadata in generic format and
1228   muxers to accept generic format. Deprecate the public
1229   conversion API.
1230
1231 2010-10-10 - 867ae7a - lavfi 1.49.0 - AVFilterLink.time_base
1232   Add time_base field to AVFilterLink.
1233
1234 2010-09-27 - c85eef4 - lavu 50.31.0 - av_set_options_string()
1235   Move av_set_options_string() from libavfilter/parseutils.h to
1236   libavutil/opt.h.
1237
1238 2010-09-27 - acc0490 - lavfi 1.47.0 - AVFilterLink
1239   Make the AVFilterLink fields srcpad and dstpad store the pointers to
1240   the source and destination pads, rather than their indexes.
1241
1242 2010-09-27 - 372e288 - lavu 50.30.0 - av_get_token()
1243   Move av_get_token() from libavfilter/parseutils.h to
1244   libavutil/avstring.h.
1245
1246 2010-09-26 - 635d4ae - lsws 0.12.0 - swscale.h
1247   Add the functions sws_alloc_context() and sws_init_context().
1248
1249 2010-09-26 - 6ed0404 - lavu 50.29.0 - opt.h
1250   Move libavcodec/opt.h to libavutil/opt.h.
1251
1252 2010-09-24 - 1c1c80f - lavu 50.28.0 - av_log_set_flags()
1253   Default of av_log() changed due to many problems to the old no repeat
1254   detection. Read the docs of AV_LOG_SKIP_REPEATED in log.h before
1255   enabling it for your app!.
1256
1257 2010-09-24 - f66eb58 - lavc 52.90.0 - av_opt_show2()
1258   Deprecate av_opt_show() in favor or av_opt_show2().
1259
1260 2010-09-14 - bc6f0af - lavu 50.27.0 - av_popcount()
1261   Add av_popcount() to libavutil/common.h.
1262
1263 2010-09-08 - c6c98d0 - lavu 50.26.0 - av_get_cpu_flags()
1264   Add av_get_cpu_flags().
1265
1266 2010-09-07 - 34017fd - lavcore 0.9.0 - av_image_copy()
1267   Add av_image_copy().
1268
1269 2010-09-07 - 9686abb - lavcore 0.8.0 - av_image_copy_plane()
1270   Add av_image_copy_plane().
1271
1272 2010-09-07 - 9b7269e - lavcore 0.7.0 - imgutils.h
1273   Adopt hierarchical scheme for the imgutils.h function names,
1274   deprecate the old names.
1275
1276 2010-09-04 - 7160bb7 - lavu 50.25.0 - AV_CPU_FLAG_*
1277   Deprecate the FF_MM_* flags defined in libavcodec/avcodec.h in favor
1278   of the AV_CPU_FLAG_* flags defined in libavutil/cpu.h.
1279
1280 2010-08-26 - 5da19b5 - lavc 52.87.0 - avcodec_get_channel_layout()
1281   Add avcodec_get_channel_layout() in audioconvert.h.
1282
1283 2010-08-20 - e344336 - lavcore 0.6.0 - av_fill_image_max_pixsteps()
1284   Rename av_fill_image_max_pixstep() to av_fill_image_max_pixsteps().
1285
1286 2010-08-18 - a6ddf8b - lavcore 0.5.0 - av_fill_image_max_pixstep()
1287   Add av_fill_image_max_pixstep() in imgutils.h.
1288
1289 2010-08-17 - 4f2d2e4 - lavu 50.24.0 - AV_NE()
1290   Add the AV_NE macro.
1291
1292 2010-08-17 - ad2c950 - lavfi 1.36.0 - audio framework
1293   Implement AVFilterBufferRefAudioProps struct for audio properties,
1294   get_audio_buffer(), filter_samples() functions and related changes.
1295
1296 2010-08-12 - 81c1eca - lavcore 0.4.0 - av_get_image_linesize()
1297   Add av_get_image_linesize() in imgutils.h.
1298
1299 2010-08-11 - c1db7bf - lavfi 1.34.0 - AVFilterBufferRef
1300   Resize data and linesize arrays in AVFilterBufferRef to 8.
1301
1302   This change breaks libavfilter API/ABI.
1303
1304 2010-08-11 - 9f08d80 - lavc 52.85.0 - av_picture_data_copy()
1305   Add av_picture_data_copy in avcodec.h.
1306
1307 2010-08-11 - 84c0386 - lavfi 1.33.0 - avfilter_open()
1308   Change avfilter_open() signature:
1309   AVFilterContext *avfilter_open(AVFilter *filter, const char *inst_name) ->
1310   int avfilter_open(AVFilterContext **filter_ctx, AVFilter *filter, const char *inst_name);
1311
1312   This change breaks libavfilter API/ABI.
1313
1314 2010-08-11 - cc80caf - lavfi 1.32.0 - AVFilterBufferRef
1315   Add a type field to AVFilterBufferRef, and move video specific
1316   properties to AVFilterBufferRefVideoProps.
1317
1318   This change breaks libavfilter API/ABI.
1319
1320 2010-08-07 - 5d4890d - lavfi 1.31.0 - AVFilterLink
1321   Rename AVFilterLink fields:
1322   AVFilterLink.srcpic    ->  AVFilterLink.src_buf
1323   AVFilterLink.cur_pic   ->  AVFilterLink.cur_buf
1324   AVFilterLink.outpic    ->  AVFilterLink.out_buf
1325
1326 2010-08-07 - 7fce481 - lavfi 1.30.0
1327   Rename functions and fields:
1328   avfilter_(un)ref_pic       -> avfilter_(un)ref_buffer
1329   avfilter_copy_picref_props -> avfilter_copy_buffer_ref_props
1330   AVFilterBufferRef.pic      -> AVFilterBufferRef.buffer
1331
1332 2010-08-07 - ecc8dad - lavfi 1.29.0 - AVFilterBufferRef
1333   Rename AVFilterPicRef to AVFilterBufferRef.
1334
1335 2010-08-07 - d54e094 - lavfi 1.28.0 - AVFilterBuffer
1336   Move format field from AVFilterBuffer to AVFilterPicRef.
1337
1338 2010-08-06 - bf176f5 - lavcore 0.3.0 - av_check_image_size()
1339   Deprecate avcodec_check_dimensions() in favor of the function
1340   av_check_image_size() defined in libavcore/imgutils.h.
1341
1342 2010-07-30 - 56b5e9d - lavfi 1.27.0 - AVFilterBuffer
1343   Increase size of the arrays AVFilterBuffer.data and
1344   AVFilterBuffer.linesize from 4 to 8.
1345
1346   This change breaks libavfilter ABI.
1347
1348 2010-07-29 - e7bd48a - lavcore 0.2.0 - imgutils.h
1349   Add functions av_fill_image_linesizes() and
1350   av_fill_image_pointers(), declared in libavcore/imgutils.h.
1351
1352 2010-07-27 - 126b638 - lavcore 0.1.0 - parseutils.h
1353   Deprecate av_parse_video_frame_size() and av_parse_video_frame_rate()
1354   defined in libavcodec in favor of the newly added functions
1355   av_parse_video_size() and av_parse_video_rate() declared in
1356   libavcore/parseutils.h.
1357
1358 2010-07-23 - 4485247 - lavu 50.23.0 - mathematics.h
1359   Add the M_PHI constant definition.
1360
1361 2010-07-22 - bdab614 - lavfi 1.26.0 - media format generalization
1362   Add a type field to AVFilterLink.
1363
1364   Change the field types:
1365   enum PixelFormat format   -> int format   in AVFilterBuffer
1366   enum PixelFormat *formats -> int *formats in AVFilterFormats
1367   enum PixelFormat *format  -> int format   in AVFilterLink
1368
1369   Change the function signatures:
1370   AVFilterFormats *avfilter_make_format_list(const enum PixelFormat *pix_fmts); ->
1371   AVFilterFormats *avfilter_make_format_list(const int *fmts);
1372
1373   int avfilter_add_colorspace(AVFilterFormats **avff, enum PixelFormat pix_fmt); ->
1374   int avfilter_add_format    (AVFilterFormats **avff, int fmt);
1375
1376   AVFilterFormats *avfilter_all_colorspaces(void); ->
1377   AVFilterFormats *avfilter_all_formats    (enum AVMediaType type);
1378
1379   This change breaks libavfilter API/ABI.
1380
1381 2010-07-21 - aac6ca6 - lavcore 0.0.0
1382   Add libavcore.
1383
1384 2010-07-17 - b5c582f - lavfi 1.25.0 - AVFilterBuffer
1385   Remove w and h fields from AVFilterBuffer.
1386
1387 2010-07-17 - f0d77b2 - lavfi 1.24.0 - AVFilterBuffer
1388   Rename AVFilterPic to AVFilterBuffer.
1389
1390 2010-07-17 - 57fe80f - lavf 52.74.0 - url_fskip()
1391   Make url_fskip() return an int error code instead of void.
1392
1393 2010-07-11 - 23940f1 - lavc 52.83.0
1394   Add AVCodecContext.lpc_type and AVCodecContext.lpc_passes fields.
1395   Add AVLPCType enum.
1396   Deprecate AVCodecContext.use_lpc.
1397
1398 2010-07-11 - e1d7c88 - lavc 52.82.0 - avsubtitle_free()
1399   Add a function for free the contents of a AVSubtitle generated by
1400   avcodec_decode_subtitle.
1401
1402 2010-07-11 - b91d08f - lavu 50.22.0 - bswap.h and intreadwrite.h
1403   Make the bswap.h and intreadwrite.h API public.
1404
1405 2010-07-08 - ce1cd1c - lavu 50.21.0 - pixdesc.h
1406   Rename read/write_line() to av_read/write_image_line().
1407
1408 2010-07-07 - 4d508e4 - lavfi 1.21.0 - avfilter_copy_picref_props()
1409   Add avfilter_copy_picref_props().
1410
1411 2010-07-03 - 2d525ef - lavc 52.79.0
1412   Add FF_COMPLIANCE_UNOFFICIAL and change all instances of
1413   FF_COMPLIANCE_INOFFICIAL to use FF_COMPLIANCE_UNOFFICIAL.
1414
1415 2010-07-02 - 89eec74 - lavu 50.20.0 - lfg.h
1416   Export av_lfg_init(), av_lfg_get(), av_mlfg_get(), and av_bmg_get() through
1417   lfg.h.
1418
1419 2010-06-28 - a52e2c3 - lavfi 1.20.1 - av_parse_color()
1420   Extend av_parse_color() syntax, make it accept an alpha value specifier and
1421   set the alpha value to 255 by default.
1422
1423 2010-06-22 - 735cf6b - lavf 52.71.0 - URLProtocol.priv_data_size, priv_data_class
1424   Add priv_data_size and priv_data_class to URLProtocol.
1425
1426 2010-06-22 - ffbb289 - lavf 52.70.0 - url_alloc(), url_connect()
1427   Add url_alloc() and url_connect().
1428
1429 2010-06-22 - 9b07a2d - lavf 52.69.0 - av_register_protocol2()
1430   Add av_register_protocol2(), deprecating av_register_protocol().
1431
1432 2010-06-09 - 65db058 - lavu 50.19.0 - av_compare_mod()
1433   Add av_compare_mod() to libavutil/mathematics.h.
1434
1435 2010-06-05 - 0b99215 - lavu 50.18.0 - eval API
1436   Make the eval API public.
1437
1438 2010-06-04 - 31878fc - lavu 50.17.0 - AV_BASE64_SIZE
1439   Add AV_BASE64_SIZE() macro.
1440
1441 2010-06-02 - 7e566bb - lavc 52.73.0 - av_get_codec_tag_string()
1442   Add av_get_codec_tag_string().
1443
1444 2010-06-01 - 2b99142 - lsws 0.11.0 - convertPalette API
1445   Add sws_convertPalette8ToPacked32() and sws_convertPalette8ToPacked24().
1446
1447 2010-05-26 - 93ebfee - lavc 52.72.0 - CODEC_CAP_EXPERIMENTAL
1448   Add CODEC_CAP_EXPERIMENTAL flag.
1449   NOTE: this was backported to 0.6
1450
1451 2010-05-23 - 9977863 - lavu 50.16.0 - av_get_random_seed()
1452   Add av_get_random_seed().
1453
1454 2010-05-18 - 796ac23 - lavf 52.63.0 - AVFMT_FLAG_RTP_HINT
1455   Add AVFMT_FLAG_RTP_HINT as possible value for AVFormatContext.flags.
1456   NOTE: this was backported to 0.6
1457
1458 2010-05-09 - b6bc205 - lavfi 1.20.0 - AVFilterPicRef
1459   Add interlaced and top_field_first fields to AVFilterPicRef.
1460
1461 ------------------------------8<-------------------------------------
1462                    0.6 branch was cut here
1463 ----------------------------->8--------------------------------------
1464
1465 2010-05-01 - 8e2ee18 - lavf 52.62.0 - probe function
1466   Add av_probe_input_format2 to API, it allows ignoring probe
1467   results below given score and returns the actual probe score.
1468
1469 2010-04-01 - 3dd6180 - lavf 52.61.0 - metadata API
1470   Add a flag for av_metadata_set2() to disable overwriting of
1471   existing tags.
1472
1473 2010-04-01 - 0fb49b5 - lavc 52.66.0
1474   Add avcodec_get_edge_width().
1475
1476 2010-03-31 - d103218 - lavc 52.65.0
1477   Add avcodec_copy_context().
1478
1479 2010-03-31 - 1a70d12 - lavf 52.60.0 - av_match_ext()
1480   Make av_match_ext() public.
1481
1482 2010-03-31 - 1149150 - lavu 50.14.0 - AVMediaType
1483   Move AVMediaType enum from libavcodec to libavutil.
1484
1485 2010-03-31 - 72415b2 - lavc 52.64.0 - AVMediaType
1486   Define AVMediaType enum, and use it instead of enum CodecType, which
1487   is deprecated and will be dropped at the next major bump.
1488
1489 2010-03-25 - 8795823 - lavu 50.13.0 - av_strerror()
1490   Implement av_strerror().
1491
1492 2010-03-23 - e1484eb - lavc 52.60.0 - av_dct_init()
1493   Support DCT-I and DST-I.
1494
1495 2010-03-15 - b8819c8 - lavf 52.56.0 - AVFormatContext.start_time_realtime
1496   Add AVFormatContext.start_time_realtime field.
1497
1498 2010-03-13 - 5bb5c1d - lavfi 1.18.0 - AVFilterPicRef.pos
1499   Add AVFilterPicRef.pos field.
1500
1501 2010-03-13 - 60c144f - lavu 50.12.0 - error.h
1502   Move error code definitions from libavcodec/avcodec.h to
1503   the new public header libavutil/error.h.
1504
1505 2010-03-07 - c709483 - lavc 52.56.0 - avfft.h
1506   Add public FFT interface.
1507
1508 2010-03-06 - ac6ef86 - lavu 50.11.0 - av_stristr()
1509   Add av_stristr().
1510
1511 2010-03-03 - 4b83fc0 - lavu 50.10.0 - av_tree_enumerate()
1512   Add av_tree_enumerate().
1513
1514 2010-02-07 - b687c1a - lavu 50.9.0 - av_compare_ts()
1515   Add av_compare_ts().
1516
1517 2010-02-05 - 3f3dc76 - lsws 0.10.0 - sws_getCoefficients()
1518   Add sws_getCoefficients().
1519
1520 2010-02-01 - ca76a11 - lavf 52.50.0 - metadata API
1521   Add a list of generic tag names, change 'author' -> 'artist',
1522   'year' -> 'date'.
1523
1524 2010-01-30 - 80a07f6 - lavu 50.8.0 - av_get_pix_fmt()
1525   Add av_get_pix_fmt().
1526
1527 2010-01-21 - 01cc47d - lsws 0.9.0 - sws_scale()
1528   Change constness attributes of sws_scale() parameters.
1529
1530 2010-01-10 - 3fb8e77 - lavfi 1.15.0 - avfilter_graph_config_links()
1531   Add a log_ctx parameter to avfilter_graph_config_links().
1532
1533 2010-01-07 - 8e9767f - lsws 0.8.0 - sws_isSupported{In,Out}put()
1534   Add sws_isSupportedInput() and sws_isSupportedOutput() functions.
1535
1536 2010-01-06 - c1d662f - lavfi 1.14.0 - avfilter_add_colorspace()
1537   Change the avfilter_add_colorspace() signature, make it accept an
1538   (AVFilterFormats **) rather than an (AVFilterFormats *) as before.
1539
1540 2010-01-03 - 4fd1f18 - lavfi 1.13.0 - avfilter_add_colorspace()
1541   Add avfilter_add_colorspace().
1542
1543 2010-01-02 - 8eb631f - lavf 52.46.0 - av_match_ext()
1544   Add av_match_ext(), it should be used in place of match_ext().
1545
1546 2010-01-01 - a1f547b - lavf 52.45.0 - av_guess_format()
1547   Add av_guess_format(), it should be used in place of guess_format().
1548
1549 2009-12-13 - a181981 - lavf 52.43.0 - metadata API
1550   Add av_metadata_set2(), AV_METADATA_DONT_STRDUP_KEY and
1551   AV_METADATA_DONT_STRDUP_VAL.
1552
1553 2009-12-13 - 277c733 - lavu 50.7.0 - avstring.h API
1554   Add av_d2str().
1555
1556 2009-12-13 - 02b398e - lavc 52.42.0 - AVStream
1557   Add avg_frame_rate.
1558
1559 2009-12-12 - 3ba69a1 - lavu 50.6.0 - av_bmg_next()
1560   Introduce the av_bmg_next() function.
1561
1562 2009-12-05 - a13a543 - lavfi 1.12.0 - avfilter_draw_slice()
1563   Add a slice_dir parameter to avfilter_draw_slice().
1564
1565 2009-11-26 - 4cc3f6a - lavfi 1.11.0 - AVFilter
1566   Remove the next field from AVFilter, this is not anymore required.
1567
1568 2009-11-25 - 1433c4a - lavfi 1.10.0 - avfilter_next()
1569   Introduce the avfilter_next() function.
1570
1571 2009-11-25 - 86a60fa - lavfi 1.9.0 - avfilter_register()
1572   Change the signature of avfilter_register() to make it return an
1573   int. This is required since now the registration operation may fail.
1574
1575 2009-11-25 - 74a0059 - lavu 50.5.0 - pixdesc.h API
1576   Make the pixdesc.h API public.
1577
1578 2009-10-27 - 243110f - lavfi 1.5.0 - AVFilter.next
1579   Add a next field to AVFilter, this is used for simplifying the
1580   registration and management of the registered filters.
1581
1582 2009-10-23 - cccd292 - lavfi 1.4.1 - AVFilter.description
1583   Add a description field to AVFilter.
1584
1585 2009-10-19 - 6b5dc05 - lavfi 1.3.0 - avfilter_make_format_list()
1586   Change the interface of avfilter_make_format_list() from
1587   avfilter_make_format_list(int n, ...) to
1588   avfilter_make_format_list(enum PixelFormat *pix_fmts).
1589
1590 2009-10-18 - 0eb4ff9 - lavfi 1.0.0 - avfilter_get_video_buffer()
1591   Make avfilter_get_video_buffer() recursive and add the w and h
1592   parameters to it.
1593
1594 2009-10-07 - 46c40e4 - lavfi 0.5.1 - AVFilterPic
1595   Add w and h fields to AVFilterPic.
1596
1597 2009-06-22 - 92400be - lavf 52.34.1 - AVFormatContext.packet_size
1598   This is now an unsigned int instead of a signed int.
1599
1600 2009-06-19 - a4276ba - lavc 52.32.0 - AVSubtitle.pts
1601   Add a pts field to AVSubtitle which gives the subtitle packet pts
1602   in AV_TIME_BASE. Some subtitle de-/encoders (e.g. XSUB) will
1603   not work right without this.
1604
1605 2009-06-03 - 8f3f2e0 - lavc 52.30.2 - AV_PKT_FLAG_KEY
1606   PKT_FLAG_KEY has been deprecated and will be dropped at the next
1607   major version. Use AV_PKT_FLAG_KEY instead.
1608
1609 2009-06-01 - f988ce6 - lavc 52.30.0 - av_lockmgr_register()
1610   av_lockmgr_register() can be used to register a callback function
1611   that lavc (and in the future, libraries that depend on lavc) can use
1612   to implement mutexes. The application should provide a callback function
1613   that implements the AV_LOCK_* operations described in avcodec.h.
1614   When the lock manager is registered, FFmpeg is guaranteed to behave
1615   correctly in a multi-threaded application.
1616
1617 2009-04-30 - ce1d9c8 - lavc 52.28.0 - av_free_packet()
1618   av_free_packet() is no longer an inline function. It is now exported.
1619
1620 2009-04-11 - 80d403f - lavc 52.25.0 - deprecate av_destruct_packet_nofree()
1621   Please use NULL instead. This has been supported since r16506
1622   (lavf > 52.23.1, lavc > 52.10.0).
1623
1624 2009-04-07 - 7a00bba - lavc 52.23.0 - avcodec_decode_video/audio/subtitle
1625   The old decoding functions are deprecated, all new code should use the
1626   new functions avcodec_decode_video2(), avcodec_decode_audio3() and
1627   avcodec_decode_subtitle2(). These new functions take an AVPacket *pkt
1628   argument instead of a const uint8_t *buf / int buf_size pair.
1629
1630 2009-04-03 - 7b09db3 - lavu 50.3.0 - av_fifo_space()
1631   Introduce the av_fifo_space() function.
1632
1633 2009-04-02 - fabd246 - lavc 52.23.0 - AVPacket
1634   Move AVPacket declaration from libavformat/avformat.h to
1635   libavcodec/avcodec.h.
1636
1637 2009-03-22 - 6e08ca9 - lavu 50.2.0 - RGB32 pixel formats
1638   Convert the pixel formats PIX_FMT_ARGB, PIX_FMT_RGBA, PIX_FMT_ABGR,
1639   PIX_FMT_BGRA, which were defined as macros, into enum PixelFormat values.
1640   Conversely PIX_FMT_RGB32, PIX_FMT_RGB32_1, PIX_FMT_BGR32 and
1641   PIX_FMT_BGR32_1 are now macros.
1642   avcodec_get_pix_fmt() now recognizes the "rgb32" and "bgr32" aliases.
1643   Re-sort the enum PixelFormat list accordingly.
1644   This change breaks API/ABI backward compatibility.
1645
1646 2009-03-22 - f82674e - lavu 50.1.0 - PIX_FMT_RGB5X5 endian variants
1647   Add the enum PixelFormat values:
1648   PIX_FMT_RGB565BE, PIX_FMT_RGB565LE, PIX_FMT_RGB555BE, PIX_FMT_RGB555LE,
1649   PIX_FMT_BGR565BE, PIX_FMT_BGR565LE, PIX_FMT_BGR555BE, PIX_FMT_BGR555LE.
1650
1651 2009-03-21 - ee6624e - lavu 50.0.0  - av_random*
1652   The Mersenne Twister PRNG implemented through the av_random* functions
1653   was removed. Use the lagged Fibonacci PRNG through the av_lfg* functions
1654   instead.
1655
1656 2009-03-08 - 41dd680 - lavu 50.0.0  - AVFifoBuffer
1657   av_fifo_init, av_fifo_read, av_fifo_write and av_fifo_realloc were dropped
1658   and replaced by av_fifo_alloc, av_fifo_generic_read, av_fifo_generic_write
1659   and av_fifo_realloc2.
1660   In addition, the order of the function arguments of av_fifo_generic_read
1661   was changed to match av_fifo_generic_write.
1662   The AVFifoBuffer/struct AVFifoBuffer may only be used in an opaque way by
1663   applications, they may not use sizeof() or directly access members.
1664
1665 2009-03-01 - ec26457 - lavf 52.31.0 - Generic metadata API
1666   Introduce a new metadata API (see av_metadata_get() and friends).
1667   The old API is now deprecated and should not be used anymore. This especially
1668   includes the following structure fields:
1669     - AVFormatContext.title
1670     - AVFormatContext.author
1671     - AVFormatContext.copyright
1672     - AVFormatContext.comment
1673     - AVFormatContext.album
1674     - AVFormatContext.year
1675     - AVFormatContext.track
1676     - AVFormatContext.genre
1677     - AVStream.language
1678     - AVStream.filename
1679     - AVProgram.provider_name
1680     - AVProgram.name
1681     - AVChapter.title