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