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