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