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