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