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