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