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