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