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