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