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