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