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