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