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