]> git.sesse.net Git - ffmpeg/blob - doc/APIchanges
Add replaygain side data type and code for parsing replaygain tags.
[ffmpeg] / 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.
3
4 The last version increases were:
5 libavcodec:    2013-03-xx
6 libavdevice:   2013-03-xx
7 libavfilter:   2013-12-xx
8 libavformat:   2013-03-xx
9 libavresample: 2012-10-05
10 libswscale:    2011-06-20
11 libavutil:     2013-12-xx
12
13
14 API changes, most recent first:
15
16 2014-02-xx - xxxxxxx - lavu 53.07.0 - frame.h, replaygain.h
17   Add AV_FRAME_DATA_REPLAYGAIN for exporting replaygain tags.
18   Add a new header replaygain.h with the AVReplayGain struct.
19
20 2014-02-xx - xxxxxxx - lavc 55.36.0 - avcodec.h
21   Add AV_PKT_DATA_REPLAYGAIN for exporting replaygain tags.
22
23 2014-02-xx - xxxxxxx - lavf 55.13.0 - avformat.h
24   Add AVStream.side_data and AVStream.nb_side_data for exporting stream-global
25   side data (e.g. replaygain tags, video rotation)
26
27 2014-02-xx - xxxxxxx - lavc 55.35.0 - avcodec.h
28   Give the name AVPacketSideData to the previously anonymous struct used for
29   AVPacket.side_data.
30
31 2014-xx-xx - xxxxxxx - lavu 53.06.0 - pixfmt.h
32   Add RGBA64 pixel format and variants.
33
34 2014-xx-xx - xxxxxxx - lavu 53.05.0 - frame.h
35   Add av_frame_copy() for copying the frame data.
36
37 2014-02-xx - xxxxxxx - lavr 1.2.0 - avresample.h
38   Add avresample_is_open() for checking whether a resample context is open.
39
40 2014-xx-xx - xxxxxxx - lavu 53.04.0  - opt.h
41   Add AV_OPT_FLAG_EXPORT and AV_OPT_FLAG_READONLY to mark options meant (only)
42   for reading.
43
44 2014-xx-xx - xxxxxxx - lavu 53.03.01 - opt.h
45   Deprecate unused AV_OPT_FLAG_METADATA.
46
47 2014-02-xx - xxxxxxx - lavu 53.3.0 - frame.h
48   Add AV_FRAME_DATA_DOWNMIX_INFO value to the AVFrameSideDataType enum and
49   downmix_info.h API, which identify downmix-related metadata.
50
51 2014-02-04 - d9ae103 - lavf 55.11.0 - avformat.h
52   Add AVFormatContext.max_interleave_delta for controlling amount of buffering
53   when interleaving.
54
55 2014-01-20 - 93c553c - lavc 55.32.1 - avcodec.h
56   Edges are not required anymore on video buffers allocated by get_buffer2()
57   (i.e. as if the CODEC_FLAG_EMU_EDGE flag was always on). Deprecate
58   CODEC_FLAG_EMU_EDGE and avcodec_get_edge_width().
59
60 2014-01-05 - 5b4797a - lavu 53.2.0 - frame.h
61   Add AV_FRAME_DATA_MATRIXENCODING value to the AVFrameSideDataType enum, which
62   identifies AVMatrixEncoding data.
63
64 2014-01-05 - 5c437fb - lavu 53.1.0 - channel_layout.h
65   Add values for various Dolby flags to the AVMatrixEncoding enum.
66
67 2013-12-20 - 2a41826 - lavc 55.30.0 - avcodec.h
68   Add HEVC profiles
69
70 2013-12-11 - b9fb59d,9431356,d7b3ee9 - lavc 55.28.1 - avcodec.h
71   av_frame_alloc(), av_frame_unref() and av_frame_free() now can and should be
72   used instead of avcodec_alloc_frame(), avcodec_get_frame_defaults() and
73   avcodec_free_frame() respectively. The latter three functions are deprecated.
74
75 2013-12-09 - 7e244c6- - lavu 52.20.0 - frame.h
76   Add AV_FRAME_DATA_STEREO3D value to the AVFrameSideDataType enum and
77   stereo3d.h API, that identify codec-independent stereo3d information.
78
79 2013-11-26 - 1eaac1d- - lavu 52.19.0 - frame.h
80   Add AV_FRAME_DATA_A53_CC value to the AVFrameSideDataType enum, which
81   identifies ATSC A53 Part 4 Closed Captions data.
82
83 2013-11-14 - cce3e0a - lavu 52.18.0 - mem.h
84   Move av_fast_malloc() and av_fast_realloc() for libavcodec to libavutil.
85
86 2013-11-14 - 8941971 - lavc 55.27.0 - avcodec.h
87   Deprecate AVCodecContext.error_rate, it is replaced by the 'error_rate'
88   private option of the mpegvideo encoder family.
89
90 2013-11-14 - 728c465 - lavc 55.26.0 - vdpau.h
91   Add av_vdpau_get_profile().
92   Add av_vdpau_alloc_context(). This function must from now on be
93   used for allocating AVVDPAUContext.
94
95 2013-11-04 - cd8f772 - lavc 55.25.0 - avcodec.h
96   Add ITU-R BT.2020 and other not yet included values to color primaries,
97   transfer characteristics and colorspaces.
98
99 2013-10-31 - 28096e0 - lavu 52.17.0 - frame.h
100   Add AVFrame.flags and AV_FRAME_FLAG_CORRUPT.
101
102 2013-09-28 - 0767bfd - lavfi 3.11.0 - avfilter.h
103   Add AVFilterGraph.execute and AVFilterGraph.opaque for custom slice threading
104   implementations.
105
106 2013-09-21 - e208e6d - lavu 52.16.0 - pixfmt.h
107   Add interleaved 4:2:2 8/10-bit formats AV_PIX_FMT_NV16 and
108   AV_PIX_FMT_NV20.
109
110 2013-09-16 - 3feb3d6 - lavu 52.15.0 - mem.h
111   Add av_reallocp.
112
113 2013-08-10 - 5a9a9d4 - lavc 55.16.0 - avcodec.h
114   Extend AVPacket API with av_packet_unref, av_packet_ref,
115   av_packet_move_ref, av_packet_copy_props, av_packet_free_side_data.
116
117 2013-08-05 - f824535 - lavc 55.13.0 - avcodec.h
118   Deprecate the bitstream-related members from struct AVVDPAUContext.
119   The bistream buffers no longer need to be explicitly freed.
120
121 2013-08-05 - 549294f - lavc 55.12.0 - avcodec.h
122   Deprecate the CODEC_CAP_HWACCEL_VDPAU codec capability. Use CODEC_CAP_HWACCEL
123   and select the AV_PIX_FMT_VDPAU format with get_format() instead.
124
125 2013-08-05 - a0ad5d0 - lavu 52.14.0 - pixfmt.h
126   Deprecate AV_PIX_FMT_VDPAU_*. Use AV_PIX_FMT_VDPAU instead.
127
128 2013-08-02 - a8b1927 - lavc 55.11.0 - avcodec.h
129   Add output_picture_number to AVCodecParserContext.
130
131 2013-06-24 - 95d5246 - lavc 55.10.0 - avcodec.h
132   Add MPEG-2 AAC profiles
133
134 2013-06-04 - fc962d4 - lavu 52.13.0 - mem.h
135   Add av_realloc_array and av_reallocp_array
136
137 2013-05-24 - 129bb23 - lavfi 3.10.0 - avfilter.h
138   Add support for slice multithreading to lavfi. Filters supporting threading
139   are marked with AVFILTER_FLAG_SLICE_THREADS.
140   New fields AVFilterContext.thread_type, AVFilterGraph.thread_type and
141   AVFilterGraph.nb_threads (accessible directly or through AVOptions) may be
142   used to configure multithreading.
143
144 2013-05-24 - 2a6eaea - lavu 52.12.0 - cpu.h
145   Add av_cpu_count() function for getting the number of logical CPUs.
146
147 2013-05-24 - b493847 - lavc 55.7.0 - avcodec.h
148   Add picture_structure to AVCodecParserContext.
149
150 2013-05-15 - e6c4ac7 - lavu 52.11.0 - pixdesc.h
151   Replace PIX_FMT_* flags with AV_PIX_FMT_FLAG_*.
152
153 2013-04-03 - 507b1e4 - lavc 55.4.0 - avcodec.h
154   Add field_order to AVCodecParserContext.
155
156 2013-04-19 - 5e83d9a - lavc 55.2.0 - avcodec.h
157   Add CODEC_FLAG_UNALIGNED to allow decoders to produce unaligned output.
158
159 2013-04-11 - lavfi 3.8.0
160   38f0c07 - Move all content from avfiltergraph.h to avfilter.h. Deprecate
161             avfilterhraph.h, user applications should include just avfilter.h
162   bc1a985 - Add avfilter_graph_alloc_filter(), deprecate avfilter_open() and
163             avfilter_graph_add_filter().
164   1113672 - Add AVFilterContext.graph pointing to the AVFilterGraph that contains the
165             filter.
166   48a5ada - Add avfilter_init_str(), deprecate avfilter_init_filter().
167   1ba95a9 - Add avfilter_init_dict().
168   7cdd737 - Add AVFilter.flags field and AVFILTER_FLAG_DYNAMIC_{INPUTS,OUTPUTS} flags.
169   7e8fe4b - Add avfilter_pad_count() for counting filter inputs/outputs.
170   fa2a34c - Add avfilter_next(), deprecate av_filter_next().
171             Deprecate avfilter_uninit().
172
173 2013-04-09 - lavfi 3.7.0 - avfilter.h
174   b439c99 - Add AVFilter.priv_class for exporting filter options through the
175             AVOptions API in the similar way private options work in lavc and lavf.
176   8114c10 - Add avfilter_get_class().
177   Switch all filters to use AVOptions.
178
179 2013-03-19 - 2c328a9 - lavu 52.9.0 - pixdesc.h
180   Add av_pix_fmt_count_planes() function for counting planes in a pixel format.
181
182 2013-03-16 - 42c7c61 - lavfi 3.6.0
183   Add AVFilterGraph.nb_filters, deprecate AVFilterGraph.filter_count.
184
185 2013-03-08 - Reference counted buffers - lavu 52.8.0, lavc 55.0.0, lavf 55.0.0,
186 lavd 54.0.0, lavfi 3.5.0
187   8e401db, 1cec062 - add a new API for reference counted buffers and buffer
188                      pools (new header libavutil/buffer.h).
189   1afddbe - add AVPacket.buf to allow reference counting for the AVPacket data.
190             Add av_packet_from_data() function for constructing packets from
191             av_malloc()ed data.
192   7ecc2d4 - move AVFrame from lavc to lavu (new header libavutil/frame.h), add
193             AVFrame.buf/extended_buf to allow reference counting for the AVFrame
194             data. Add new API for working with reference-counted AVFrames.
195   759001c - add the refcounted_frames field to AVCodecContext to make audio and
196             video decoders return reference-counted frames. Add get_buffer2()
197             callback to AVCodecContext which allocates reference-counted frames.
198             Add avcodec_default_get_buffer2() as the default get_buffer2()
199             implementation.
200             Deprecate AVCodecContext.get_buffer() / release_buffer() /
201             reget_buffer(), avcodec_default_get_buffer(),
202             avcodec_default_reget_buffer(), avcodec_default_release_buffer().
203             Remove avcodec_default_free_buffers(), which should not have ever
204             been called from outside of lavc.
205             Deprecate the following AVFrame fields:
206                 * base -- is now stored in AVBufferRef
207                 * reference, type, buffer_hints -- are unnecessary in the new API
208                 * hwaccel_picture_private, owner, thread_opaque -- should not
209                   have been acessed from outside of lavc
210                 * qscale_table, qstride, qscale_type, mbskip_table, motion_val,
211                   mb_type, dct_coeff, ref_index -- mpegvideo-specific tables,
212                   which are not exported anymore.
213   7e35037 - switch libavfilter to use AVFrame instead of AVFilterBufferRef. Add
214             av_buffersrc_add_frame(), deprecate av_buffersrc_buffer().
215             Add av_buffersink_get_frame() and av_buffersink_get_samples(),
216             deprecate av_buffersink_read() and av_buffersink_read_samples().
217             Deprecate AVFilterBufferRef and all functions for working with it.
218
219 2013-03-17 - 12c5c1d - lavu 52.8.0 - avstring.h
220   Add av_isdigit, av_isgraph, av_isspace, av_isxdigit.
221
222 2013-02-23 - 9f12235 - lavfi 3.4.0 - avfiltergraph.h
223   Add resample_lavr_opts to AVFilterGraph for setting libavresample options
224   for auto-inserted resample filters.
225
226 2013-01-25 - 38c1466 - lavu 52.7.0 - dict.h
227   Add av_dict_parse_string() to set multiple key/value pairs at once from a
228   string.
229
230 2013-01-25 - b85a5e8 - lavu 52.6.0 - avstring.h
231   Add av_strnstr()
232
233 2013-01-15 - 8ee288d - lavu 52.5.0 - hmac.h
234   Add AVHMAC.
235
236 2013-01-13 - 44e065d - lavc 54.36.0 - vdpau.h
237   Add AVVDPAUContext struct for VDPAU hardware-accelerated decoding.
238
239 2013-01-12 - 169fb94 - lavu 52.4.0 - pixdesc.h
240   Add AV_PIX_FMT_VDPAU flag.
241
242 2013-01-07 - 074a00d - lavr 1.1.0
243   Add avresample_set_channel_mapping() for input channel reordering,
244   duplication, and silencing.
245
246 ------------------------------8<-------------------------------------
247                    9 branch was cut here
248 ----------------------------->8--------------------------------------
249
250 2012-12-29 - d8fd06c - lavu 52.3.0 - avstring.h
251   Add av_basename() and av_dirname().
252
253 2012-11-11 - 5980f5d - lavu 52.2.0 - audioconvert.h
254   Rename audioconvert.h to channel_layout.h. audioconvert.h is now deprecated.
255
256 2012-11-05 - dfde8a3 - lavu 52.1.0 - intmath.h
257   Add av_ctz() for trailing zero bit count
258
259 2012-10-21 - a893655 - lavu 51.45.0 - error.h
260   Add AVERROR_EXPERIMENTAL
261
262 2012-10-12 - d2fcb35 - lavu 51.44.0 - pixdesc.h
263   Add functions for accessing pixel format descriptors.
264   Accessing the av_pix_fmt_descriptors array directly is now
265   deprecated.
266
267 2012-10-11 - 9a92aea - lavu 51.43.0 - aes.h, md5.h, sha.h, tree.h
268   Add functions for allocating the opaque contexts for the algorithms,
269   deprecate the context size variables.
270
271 2012-10-10 - b522000 - lavf 54.18.0 - avio.h
272   Add avio_closep to complement avio_close.
273
274 2012-10-08 - 78071a1 - lavu 51.42.0 - pixfmt.h
275   Rename PixelFormat to AVPixelFormat and all PIX_FMT_* to AV_PIX_FMT_*.
276   To provide backwards compatibility, PixelFormat is now #defined as
277   AVPixelFormat.
278   Note that this can break user code that includes pixfmt.h and uses the
279   'PixelFormat' identifier. Such code should either #undef PixelFormat
280   or stop using the PixelFormat name.
281
282 2012-10-05 - e7ba5b1 - lavr 1.0.0 - avresample.h
283   Data planes parameters to avresample_convert() and
284   avresample_read() are now uint8_t** instead of void**.
285   Libavresample is now stable.
286
287 2012-09-24 - a42aada - lavc 54.28.0 - avcodec.h
288   Add avcodec_free_frame(). This function must now
289   be used for freeing an AVFrame.
290
291 2012-09-12 - 8919fee - lavu 51.41.0 - audioconvert.h
292   Added AV_CH_LOW_FREQUENCY_2 channel mask value.
293
294 2012-09-04 - 686a329 - lavu 51.40.0 - opt.h
295   Reordered the fields in default_val in AVOption, changed which
296   default_val field is used for which AVOptionType.
297
298 2012-08-30 - a231832 - lavc 54.26.1 - avcodec.h
299   Add codec descriptor properties AV_CODEC_PROP_LOSSY and
300   AV_CODEC_PROP_LOSSLESS.
301
302 2012-08-18 - lavc 54.26 - avcodec.h
303   Add codec descriptors for accessing codec properties without having
304   to refer to a specific decoder or encoder.
305
306   c223d79 - Add an AVCodecDescriptor struct and functions
307             avcodec_descriptor_get() and avcodec_descriptor_next().
308   51efed1 - Add AVCodecDescriptor.props and AV_CODEC_PROP_INTRA_ONLY.
309   91e59fe - Add avcodec_descriptor_get_by_name().
310
311
312 2012-08-08 - 1d9c2dc - lavu 51.39 - avutil.h
313   Don't implicitly include libavutil/common.h in avutil.h
314
315 2012-08-08 - 987170c - lavu 51.38 - dict.h
316   Add av_dict_count().
317
318 2012-08-07 - 104e10f - lavc 54.25 - avcodec.h
319   Rename CodecID to AVCodecID and all CODEC_ID_* to AV_CODEC_ID_*.
320   To provide backwards compatibility, CodecID is now #defined as AVCodecID.
321   Note that this can break user code that includes avcodec.h and uses the
322   'CodecID' identifier. Such code should either #undef CodecID or stop using the
323   CodecID name.
324
325 2012-08-03 - 239fdf1 - lavu 51.37.1 - cpu.h
326                        lsws 2.1.1   - swscale.h
327   Rename AV_CPU_FLAG_MMX2  ---> AV_CPU_FLAG_MMXEXT.
328   Rename SWS_CPU_CAPS_MMX2 ---> SWS_CPU_CAPS_MMXEXT.
329
330 2012-07-29 - 681ed00 - lavf 54.13.0 - avformat.h
331   Add AVFMT_FLAG_NOBUFFER for low latency use cases.
332
333 2012-07-20 - b70d89a - lavfi 3.0.0 - avfilter.h
334   Add avfilter_unref_bufferp().
335
336 2012-07-10 - 5fade8a - lavu 51.37.0
337   Add av_malloc_array() and av_mallocz_array()
338
339 2012-06-22 - d3d3a32 - lavu 51.34.0
340   Add av_usleep()
341
342 2012-06-20 - ae0a301 - lavu 51.33.0
343   Move av_gettime() to libavutil, add libavutil/time.h
344
345 2012-06-09 - 3971be0 - lavr 0.0.3
346   Add a parameter to avresample_build_matrix() for Dolby/DPLII downmixing.
347
348 2012-06-12 - 9baeff9 - lavfi 2.23.0 - avfilter.h
349   Add AVFilterContext.nb_inputs/outputs. Deprecate
350   AVFilterContext.input/output_count.
351
352 2012-06-12 - 84b9fbe - lavfi 2.22.0 - avfilter.h
353   Add avfilter_pad_get_type() and avfilter_pad_get_name(). Those
354   should now be used instead of accessing AVFilterPad members
355   directly.
356
357 2012-06-12 - b0f0dfc - lavu 51.32.0 - audioconvert.h
358   Add av_get_channel_layout_channel_index(), av_get_channel_name()
359   and av_channel_layout_extract_channel().
360
361 2012-05-25 - 154486f - lavu 51.31.0 - opt.h
362   Add av_opt_set_bin()
363
364 2012-05-26 - e9cef89 - lavf 54.3.0
365   Add AVFMT_TS_NONSTRICT format flag to indicate that a muxer supports
366   non-increasing monotone timestamps.
367
368 2012-05-15 - lavfi 2.17.0
369   Add support for audio filters
370   ac71230/a2cd9be - add video/audio buffer sink in a new installed
371                     header buffersink.h
372   720c6b7 - add av_buffersrc_write_frame(), deprecate
373             av_vsrc_buffer_add_frame()
374   ab16504 - add avfilter_copy_buf_props()
375   9453c9e - add extended_data to AVFilterBuffer
376   1b8c927 - add avfilter_get_audio_buffer_ref_from_arrays()
377
378 2012-05-09 - lavu 51.30.0 - samplefmt.h
379   142e740 - add av_samples_copy()
380   6d7f617 - add av_samples_set_silence()
381
382 2012-05-09 - a5117a2 - lavc 54.13.1
383   For audio formats with fixed frame size, the last frame
384   no longer needs to be padded with silence, libavcodec
385   will handle this internally (effectively all encoders
386   behave as if they had CODEC_CAP_SMALL_LAST_FRAME set).
387
388 2012-05-07 - 828bd08 - lavc 54.13.0 - avcodec.h
389   Add sample_rate and channel_layout fields to AVFrame.
390
391 2012-05-01 - 4010d72 - lavr 0.0.1
392   Change AV_MIX_COEFF_TYPE_Q6 to AV_MIX_COEFF_TYPE_Q8.
393
394 2012-04-25 - 3527a73 - lavu 51.29.0 - cpu.h
395   Add av_parse_cpu_flags()
396
397 2012-04-24 - c8af852 - lavr 0.0.0
398   Add libavresample audio conversion library
399
400 2012-04-20 - 0c0d1bc - lavu 51.28.0 - audio_fifo.h
401   Add audio FIFO functions:
402     av_audio_fifo_free()
403     av_audio_fifo_alloc()
404     av_audio_fifo_realloc()
405     av_audio_fifo_write()
406     av_audio_fifo_read()
407     av_audio_fifo_drain()
408     av_audio_fifo_reset()
409     av_audio_fifo_size()
410     av_audio_fifo_space()
411
412 2012-04-14 - lavfi 2.16.0 - avfiltergraph.h
413   d7bcc71 Add avfilter_graph_parse2().
414   91d3cbe Add avfilter_inout_alloc() and avfilter_inout_free().
415
416 2012-04-08 - 4d693b0 - lavu 51.27.0 - samplefmt.h
417   Add av_get_packed_sample_fmt() and av_get_planar_sample_fmt()
418
419 2012-04-05 - 5cc51a5 - lavu 51.26.0 - audioconvert.h
420   Add av_get_default_channel_layout()
421
422 2012-03-20 - 3c90cc2 - lavfo 54.2.0
423   Deprecate av_read_packet(), use av_read_frame() with
424   AVFMT_FLAG_NOPARSE | AVFMT_FLAG_NOFILLIN in AVFormatContext.flags
425
426 2012-03-06 - 4d851f8 - lavu 51.25.0 - cpu.h
427   Add av_set_cpu_flags_mask().
428
429 2012-03-05 - lavc 54.8.0
430   6699d07 Add av_get_exact_bits_per_sample()
431   9524cf7 Add av_get_audio_frame_duration()
432
433 2012-03-04 - 44fe77b - lavc 54.7.0 - avcodec.h
434   Add av_codec_is_encoder/decoder().
435
436 2012-03-01 - 442c132 - lavc 54.3.0 - avcodec.h
437   Add av_packet_shrink_side_data.
438
439 2012-02-29 - dd2a4bc - lavf 54.2.0 - avformat.h
440   Add AVStream.attached_pic and AV_DISPOSITION_ATTACHED_PIC,
441   used for dealing with attached pictures/cover art.
442
443 2012-02-25 - c9bca80 - lavu 51.24.0 - error.h
444   Add AVERROR_UNKNOWN
445   NOTE: this was backported to 0.8
446
447 2012-02-20 - e9cda85 - lavc 54.2.0
448   Add duration field to AVCodecParserContext
449
450 2012-02-20 - 0b42a93 - lavu 51.23.1 - mathematics.h
451   Add av_rescale_q_rnd()
452
453 2012-02-08 - 38d5533 - lavu 51.22.1 - pixdesc.h
454   Add PIX_FMT_PSEUDOPAL flag.
455
456 2012-02-08 - 52f82a1 - lavc 54.01.0
457   Add avcodec_encode_video2() and deprecate avcodec_encode_video().
458
459 2012-02-01 - 316fc74 - lavc 54.01.0
460   Add av_fast_padded_malloc() as alternative for av_realloc() when aligned
461   memory is required. The buffer will always have FF_INPUT_BUFFER_PADDING_SIZE
462   zero-padded bytes at the end.
463
464 2012-01-31 - dd6d3b0 - lavf 54.01.0
465   Add avformat_get_riff_video_tags() and avformat_get_riff_audio_tags().
466   NOTE: this was backported to 0.8
467
468 2012-01-31 - af08d9a - lavc 54.01.0
469   Add avcodec_is_open() function.
470   NOTE: this was backported to 0.8
471
472 2012-01-30 - 8b93312 - lavu 51.22.0 - intfloat.h
473   Add a new installed header libavutil/intfloat.h with int/float punning
474   functions.
475   NOTE: this was backported to 0.8
476
477 2012-01-25 - lavf 53.22.0
478   f1caf01 Allow doing av_write_frame(ctx, NULL) for flushing possible
479           buffered data within a muxer. Added AVFMT_ALLOW_FLUSH for
480           muxers supporting it (av_write_frame makes sure it is called
481           only for muxers with this flag).
482
483 ------------------------------8<-------------------------------------
484                    0.8 branch was cut here
485 ----------------------------->8--------------------------------------
486
487 2012-01-15 - lavc 53.34.0
488   New audio encoding API:
489   b2c75b6 Add CODEC_CAP_VARIABLE_FRAME_SIZE capability for use by audio
490           encoders.
491   5ee5fa0 Add avcodec_fill_audio_frame() as a convenience function.
492   b2c75b6 Add avcodec_encode_audio2() and deprecate avcodec_encode_audio().
493           Add AVCodec.encode2().
494
495 2012-01-12 - 3167dc9 - lavfi 2.15.0
496   Add a new installed header -- libavfilter/version.h -- with version macros.
497
498 2011-01-03 - b73ec05 - lavu 51.21.0
499   Add av_popcount64
500
501 2011-12-25 - lavfi 2.14.0
502   e1d9dbf Add a new installed header - buffersrc.h
503   It contains a new function av_buffersrc_buffer() that allows passing
504   frames to the 'buffer' filter, but unlike av_vsrc_buffer_add_frame()
505   it allows for direct rendering.
506   1c9e340 Add avfilter_copy_frame_props() for copying properties from
507   AVFrame to AVFilterBufferRef.
508
509 2011-12-25 - lavc 53.31.0
510   Add the following new fields to AVFrame:
511     b58dbb5 sample_aspect_ratio
512     3a2ddf7 width, height
513     8a4a5f6 format
514
515 2011-12-18 - 8400b12 - lavc 53.28.1
516   Deprecate AVFrame.age. The field is unused.
517
518 2011-12-12 - 5266045 - lavf 53.17.0
519   Add avformat_close_input().
520   Deprecate av_close_input_file() and av_close_input_stream().
521
522 2011-12-02 - 0eea212 - lavc 53.25.0
523   Add nb_samples and extended_data fields to AVFrame.
524   Deprecate AVCODEC_MAX_AUDIO_FRAME_SIZE.
525   Deprecate avcodec_decode_audio3() in favor of avcodec_decode_audio4().
526   avcodec_decode_audio4() writes output samples to an AVFrame, which allows
527   audio decoders to use get_buffer().
528
529 2011-12-04 - 560f773 - lavc 53.24.0
530   Change AVFrame.data[4]/base[4]/linesize[4]/error[4] to [8] at next major bump.
531   Change AVPicture.data[4]/linesize[4] to [8] at next major bump.
532   Change AVCodecContext.error[4] to [8] at next major bump.
533   Add AV_NUM_DATA_POINTERS to simplify the bump transition.
534
535 2011-11-23 - bbb46f3 - lavu 51.18.0
536   Add av_samples_get_buffer_size(), av_samples_fill_arrays(), and
537   av_samples_alloc(), to samplefmt.h.
538
539 2011-11-23 - 8889cc4 - lavu 51.17.0
540   Add planar sample formats and av_sample_fmt_is_planar() to samplefmt.h.
541
542 2011-11-19 - f3a29b7 - lavc 53.21.0
543   Move some AVCodecContext fields to a new private struct, AVCodecInternal,
544   which is accessed from a new field, AVCodecContext.internal.
545   - fields moved:
546       AVCodecContext.internal_buffer       --> AVCodecInternal.buffer
547       AVCodecContext.internal_buffer_count --> AVCodecInternal.buffer_count
548       AVCodecContext.is_copy               --> AVCodecInternal.is_copy
549
550 2011-11-16 - 6270671 - lavu 51.16.0
551   Add av_timegm()
552
553 2011-11-13 - lavf 53.15.0
554   New interrupt callback API, allowing per-AVFormatContext/AVIOContext
555   interrupt callbacks.
556   6aa0b98 Add AVIOInterruptCB struct and the interrupt_callback field to
557           AVFormatContext.
558   1dee0ac Add avio_open2() with additional parameters. Those are
559           an interrupt callback and an options AVDictionary.
560           This will allow passing AVOptions to protocols after lavf
561           54.0.
562
563 2011-11-06 - ba04ecf - lavu 51.14.0
564   Add av_strcasecmp() and av_strncasecmp() to avstring.h.
565
566 2011-11-06 - 07b172f - lavu 51.13.0
567   Add av_toupper()/av_tolower()
568
569 2011-11-05 - b6d08f4 - lavf 53.13.0
570   Add avformat_network_init()/avformat_network_deinit()
571
572 2011-10-27 - 512557b - lavc 53.15.0
573   Remove avcodec_parse_frame.
574   Deprecate AVCodecContext.parse_only and CODEC_CAP_PARSE_ONLY.
575
576 2011-10-19 - 569129a - lavf 53.10.0
577   Add avformat_new_stream(). Deprecate av_new_stream().
578
579 2011-10-13 - b631fba - lavf 53.9.0
580   Add AVFMT_NO_BYTE_SEEK AVInputFormat flag.
581
582 2011-10-12 - lavu 51.12.0
583   AVOptions API rewrite.
584
585   - 145f741 FF_OPT_TYPE* renamed to AV_OPT_TYPE_*
586   - new setting/getting functions with slightly different semantics:
587         dac66da av_set_string3 -> av_opt_set
588                 av_set_double  -> av_opt_set_double
589                 av_set_q       -> av_opt_set_q
590                 av_set_int     -> av_opt_set_int
591
592         41d9d51 av_get_string  -> av_opt_get
593                 av_get_double  -> av_opt_get_double
594                 av_get_q       -> av_opt_get_q
595                 av_get_int     -> av_opt_get_int
596
597   - 8c5dcaa trivial rename av_next_option -> av_opt_next
598   - 641c7af new functions - av_opt_child_next, av_opt_child_class_next
599     and av_opt_find2()
600
601 2011-09-03 - fb4ca26 - lavc 53.10.0
602                        lavf 53.6.0
603                        lsws  2.1.0
604   Add {avcodec,avformat,sws}_get_class().
605
606 2011-09-03 - c11fb82 - lavu 51.10.0
607   Add AV_OPT_SEARCH_FAKE_OBJ flag for av_opt_find() function.
608
609 2011-08-26 - lavu 51.9.0
610   - f2011ed Add av_fifo_peek2(), deprecate av_fifo_peek().
611   - add41de..abc78a5 Do not include intfloat_readwrite.h,
612     mathematics.h, rational.h, pixfmt.h, or log.h from avutil.h.
613
614 2011-08-16 - 48f9e45 - lavf 53.4.0
615   Add avformat_query_codec().
616
617 2011-08-16 - bca06e7 - lavc 53.8.0
618   Add avcodec_get_type().
619
620 2011-08-06 - 2f63440 - lavf 53.4.0
621   Add error_recognition to AVFormatContext.
622
623 2011-08-02 - 9d39cbf - lavc 53.7.1
624   Add AV_PKT_FLAG_CORRUPT AVPacket flag.
625
626 2011-07-10 - a67c061 - lavf 53.3.0
627   Add avformat_find_stream_info(), deprecate av_find_stream_info().
628   NOTE: this was backported to 0.7
629
630 2011-07-10 - 0b950fe - lavc 53.6.0
631   Add avcodec_open2(), deprecate avcodec_open().
632   NOTE: this was backported to 0.7
633
634   Add avcodec_alloc_context3. Deprecate avcodec_alloc_context() and
635   avcodec_alloc_context2().
636
637 2011-06-23 - 67e9ae1 - lavu 51.8.0 - attributes.h
638   Add av_printf_format().
639
640 ------------------------------8<-------------------------------------
641                    0.7 branch was cut here
642 ----------------------------->8--------------------------------------
643
644 2011-06-16 - 05e84c9, 25de595 - lavf 53.2.0 - avformat.h
645   Add avformat_open_input and avformat_write_header().
646   Deprecate av_open_input_stream, av_open_input_file,
647   AVFormatParameters and av_write_header.
648
649 2011-06-16 - 7e83e1c, dc59ec5 - lavu 51.7.0 - opt.h
650   Add av_opt_set_dict() and av_opt_find().
651   Deprecate av_find_opt().
652   Add AV_DICT_APPEND flag.
653
654 2011-06-10 - cb7c11c - lavu 51.6.0 - opt.h
655   Add av_opt_flag_is_set().
656
657 2011-06-08 - d9f80ea - lavu 51.5.0 - AVMetadata
658   Move AVMetadata from lavf to lavu and rename it to
659   AVDictionary -- new installed header dict.h.
660   All av_metadata_* functions renamed to av_dict_*.
661
662 2011-06-07 - a6703fa - lavu 51.4.0 - av_get_bytes_per_sample()
663   Add av_get_bytes_per_sample() in libavutil/samplefmt.h.
664   Deprecate av_get_bits_per_sample_fmt().
665
666 2011-06-05 - b39b062 - lavu 51.3.0 - opt.h
667   Add av_opt_free convenience function.
668
669 2011-05-28 - 0420bd7 - lavu 51.2.0 - pixdesc.h
670   Add av_get_pix_fmt_name() in libavutil/pixdesc.h, and deprecate
671   avcodec_get_pix_fmt_name() in libavcodec/avcodec.h in its favor.
672
673 2011-05-25 - 30315a8 - lavf 53.1.0 - avformat.h
674   Add fps_probe_size to AVFormatContext.
675
676 2011-05-18 - 64150ff - lavc 53.4.0 - AVCodecContext.request_sample_fmt
677   Add request_sample_fmt field to AVCodecContext.
678
679 2011-05-10 - 188dea1 - lavc 53.3.0 - avcodec.h
680   Deprecate AVLPCType and the following fields in
681   AVCodecContext: lpc_coeff_precision, prediction_order_method,
682   min_partition_order, max_partition_order, lpc_type, lpc_passes.
683   Corresponding FLAC encoder options should be used instead.
684
685 2011-04-26 - bebe72f - lavu 51.1.0 - avutil.h
686   Add AVPictureType enum and av_get_picture_type_char(), deprecate
687   FF_*_TYPE defines and av_get_pict_type_char() defined in
688   libavcodec/avcodec.h.
689
690 2011-04-26 - 10d3940 - lavfi 2.3.0 - avfilter.h
691   Add pict_type and key_frame fields to AVFilterBufferRefVideo.
692
693 2011-04-26 - 7a11c82 - lavfi 2.2.0 - vsrc_buffer
694   Add sample_aspect_ratio fields to vsrc_buffer arguments
695
696 2011-04-21 - 94f7451 - lavc 53.1.0 - avcodec.h
697   Add CODEC_CAP_SLICE_THREADS for codecs supporting sliced threading.
698
699 2011-04-15 - lavc 52.120.0 - avcodec.h
700   AVPacket structure got additional members for passing side information:
701     4de339e introduce side information for AVPacket
702     2d8591c make containers pass palette change in AVPacket
703
704 2011-04-12 - lavf 52.107.0 - avio.h
705   Avio cleanup, part II - deprecate the entire URLContext API:
706     175389c add avio_check as a replacement for url_exist
707     ff1ec0c add avio_pause and avio_seek_time as replacements
708             for _av_url_read_fseek/fpause
709     cdc6a87 deprecate av_protocol_next(), avio_enum_protocols
710             should be used instead.
711     80c6e23 rename url_set_interrupt_cb->avio_set_interrupt_cb.
712     f87b1b3 rename open flags: URL_* -> AVIO_*
713     f8270bb add avio_enum_protocols.
714     5593f03 deprecate URLProtocol.
715     c486dad deprecate URLContext.
716     026e175 deprecate the typedef for URLInterruptCB
717     8e76a19 deprecate av_register_protocol2.
718     b840484 deprecate URL_PROTOCOL_FLAG_NESTED_SCHEME
719     1305d93 deprecate av_url_read_seek
720     fa104e1 deprecate av_url_read_pause
721     727c7aa deprecate url_get_filename().
722     5958df3 deprecate url_max_packet_size().
723     1869ea0 deprecate url_get_file_handle().
724     32a97d4 deprecate url_filesize().
725     e52a914 deprecate url_close().
726     58a48c6 deprecate url_seek().
727     925e908 deprecate url_write().
728     dce3756 deprecate url_read_complete().
729     bc371ac deprecate url_read().
730     0589da0 deprecate url_open().
731     62eaaea deprecate url_connect.
732     5652bb9 deprecate url_alloc.
733     333e894 deprecate url_open_protocol
734     e230705 deprecate url_poll and URLPollEntry
735
736 2011-04-10 - lavu  50.40.0 - pixfmt.h
737   Add PIX_FMT_BGR48LE and PIX_FMT_BGR48BE pixel formats
738
739 2011-04-08 - lavf 52.106.0 - avformat.h
740   Minor avformat.h cleanup:
741     a9bf9d8 deprecate av_guess_image2_codec
742     c3675df rename avf_sdp_create->av_sdp_create
743
744 2011-04-03 - lavf 52.105.0 - avio.h
745   Large-scale renaming/deprecating of AVIOContext-related functions:
746     724f6a0 deprecate url_fdopen
747     403ee83 deprecate url_open_dyn_packet_buf
748     6dc7d80 rename url_close_dyn_buf       -> avio_close_dyn_buf
749     b92c545 rename url_open_dyn_buf        -> avio_open_dyn_buf
750     8978fed introduce an AVIOContext.seekable field as a replacement for
751             AVIOContext.is_streamed and url_is_streamed()
752     b64030f deprecate get_checksum()
753     4c4427a deprecate init_checksum()
754     4ec153b deprecate udp_set_remote_url/get_local_port
755     933e90a deprecate av_url_read_fseek/fpause
756     8d9769a deprecate url_fileno
757     b7f2fdd rename put_flush_packet -> avio_flush
758     35f1023 deprecate url_close_buf
759     83fddae deprecate url_open_buf
760     d9d86e0 rename url_fprintf -> avio_printf
761     59f65d9 deprecate url_setbufsize
762     3e68b3b deprecate url_ferror
763     66e5b1d deprecate url_feof
764     e8bb2e2 deprecate url_fget_max_packet_size
765     76aa876 rename url_fsize -> avio_size
766     e519753 deprecate url_fgetc
767     655e45e deprecate url_fgets
768     a2704c9 rename url_ftell -> avio_tell
769     e16ead0 deprecate get_strz() in favor of avio_get_str
770     0300db8,2af07d3 rename url_fskip -> avio_skip
771     6b4aa5d rename url_fseek -> avio_seek
772     61840b4 deprecate put_tag
773     22a3212 rename url_fopen/fclose -> avio_open/close.
774     0ac8e2b deprecate put_nbyte
775     77eb550 rename put_byte          -> avio_w8
776                    put_[b/l]e<type>  -> avio_w[b/l]<type>
777                    put_buffer        -> avio_write
778     b7effd4 rename get_byte          -> avio_r8,
779                    get_[b/l]e<type>  -> avio_r[b/l]<type>
780                    get_buffer        -> avio_read
781     b3db9ce deprecate get_partial_buffer
782     8d9ac96 rename av_alloc_put_byte -> avio_alloc_context
783
784 2011-03-25 - 34b47d7 - lavc 52.115.0 - AVCodecContext.audio_service_type
785   Add audio_service_type field to AVCodecContext.
786
787 2011-03-02 - 863c471 - lavf  52.103.0 - av_pkt_dump2, av_pkt_dump_log2
788   Add new functions av_pkt_dump2, av_pkt_dump_log2 that uses the
789   source stream timebase for outputting timestamps. Deprecate
790   av_pkt_dump and av_pkt_dump_log.
791
792 2011-02-20 - e731b8d - lavf  52.102.0 - avio.h
793   * e731b8d - rename init_put_byte() to ffio_init_context(), deprecating the
794               original, and move it to a private header so it is no longer
795               part of our public API. Instead, use av_alloc_put_byte().
796   * ae628ec - rename ByteIOContext to AVIOContext.
797
798 2011-02-16 - 09d171b - lavf  52.101.0 - avformat.h
799                        lavu  52.39.0  - parseutils.h
800   * 610219a - Add av_ prefix to dump_format().
801   * f6c7375 - Replace parse_date() in lavf with av_parse_time() in lavu.
802   * ab0287f - Move find_info_tag from lavf to lavu and add av_prefix to it.
803
804 2011-02-15 - lavu 52.38.0 - merge libavcore
805   libavcore is merged back completely into libavutil
806
807 2011-02-10 - 55bad0c - lavc 52.113.0 - vbv_delay
808   Add vbv_delay field to AVCodecContext
809
810 2011-02-14 - 24a83bd - lavf 52.100.0 - AV_DISPOSITION_CLEAN_EFFECTS
811   Add AV_DISPOSITION_CLEAN_EFFECTS disposition flag.
812
813 2011-02-14 - 910b5b8 - lavfi 1.76.0 - AVFilterLink sample_aspect_ratio
814   Add sample_aspect_ratio field to AVFilterLink.
815
816 2011-02-10 - 12c14cd - lavf 52.99.0 - AVStream.disposition
817   Add AV_DISPOSITION_HEARING_IMPAIRED and AV_DISPOSITION_VISUAL_IMPAIRED.
818
819 2011-02-09 - 5592734 - lavc 52.112.0 - avcodec_thread_init()
820   Deprecate avcodec_thread_init()/avcodec_thread_free() use; instead
821   set thread_count before calling avcodec_open.
822
823 2011-02-09 - 778b08a - lavc 52.111.0 - threading API
824   Add CODEC_CAP_FRAME_THREADS with new restrictions on get_buffer()/
825   release_buffer()/draw_horiz_band() callbacks for appropriate codecs.
826   Add thread_type and active_thread_type fields to AVCodecContext.
827
828 2011-02-08 - 3940caa - lavf 52.98.0 - av_probe_input_buffer
829   Add av_probe_input_buffer() to avformat.h for probing format from a
830   ByteIOContext.
831
832 2011-02-06 - fe174fc - lavf 52.97.0 - avio.h
833   Add flag for non-blocking protocols: URL_FLAG_NONBLOCK
834
835 2011-02-04 - f124b08 - lavf 52.96.0 - avformat_free_context()
836   Add avformat_free_context() in avformat.h.
837
838 2011-02-03 - f5b82f4 - lavc 52.109.0 - add CODEC_ID_PRORES
839   Add CODEC_ID_PRORES to avcodec.h.
840
841 2011-02-03 - fe9a3fb - lavc 52.109.0 - H.264 profile defines
842   Add defines for H.264 * Constrained Baseline and Intra profiles
843
844 2011-02-02 - lavf 52.95.0
845   * 50196a9 - add a new installed header version.h.
846   * 4efd5cf, dccbd97, 93b78d1 - add several variants of public
847     avio_{put,get}_str* functions.  Deprecate corresponding semi-public
848     {put,get}_str*.
849
850 2011-02-02 - dfd2a00 - lavu 50.37.0 - log.h
851   Make av_dlog public.
852
853 2011-01-15 - a242ac3 - lavfi 1.74.0 - AVFilterBufferRefAudioProps
854   Rename AVFilterBufferRefAudioProps.samples_nb to nb_samples.
855
856 2011-01-14 - 7f88a5b - lavf 52.93.0 - av_metadata_copy()
857   Add av_metadata_copy() in avformat.h.
858
859 2011-01-07 - 81c623f - lavc 52.107.0 - deprecate reordered_opaque
860   Deprecate reordered_opaque in favor of pkt_pts/dts.
861
862 2011-01-07 - 1919fea - lavc 52.106.0 - pkt_dts
863   Add pkt_dts to AVFrame, this will in the future allow multithreading decoders
864   to not mess up dts.
865
866 2011-01-07 - 393cbb9 - lavc 52.105.0 - pkt_pts
867   Add pkt_pts to AVFrame.
868
869 2011-01-07 - 060ec0a - lavc 52.104.0 - av_get_profile_name()
870   Add av_get_profile_name to libavcodec/avcodec.h.
871
872 2010-12-27 - 0ccabee - lavfi 1.71.0 - AV_PERM_NEG_LINESIZES
873   Add AV_PERM_NEG_LINESIZES in avfilter.h.
874
875 2010-12-27 - 9128ae0 - lavf 52.91.0 - av_find_best_stream()
876   Add av_find_best_stream to libavformat/avformat.h.
877
878 2010-12-27 - 107a7e3 - lavf 52.90.0
879   Add AVFMT_NOSTREAMS flag for formats with no streams,
880   like e.g. text metadata.
881
882 2010-12-22 - 0328b9e - lavu 50.36.0 - file.h
883   Add functions av_file_map() and av_file_unmap() in file.h.
884
885 2010-12-19 - 0bc55f5 - lavu 50.35.0 - error.h
886   Add "not found" error codes:
887   AVERROR_DEMUXER_NOT_FOUND
888   AVERROR_MUXER_NOT_FOUND
889   AVERROR_DECODER_NOT_FOUND
890   AVERROR_ENCODER_NOT_FOUND
891   AVERROR_PROTOCOL_NOT_FOUND
892   AVERROR_FILTER_NOT_FOUND
893   AVERROR_BSF_NOT_FOUND
894   AVERROR_STREAM_NOT_FOUND
895
896 2010-12-09 - c61cdd0 - lavcore 0.16.0 - avcore.h
897   Move AV_NOPTS_VALUE, AV_TIME_BASE, AV_TIME_BASE_Q symbols from
898   avcodec.h to avcore.h.
899
900 2010-12-04 - 16cfc96 - lavc 52.98.0 - CODEC_CAP_NEG_LINESIZES
901   Add CODEC_CAP_NEG_LINESIZES codec capability flag in avcodec.h.
902
903 2010-12-04 - bb4afa1 - lavu 50.34.0 - av_get_pix_fmt_string()
904   Deprecate avcodec_pix_fmt_string() in favor of
905   pixdesc.h/av_get_pix_fmt_string().
906
907 2010-12-04 - 4da12e3 - lavcore 0.15.0 - av_image_alloc()
908   Add av_image_alloc() to libavcore/imgutils.h.
909
910 2010-12-02 - 037be76 - lavfi 1.67.0 - avfilter_graph_create_filter()
911   Add function avfilter_graph_create_filter() in avfiltergraph.h.
912
913 2010-11-25 - 4723bc2 - lavfi 1.65.0 - avfilter_get_video_buffer_ref_from_arrays()
914   Add function avfilter_get_video_buffer_ref_from_arrays() in
915   avfilter.h.
916
917 2010-11-21 - 176a615 - lavcore 0.14.0 - audioconvert.h
918   Add a public audio channel API in audioconvert.h, and deprecate the
919   corresponding functions in libavcodec:
920   avcodec_get_channel_name()
921   avcodec_get_channel_layout()
922   avcodec_get_channel_layout_string()
923   avcodec_channel_layout_num_channels()
924   and the CH_* macros defined in libavcodec/avcodec.h.
925
926 2010-11-21 - 6bfc268 - lavf 52.85.0 - avformat.h
927   Add av_append_packet().
928
929 2010-11-21 - a08d918 - lavc 52.97.0 - avcodec.h
930   Add av_grow_packet().
931
932 2010-11-17 - 0985e1a - lavcore 0.13.0 - parseutils.h
933   Add av_parse_color() declared in libavcore/parseutils.h.
934
935 2010-11-13 - cb2c971 - lavc 52.95.0 - AVCodecContext
936   Add AVCodecContext.subtitle_header and AVCodecContext.subtitle_header_size
937   fields.
938
939 2010-11-13 - 5aaea02 - lavfi 1.62.0 - avfiltergraph.h
940   Make avfiltergraph.h public.
941
942 2010-11-13 - 4fcbb2a - lavfi 1.61.0 - avfiltergraph.h
943   Remove declarations from avfiltergraph.h for the functions:
944   avfilter_graph_check_validity()
945   avfilter_graph_config_links()
946   avfilter_graph_config_formats()
947   which are now internal.
948   Use avfilter_graph_config() instead.
949
950 2010-11-08 - d2af720 - lavu 50.33.0 - eval.h
951   Deprecate functions:
952   av_parse_and_eval_expr(),
953   av_parse_expr(),
954   av_eval_expr(),
955   av_free_expr(),
956   in favor of the functions:
957   av_expr_parse_and_eval(),
958   av_expr_parse(),
959   av_expr_eval(),
960   av_expr_free().
961
962 2010-11-08 - 24de0ed - lavfi 1.59.0 - avfilter_free()
963   Rename avfilter_destroy() to avfilter_free().
964   This change breaks libavfilter API/ABI.
965
966 2010-11-07 - 1e80a0e - lavfi 1.58.0 - avfiltergraph.h
967   Remove graphparser.h header, move AVFilterInOut and
968   avfilter_graph_parse() declarations to libavfilter/avfiltergraph.h.
969
970 2010-11-07 - 7313132 - lavfi 1.57.0 - AVFilterInOut
971   Rename field AVFilterInOut.filter to AVFilterInOut.filter_ctx.
972   This change breaks libavfilter API.
973
974 2010-11-04 - 97dd1e4 - lavfi 1.56.0 - avfilter_graph_free()
975   Rename avfilter_graph_destroy() to avfilter_graph_free().
976   This change breaks libavfilter API/ABI.
977
978 2010-11-04 - e15aeea - lavfi 1.55.0 - avfilter_graph_alloc()
979   Add avfilter_graph_alloc() to libavfilter/avfiltergraph.h.
980
981 2010-11-02 - 6f84cd1 - lavcore 0.12.0 - av_get_bits_per_sample_fmt()
982   Add av_get_bits_per_sample_fmt() to libavcore/samplefmt.h and
983   deprecate av_get_bits_per_sample_format().
984
985 2010-11-02 - d63e456 - lavcore 0.11.0 - samplefmt.h
986   Add sample format functions in libavcore/samplefmt.h:
987   av_get_sample_fmt_name(),
988   av_get_sample_fmt(),
989   av_get_sample_fmt_string(),
990   and deprecate the corresponding libavcodec/audioconvert.h functions:
991   avcodec_get_sample_fmt_name(),
992   avcodec_get_sample_fmt(),
993   avcodec_sample_fmt_string().
994
995 2010-11-02 - 262d1c5 - lavcore 0.10.0 - samplefmt.h
996   Define enum AVSampleFormat in libavcore/samplefmt.h, deprecate enum
997   SampleFormat.
998
999 2010-10-16 - 2a24df9 - lavfi 1.52.0 - avfilter_graph_config()
1000   Add the function avfilter_graph_config() in avfiltergraph.h.
1001
1002 2010-10-15 - 03700d3 - lavf 52.83.0 - metadata API
1003   Change demuxers to export metadata in generic format and
1004   muxers to accept generic format. Deprecate the public
1005   conversion API.
1006
1007 2010-10-10 - 867ae7a - lavfi 1.49.0 - AVFilterLink.time_base
1008   Add time_base field to AVFilterLink.
1009
1010 2010-09-27 - c85eef4 - lavu 50.31.0 - av_set_options_string()
1011   Move av_set_options_string() from libavfilter/parseutils.h to
1012   libavutil/opt.h.
1013
1014 2010-09-27 - acc0490 - lavfi 1.47.0 - AVFilterLink
1015   Make the AVFilterLink fields srcpad and dstpad store the pointers to
1016   the source and destination pads, rather than their indexes.
1017
1018 2010-09-27 - 372e288 - lavu 50.30.0 - av_get_token()
1019   Move av_get_token() from libavfilter/parseutils.h to
1020   libavutil/avstring.h.
1021
1022 2010-09-26 - 635d4ae - lsws 0.12.0 - swscale.h
1023   Add the functions sws_alloc_context() and sws_init_context().
1024
1025 2010-09-26 - 6ed0404 - lavu 50.29.0 - opt.h
1026   Move libavcodec/opt.h to libavutil/opt.h.
1027
1028 2010-09-24 - 1c1c80f - lavu 50.28.0 - av_log_set_flags()
1029   Default of av_log() changed due to many problems to the old no repeat
1030   detection. Read the docs of AV_LOG_SKIP_REPEATED in log.h before
1031   enabling it for your app!.
1032
1033 2010-09-24 - f66eb58 - lavc 52.90.0 - av_opt_show2()
1034   Deprecate av_opt_show() in favor or av_opt_show2().
1035
1036 2010-09-14 - bc6f0af - lavu 50.27.0 - av_popcount()
1037   Add av_popcount() to libavutil/common.h.
1038
1039 2010-09-08 - c6c98d0 - lavu 50.26.0 - av_get_cpu_flags()
1040   Add av_get_cpu_flags().
1041
1042 2010-09-07 - 34017fd - lavcore 0.9.0 - av_image_copy()
1043   Add av_image_copy().
1044
1045 2010-09-07 - 9686abb - lavcore 0.8.0 - av_image_copy_plane()
1046   Add av_image_copy_plane().
1047
1048 2010-09-07 - 9b7269e - lavcore 0.7.0 - imgutils.h
1049   Adopt hierarchical scheme for the imgutils.h function names,
1050   deprecate the old names.
1051
1052 2010-09-04 - 7160bb7 - lavu 50.25.0 - AV_CPU_FLAG_*
1053   Deprecate the FF_MM_* flags defined in libavcodec/avcodec.h in favor
1054   of the AV_CPU_FLAG_* flags defined in libavutil/cpu.h.
1055
1056 2010-08-26 - 5da19b5 - lavc 52.87.0 - avcodec_get_channel_layout()
1057   Add avcodec_get_channel_layout() in audioconvert.h.
1058
1059 2010-08-20 - e344336 - lavcore 0.6.0 - av_fill_image_max_pixsteps()
1060   Rename av_fill_image_max_pixstep() to av_fill_image_max_pixsteps().
1061
1062 2010-08-18 - a6ddf8b - lavcore 0.5.0 - av_fill_image_max_pixstep()
1063   Add av_fill_image_max_pixstep() in imgutils.h.
1064
1065 2010-08-17 - 4f2d2e4 - lavu 50.24.0 - AV_NE()
1066   Add the AV_NE macro.
1067
1068 2010-08-17 - ad2c950 - lavfi 1.36.0 - audio framework
1069   Implement AVFilterBufferRefAudioProps struct for audio properties,
1070   get_audio_buffer(), filter_samples() functions and related changes.
1071
1072 2010-08-12 - 81c1eca - lavcore 0.4.0 - av_get_image_linesize()
1073   Add av_get_image_linesize() in imgutils.h.
1074
1075 2010-08-11 - c1db7bf - lavfi 1.34.0 - AVFilterBufferRef
1076   Resize data and linesize arrays in AVFilterBufferRef to 8.
1077
1078   This change breaks libavfilter API/ABI.
1079
1080 2010-08-11 - 9f08d80 - lavc 52.85.0 - av_picture_data_copy()
1081   Add av_picture_data_copy in avcodec.h.
1082
1083 2010-08-11 - 84c0386 - lavfi 1.33.0 - avfilter_open()
1084   Change avfilter_open() signature:
1085   AVFilterContext *avfilter_open(AVFilter *filter, const char *inst_name) ->
1086   int avfilter_open(AVFilterContext **filter_ctx, AVFilter *filter, const char *inst_name);
1087
1088   This change breaks libavfilter API/ABI.
1089
1090 2010-08-11 - cc80caf - lavfi 1.32.0 - AVFilterBufferRef
1091   Add a type field to AVFilterBufferRef, and move video specific
1092   properties to AVFilterBufferRefVideoProps.
1093
1094   This change breaks libavfilter API/ABI.
1095
1096 2010-08-07 - 5d4890d - lavfi 1.31.0 - AVFilterLink
1097   Rename AVFilterLink fields:
1098   AVFilterLink.srcpic    ->  AVFilterLink.src_buf
1099   AVFilterLink.cur_pic   ->  AVFilterLink.cur_buf
1100   AVFilterLink.outpic    ->  AVFilterLink.out_buf
1101
1102 2010-08-07 - 7fce481 - lavfi 1.30.0
1103   Rename functions and fields:
1104   avfilter_(un)ref_pic       -> avfilter_(un)ref_buffer
1105   avfilter_copy_picref_props -> avfilter_copy_buffer_ref_props
1106   AVFilterBufferRef.pic      -> AVFilterBufferRef.buffer
1107
1108 2010-08-07 - ecc8dad - lavfi 1.29.0 - AVFilterBufferRef
1109   Rename AVFilterPicRef to AVFilterBufferRef.
1110
1111 2010-08-07 - d54e094 - lavfi 1.28.0 - AVFilterBuffer
1112   Move format field from AVFilterBuffer to AVFilterPicRef.
1113
1114 2010-08-06 - bf176f5 - lavcore 0.3.0 - av_check_image_size()
1115   Deprecate avcodec_check_dimensions() in favor of the function
1116   av_check_image_size() defined in libavcore/imgutils.h.
1117
1118 2010-07-30 - 56b5e9d - lavfi 1.27.0 - AVFilterBuffer
1119   Increase size of the arrays AVFilterBuffer.data and
1120   AVFilterBuffer.linesize from 4 to 8.
1121
1122   This change breaks libavfilter ABI.
1123
1124 2010-07-29 - e7bd48a - lavcore 0.2.0 - imgutils.h
1125   Add functions av_fill_image_linesizes() and
1126   av_fill_image_pointers(), declared in libavcore/imgutils.h.
1127
1128 2010-07-27 - 126b638 - lavcore 0.1.0 - parseutils.h
1129   Deprecate av_parse_video_frame_size() and av_parse_video_frame_rate()
1130   defined in libavcodec in favor of the newly added functions
1131   av_parse_video_size() and av_parse_video_rate() declared in
1132   libavcore/parseutils.h.
1133
1134 2010-07-23 - 4485247 - lavu 50.23.0 - mathematics.h
1135   Add the M_PHI constant definition.
1136
1137 2010-07-22 - bdab614 - lavfi 1.26.0 - media format generalization
1138   Add a type field to AVFilterLink.
1139
1140   Change the field types:
1141   enum PixelFormat format   -> int format   in AVFilterBuffer
1142   enum PixelFormat *formats -> int *formats in AVFilterFormats
1143   enum PixelFormat *format  -> int format   in AVFilterLink
1144
1145   Change the function signatures:
1146   AVFilterFormats *avfilter_make_format_list(const enum PixelFormat *pix_fmts); ->
1147   AVFilterFormats *avfilter_make_format_list(const int *fmts);
1148
1149   int avfilter_add_colorspace(AVFilterFormats **avff, enum PixelFormat pix_fmt); ->
1150   int avfilter_add_format    (AVFilterFormats **avff, int fmt);
1151
1152   AVFilterFormats *avfilter_all_colorspaces(void); ->
1153   AVFilterFormats *avfilter_all_formats    (enum AVMediaType type);
1154
1155   This change breaks libavfilter API/ABI.
1156
1157 2010-07-21 - aac6ca6 - lavcore 0.0.0
1158   Add libavcore.
1159
1160 2010-07-17 - b5c582f - lavfi 1.25.0 - AVFilterBuffer
1161   Remove w and h fields from AVFilterBuffer.
1162
1163 2010-07-17 - f0d77b2 - lavfi 1.24.0 - AVFilterBuffer
1164   Rename AVFilterPic to AVFilterBuffer.
1165
1166 2010-07-17 - 57fe80f - lavf 52.74.0 - url_fskip()
1167   Make url_fskip() return an int error code instead of void.
1168
1169 2010-07-11 - 23940f1 - lavc 52.83.0
1170   Add AVCodecContext.lpc_type and AVCodecContext.lpc_passes fields.
1171   Add AVLPCType enum.
1172   Deprecate AVCodecContext.use_lpc.
1173
1174 2010-07-11 - e1d7c88 - lavc 52.82.0 - avsubtitle_free()
1175   Add a function for free the contents of a AVSubtitle generated by
1176   avcodec_decode_subtitle.
1177
1178 2010-07-11 - b91d08f - lavu 50.22.0 - bswap.h and intreadwrite.h
1179   Make the bswap.h and intreadwrite.h API public.
1180
1181 2010-07-08 - ce1cd1c - lavu 50.21.0 - pixdesc.h
1182   Rename read/write_line() to av_read/write_image_line().
1183
1184 2010-07-07 - 4d508e4 - lavfi 1.21.0 - avfilter_copy_picref_props()
1185   Add avfilter_copy_picref_props().
1186
1187 2010-07-03 - 2d525ef - lavc 52.79.0
1188   Add FF_COMPLIANCE_UNOFFICIAL and change all instances of
1189   FF_COMPLIANCE_INOFFICIAL to use FF_COMPLIANCE_UNOFFICIAL.
1190
1191 2010-07-02 - 89eec74 - lavu 50.20.0 - lfg.h
1192   Export av_lfg_init(), av_lfg_get(), av_mlfg_get(), and av_bmg_get() through
1193   lfg.h.
1194
1195 2010-06-28 - a52e2c3 - lavfi 1.20.1 - av_parse_color()
1196   Extend av_parse_color() syntax, make it accept an alpha value specifier and
1197   set the alpha value to 255 by default.
1198
1199 2010-06-22 - 735cf6b - lavf 52.71.0 - URLProtocol.priv_data_size, priv_data_class
1200   Add priv_data_size and priv_data_class to URLProtocol.
1201
1202 2010-06-22 - ffbb289 - lavf 52.70.0 - url_alloc(), url_connect()
1203   Add url_alloc() and url_connect().
1204
1205 2010-06-22 - 9b07a2d - lavf 52.69.0 - av_register_protocol2()
1206   Add av_register_protocol2(), deprecating av_register_protocol().
1207
1208 2010-06-09 - 65db058 - lavu 50.19.0 - av_compare_mod()
1209   Add av_compare_mod() to libavutil/mathematics.h.
1210
1211 2010-06-05 - 0b99215 - lavu 50.18.0 - eval API
1212   Make the eval API public.
1213
1214 2010-06-04 - 31878fc - lavu 50.17.0 - AV_BASE64_SIZE
1215   Add AV_BASE64_SIZE() macro.
1216
1217 2010-06-02 - 7e566bb - lavc 52.73.0 - av_get_codec_tag_string()
1218   Add av_get_codec_tag_string().
1219
1220 2010-06-01 - 2b99142 - lsws 0.11.0 - convertPalette API
1221   Add sws_convertPalette8ToPacked32() and sws_convertPalette8ToPacked24().
1222
1223 2010-05-26 - 93ebfee - lavc 52.72.0 - CODEC_CAP_EXPERIMENTAL
1224   Add CODEC_CAP_EXPERIMENTAL flag.
1225   NOTE: this was backported to 0.6
1226
1227 2010-05-23 - 9977863 - lavu 50.16.0 - av_get_random_seed()
1228   Add av_get_random_seed().
1229
1230 2010-05-18 - 796ac23 - lavf 52.63.0 - AVFMT_FLAG_RTP_HINT
1231   Add AVFMT_FLAG_RTP_HINT as possible value for AVFormatContext.flags.
1232   NOTE: this was backported to 0.6
1233
1234 2010-05-09 - b6bc205 - lavfi 1.20.0 - AVFilterPicRef
1235   Add interlaced and top_field_first fields to AVFilterPicRef.
1236
1237 ------------------------------8<-------------------------------------
1238                    0.6 branch was cut here
1239 ----------------------------->8--------------------------------------
1240
1241 2010-05-01 - 8e2ee18 - lavf 52.62.0 - probe function
1242   Add av_probe_input_format2 to API, it allows ignoring probe
1243   results below given score and returns the actual probe score.
1244
1245 2010-04-01 - 3dd6180 - lavf 52.61.0 - metadata API
1246   Add a flag for av_metadata_set2() to disable overwriting of
1247   existing tags.
1248
1249 2010-04-01 - 0fb49b5 - lavc 52.66.0
1250   Add avcodec_get_edge_width().
1251
1252 2010-03-31 - d103218 - lavc 52.65.0
1253   Add avcodec_copy_context().
1254
1255 2010-03-31 - 1a70d12 - lavf 52.60.0 - av_match_ext()
1256   Make av_match_ext() public.
1257
1258 2010-03-31 - 1149150 - lavu 50.14.0 - AVMediaType
1259   Move AVMediaType enum from libavcodec to libavutil.
1260
1261 2010-03-31 - 72415b2 - lavc 52.64.0 - AVMediaType
1262   Define AVMediaType enum, and use it instead of enum CodecType, which
1263   is deprecated and will be dropped at the next major bump.
1264
1265 2010-03-25 - 8795823 - lavu 50.13.0 - av_strerror()
1266   Implement av_strerror().
1267
1268 2010-03-23 - e1484eb - lavc 52.60.0 - av_dct_init()
1269   Support DCT-I and DST-I.
1270
1271 2010-03-15 - b8819c8 - lavf 52.56.0 - AVFormatContext.start_time_realtime
1272   Add AVFormatContext.start_time_realtime field.
1273
1274 2010-03-13 - 5bb5c1d - lavfi 1.18.0 - AVFilterPicRef.pos
1275   Add AVFilterPicRef.pos field.
1276
1277 2010-03-13 - 60c144f - lavu 50.12.0 - error.h
1278   Move error code definitions from libavcodec/avcodec.h to
1279   the new public header libavutil/error.h.
1280
1281 2010-03-07 - c709483 - lavc 52.56.0 - avfft.h
1282   Add public FFT interface.
1283
1284 2010-03-06 - ac6ef86 - lavu 50.11.0 - av_stristr()
1285   Add av_stristr().
1286
1287 2010-03-03 - 4b83fc0 - lavu 50.10.0 - av_tree_enumerate()
1288   Add av_tree_enumerate().
1289
1290 2010-02-07 - b687c1a - lavu 50.9.0 - av_compare_ts()
1291   Add av_compare_ts().
1292
1293 2010-02-05 - 3f3dc76 - lsws 0.10.0 - sws_getCoefficients()
1294   Add sws_getCoefficients().
1295
1296 2010-02-01 - ca76a11 - lavf 52.50.0 - metadata API
1297   Add a list of generic tag names, change 'author' -> 'artist',
1298   'year' -> 'date'.
1299
1300 2010-01-30 - 80a07f6 - lavu 50.8.0 - av_get_pix_fmt()
1301   Add av_get_pix_fmt().
1302
1303 2010-01-21 - 01cc47d - lsws 0.9.0 - sws_scale()
1304   Change constness attributes of sws_scale() parameters.
1305
1306 2010-01-10 - 3fb8e77 - lavfi 1.15.0 - avfilter_graph_config_links()
1307   Add a log_ctx parameter to avfilter_graph_config_links().
1308
1309 2010-01-07 - 8e9767f - lsws 0.8.0 - sws_isSupported{In,Out}put()
1310   Add sws_isSupportedInput() and sws_isSupportedOutput() functions.
1311
1312 2010-01-06 - c1d662f - lavfi 1.14.0 - avfilter_add_colorspace()
1313   Change the avfilter_add_colorspace() signature, make it accept an
1314   (AVFilterFormats **) rather than an (AVFilterFormats *) as before.
1315
1316 2010-01-03 - 4fd1f18 - lavfi 1.13.0 - avfilter_add_colorspace()
1317   Add avfilter_add_colorspace().
1318
1319 2010-01-02 - 8eb631f - lavf 52.46.0 - av_match_ext()
1320   Add av_match_ext(), it should be used in place of match_ext().
1321
1322 2010-01-01 - a1f547b - lavf 52.45.0 - av_guess_format()
1323   Add av_guess_format(), it should be used in place of guess_format().
1324
1325 2009-12-13 - a181981 - lavf 52.43.0 - metadata API
1326   Add av_metadata_set2(), AV_METADATA_DONT_STRDUP_KEY and
1327   AV_METADATA_DONT_STRDUP_VAL.
1328
1329 2009-12-13 - 277c733 - lavu 50.7.0 - avstring.h API
1330   Add av_d2str().
1331
1332 2009-12-13 - 02b398e - lavc 52.42.0 - AVStream
1333   Add avg_frame_rate.
1334
1335 2009-12-12 - 3ba69a1 - lavu 50.6.0 - av_bmg_next()
1336   Introduce the av_bmg_next() function.
1337
1338 2009-12-05 - a13a543 - lavfi 1.12.0 - avfilter_draw_slice()
1339   Add a slice_dir parameter to avfilter_draw_slice().
1340
1341 2009-11-26 - 4cc3f6a - lavfi 1.11.0 - AVFilter
1342   Remove the next field from AVFilter, this is not anymore required.
1343
1344 2009-11-25 - 1433c4a - lavfi 1.10.0 - avfilter_next()
1345   Introduce the avfilter_next() function.
1346
1347 2009-11-25 - 86a60fa - lavfi 1.9.0 - avfilter_register()
1348   Change the signature of avfilter_register() to make it return an
1349   int. This is required since now the registration operation may fail.
1350
1351 2009-11-25 - 74a0059 - lavu 50.5.0 - pixdesc.h API
1352   Make the pixdesc.h API public.
1353
1354 2009-10-27 - 243110f - lavfi 1.5.0 - AVFilter.next
1355   Add a next field to AVFilter, this is used for simplifying the
1356   registration and management of the registered filters.
1357
1358 2009-10-23 - cccd292 - lavfi 1.4.1 - AVFilter.description
1359   Add a description field to AVFilter.
1360
1361 2009-10-19 - 6b5dc05 - lavfi 1.3.0 - avfilter_make_format_list()
1362   Change the interface of avfilter_make_format_list() from
1363   avfilter_make_format_list(int n, ...) to
1364   avfilter_make_format_list(enum PixelFormat *pix_fmts).
1365
1366 2009-10-18 - 0eb4ff9 - lavfi 1.0.0 - avfilter_get_video_buffer()
1367   Make avfilter_get_video_buffer() recursive and add the w and h
1368   parameters to it.
1369
1370 2009-10-07 - 46c40e4 - lavfi 0.5.1 - AVFilterPic
1371   Add w and h fields to AVFilterPic.
1372
1373 2009-06-22 - 92400be - lavf 52.34.1 - AVFormatContext.packet_size
1374   This is now an unsigned int instead of a signed int.
1375
1376 2009-06-19 - a4276ba - lavc 52.32.0 - AVSubtitle.pts
1377   Add a pts field to AVSubtitle which gives the subtitle packet pts
1378   in AV_TIME_BASE. Some subtitle de-/encoders (e.g. XSUB) will
1379   not work right without this.
1380
1381 2009-06-03 - 8f3f2e0 - lavc 52.30.2 - AV_PKT_FLAG_KEY
1382   PKT_FLAG_KEY has been deprecated and will be dropped at the next
1383   major version. Use AV_PKT_FLAG_KEY instead.
1384
1385 2009-06-01 - f988ce6 - lavc 52.30.0 - av_lockmgr_register()
1386   av_lockmgr_register() can be used to register a callback function
1387   that lavc (and in the future, libraries that depend on lavc) can use
1388   to implement mutexes. The application should provide a callback function
1389   that implements the AV_LOCK_* operations described in avcodec.h.
1390   When the lock manager is registered, FFmpeg is guaranteed to behave
1391   correctly in a multi-threaded application.
1392
1393 2009-04-30 - ce1d9c8 - lavc 52.28.0 - av_free_packet()
1394   av_free_packet() is no longer an inline function. It is now exported.
1395
1396 2009-04-11 - 80d403f - lavc 52.25.0 - deprecate av_destruct_packet_nofree()
1397   Please use NULL instead. This has been supported since r16506
1398   (lavf > 52.23.1, lavc > 52.10.0).
1399
1400 2009-04-07 - 7a00bba - lavc 52.23.0 - avcodec_decode_video/audio/subtitle
1401   The old decoding functions are deprecated, all new code should use the
1402   new functions avcodec_decode_video2(), avcodec_decode_audio3() and
1403   avcodec_decode_subtitle2(). These new functions take an AVPacket *pkt
1404   argument instead of a const uint8_t *buf / int buf_size pair.
1405
1406 2009-04-03 - 7b09db3 - lavu 50.3.0 - av_fifo_space()
1407   Introduce the av_fifo_space() function.
1408
1409 2009-04-02 - fabd246 - lavc 52.23.0 - AVPacket
1410   Move AVPacket declaration from libavformat/avformat.h to
1411   libavcodec/avcodec.h.
1412
1413 2009-03-22 - 6e08ca9 - lavu 50.2.0 - RGB32 pixel formats
1414   Convert the pixel formats PIX_FMT_ARGB, PIX_FMT_RGBA, PIX_FMT_ABGR,
1415   PIX_FMT_BGRA, which were defined as macros, into enum PixelFormat values.
1416   Conversely PIX_FMT_RGB32, PIX_FMT_RGB32_1, PIX_FMT_BGR32 and
1417   PIX_FMT_BGR32_1 are now macros.
1418   avcodec_get_pix_fmt() now recognizes the "rgb32" and "bgr32" aliases.
1419   Re-sort the enum PixelFormat list accordingly.
1420   This change breaks API/ABI backward compatibility.
1421
1422 2009-03-22 - f82674e - lavu 50.1.0 - PIX_FMT_RGB5X5 endian variants
1423   Add the enum PixelFormat values:
1424   PIX_FMT_RGB565BE, PIX_FMT_RGB565LE, PIX_FMT_RGB555BE, PIX_FMT_RGB555LE,
1425   PIX_FMT_BGR565BE, PIX_FMT_BGR565LE, PIX_FMT_BGR555BE, PIX_FMT_BGR555LE.
1426
1427 2009-03-21 - ee6624e - lavu 50.0.0  - av_random*
1428   The Mersenne Twister PRNG implemented through the av_random* functions
1429   was removed. Use the lagged Fibonacci PRNG through the av_lfg* functions
1430   instead.
1431
1432 2009-03-08 - 41dd680 - lavu 50.0.0  - AVFifoBuffer
1433   av_fifo_init, av_fifo_read, av_fifo_write and av_fifo_realloc were dropped
1434   and replaced by av_fifo_alloc, av_fifo_generic_read, av_fifo_generic_write
1435   and av_fifo_realloc2.
1436   In addition, the order of the function arguments of av_fifo_generic_read
1437   was changed to match av_fifo_generic_write.
1438   The AVFifoBuffer/struct AVFifoBuffer may only be used in an opaque way by
1439   applications, they may not use sizeof() or directly access members.
1440
1441 2009-03-01 - ec26457 - lavf 52.31.0 - Generic metadata API
1442   Introduce a new metadata API (see av_metadata_get() and friends).
1443   The old API is now deprecated and should not be used anymore. This especially
1444   includes the following structure fields:
1445     - AVFormatContext.title
1446     - AVFormatContext.author
1447     - AVFormatContext.copyright
1448     - AVFormatContext.comment
1449     - AVFormatContext.album
1450     - AVFormatContext.year
1451     - AVFormatContext.track
1452     - AVFormatContext.genre
1453     - AVStream.language
1454     - AVStream.filename
1455     - AVProgram.provider_name
1456     - AVProgram.name
1457     - AVChapter.title