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