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