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