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