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