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