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