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