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