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