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