Never assume the API of libav* to be stable unless at least 1 month has passedsince the last major version increase. The last version increases were:libavcodec: 2013-03-xxlibavdevice: 2013-03-xxlibavfilter: 2013-12-xxlibavformat: 2013-03-xxlibavresample: 2012-10-05libswscale: 2011-06-20libavutil: 2013-12-xx API changes, most recent first: 2014-04-xx - xxxxxxx - lavc 55.50.3 - avcodec.h Deprecate CODEC_FLAG_MV0. It is replaced by the flag "mv0" in the "mpv_flags" private option of the mpegvideo encoders. 2014-04-xx - xxxxxxx - lavc 55.50.2 - avcodec.h Deprecate CODEC_FLAG_GMC. It is replaced by the "gmc" private option of the libxvid encoder. 2014-04-xx - xxxxxxx - lavc 55.50.1 - avcodec.h Deprecate CODEC_FLAG_NORMALIZE_AQP. It is replaced by the flag "naq" in the "mpv_flags" private option of the mpegvideo encoders. 2014-04-xx - xxxxxxx - avcodec.h Deprecate CODEC_FLAG_INPUT_PRESERVED. Its functionality is replaced by passing reference-counted frames to encoders. 2014-04-xx - xxxxxxx - lavc 55.50.0 - dxva2.h Add FF_DXVA2_WORKAROUND_INTEL_CLEARVIDEO for old Intel GPUs. 2014-04-xx - xxxxxxx - lavu 53.13.0 - avutil.h Add av_get_time_base_q(). 2014-04-xx - xxxxxxx - lavu 53.12.0 - crc.h Add AV_CRC_16_ANSI_LE crc variant. 2014-04-xx - xxxxxxx - lavu 53.11.0 - pixfmt.h Add AV_PIX_FMT_YVYU422 pixel format. 2014-04-xx - xxxxxxx - lavu 53.10.0 - replaygain.h Full scale for peak values is now 100000 (instead of UINT32_MAX) and values may overflow. 2014-04-xx - xxxxxxx - lavu 53.09.0 - log.h Add AV_LOG(c) macro to have 256 color debug messages. 2014-02-xx - xxxxxxx - lavu 53.08.0 - frame.h Add av_frame_remove_side_data() for removing a single side data instance from a frame. 2014-02-xx - xxxxxxx - lavu 53.07.0 - frame.h, replaygain.h Add AV_FRAME_DATA_REPLAYGAIN for exporting replaygain tags. Add a new header replaygain.h with the AVReplayGain struct. 2014-02-xx - xxxxxxx - lavc 55.36.0 - avcodec.h Add AV_PKT_DATA_REPLAYGAIN for exporting replaygain tags. 2014-02-xx - xxxxxxx - lavf 55.13.0 - avformat.h Add AVStream.side_data and AVStream.nb_side_data for exporting stream-global side data (e.g. replaygain tags, video rotation) 2014-02-xx - xxxxxxx - lavc 55.35.0 - avcodec.h Give the name AVPacketSideData to the previously anonymous struct used for AVPacket.side_data. 2014-xx-xx - xxxxxxx - lavu 53.06.0 - pixfmt.h Add RGBA64 pixel format and variants. 2014-xx-xx - xxxxxxx - lavu 53.05.0 - frame.h Add av_frame_copy() for copying the frame data. 2014-02-xx - xxxxxxx - lavr 1.2.0 - avresample.h Add avresample_is_open() for checking whether a resample context is open. 2014-xx-xx - xxxxxxx - lavu 53.04.0 - opt.h Add AV_OPT_FLAG_EXPORT and AV_OPT_FLAG_READONLY to mark options meant (only) for reading. 2014-xx-xx - xxxxxxx - lavu 53.03.01 - opt.h Deprecate unused AV_OPT_FLAG_METADATA. 2014-02-xx - xxxxxxx - lavu 53.3.0 - frame.h Add AV_FRAME_DATA_DOWNMIX_INFO value to the AVFrameSideDataType enum and downmix_info.h API, which identify downmix-related metadata. 2014-02-04 - d9ae103 - lavf 55.11.0 - avformat.h Add AVFormatContext.max_interleave_delta for controlling amount of buffering when interleaving. 2014-01-20 - 93c553c - lavc 55.32.1 - avcodec.h Edges are not required anymore on video buffers allocated by get_buffer2() (i.e. as if the CODEC_FLAG_EMU_EDGE flag was always on). Deprecate CODEC_FLAG_EMU_EDGE and avcodec_get_edge_width(). 2014-01-05 - 5b4797a - lavu 53.2.0 - frame.h Add AV_FRAME_DATA_MATRIXENCODING value to the AVFrameSideDataType enum, which identifies AVMatrixEncoding data. 2014-01-05 - 5c437fb - lavu 53.1.0 - channel_layout.h Add values for various Dolby flags to the AVMatrixEncoding enum. 2013-12-20 - 2a41826 - lavc 55.30.0 - avcodec.h Add HEVC profiles 2013-12-11 - b9fb59d,9431356,d7b3ee9 - lavc 55.28.1 - avcodec.h av_frame_alloc(), av_frame_unref() and av_frame_free() now can and should be used instead of avcodec_alloc_frame(), avcodec_get_frame_defaults() and avcodec_free_frame() respectively. The latter three functions are deprecated. 2013-12-09 - 7e244c6- - lavu 52.20.0 - frame.h Add AV_FRAME_DATA_STEREO3D value to the AVFrameSideDataType enum and stereo3d.h API, that identify codec-independent stereo3d information. 2013-11-26 - 1eaac1d- - lavu 52.19.0 - frame.h Add AV_FRAME_DATA_A53_CC value to the AVFrameSideDataType enum, which identifies ATSC A53 Part 4 Closed Captions data. 2013-11-14 - cce3e0a - lavu 52.18.0 - mem.h Move av_fast_malloc() and av_fast_realloc() for libavcodec to libavutil. 2013-11-14 - 8941971 - lavc 55.27.0 - avcodec.h Deprecate AVCodecContext.error_rate, it is replaced by the 'error_rate' private option of the mpegvideo encoder family. 2013-11-14 - 728c465 - lavc 55.26.0 - vdpau.h Add av_vdpau_get_profile(). Add av_vdpau_alloc_context(). This function must from now on be used for allocating AVVDPAUContext. 2013-11-04 - cd8f772 - lavc 55.25.0 - avcodec.h Add ITU-R BT.2020 and other not yet included values to color primaries, transfer characteristics and colorspaces. 2013-10-31 - 28096e0 - lavu 52.17.0 - frame.h Add AVFrame.flags and AV_FRAME_FLAG_CORRUPT. 2013-09-28 - 0767bfd - lavfi 3.11.0 - avfilter.h Add AVFilterGraph.execute and AVFilterGraph.opaque for custom slice threading implementations. 2013-09-21 - e208e6d - lavu 52.16.0 - pixfmt.h Add interleaved 4:2:2 8/10-bit formats AV_PIX_FMT_NV16 and AV_PIX_FMT_NV20. 2013-09-16 - 3feb3d6 - lavu 52.15.0 - mem.h Add av_reallocp. 2013-08-10 - 5a9a9d4 - lavc 55.16.0 - avcodec.h Extend AVPacket API with av_packet_unref, av_packet_ref, av_packet_move_ref, av_packet_copy_props, av_packet_free_side_data. 2013-08-05 - f824535 - lavc 55.13.0 - avcodec.h Deprecate the bitstream-related members from struct AVVDPAUContext. The bistream buffers no longer need to be explicitly freed. 2013-08-05 - 549294f - lavc 55.12.0 - avcodec.h Deprecate the CODEC_CAP_HWACCEL_VDPAU codec capability. Use CODEC_CAP_HWACCEL and select the AV_PIX_FMT_VDPAU format with get_format() instead. 2013-08-05 - a0ad5d0 - lavu 52.14.0 - pixfmt.h Deprecate AV_PIX_FMT_VDPAU_*. Use AV_PIX_FMT_VDPAU instead. 2013-08-02 - a8b1927 - lavc 55.11.0 - avcodec.h Add output_picture_number to AVCodecParserContext. 2013-06-24 - 95d5246 - lavc 55.10.0 - avcodec.h Add MPEG-2 AAC profiles 2013-06-04 - fc962d4 - lavu 52.13.0 - mem.h Add av_realloc_array and av_reallocp_array 2013-05-24 - 129bb23 - lavfi 3.10.0 - avfilter.h Add support for slice multithreading to lavfi. Filters supporting threading are marked with AVFILTER_FLAG_SLICE_THREADS. New fields AVFilterContext.thread_type, AVFilterGraph.thread_type and AVFilterGraph.nb_threads (accessible directly or through AVOptions) may be used to configure multithreading. 2013-05-24 - 2a6eaea - lavu 52.12.0 - cpu.h Add av_cpu_count() function for getting the number of logical CPUs. 2013-05-24 - b493847 - lavc 55.7.0 - avcodec.h Add picture_structure to AVCodecParserContext. 2013-05-15 - e6c4ac7 - lavu 52.11.0 - pixdesc.h Replace PIX_FMT_* flags with AV_PIX_FMT_FLAG_*. 2013-04-03 - 507b1e4 - lavc 55.4.0 - avcodec.h Add field_order to AVCodecParserContext. 2013-04-19 - 5e83d9a - lavc 55.2.0 - avcodec.h Add CODEC_FLAG_UNALIGNED to allow decoders to produce unaligned output. 2013-04-11 - lavfi 3.8.0 38f0c07 - Move all content from avfiltergraph.h to avfilter.h. Deprecate avfilterhraph.h, user applications should include just avfilter.h bc1a985 - Add avfilter_graph_alloc_filter(), deprecate avfilter_open() and avfilter_graph_add_filter(). 1113672 - Add AVFilterContext.graph pointing to the AVFilterGraph that contains the filter. 48a5ada - Add avfilter_init_str(), deprecate avfilter_init_filter(). 1ba95a9 - Add avfilter_init_dict(). 7cdd737 - Add AVFilter.flags field and AVFILTER_FLAG_DYNAMIC_{INPUTS,OUTPUTS} flags. 7e8fe4b - Add avfilter_pad_count() for counting filter inputs/outputs. fa2a34c - Add avfilter_next(), deprecate av_filter_next(). Deprecate avfilter_uninit(). 2013-04-09 - lavfi 3.7.0 - avfilter.h b439c99 - Add AVFilter.priv_class for exporting filter options through the AVOptions API in the similar way private options work in lavc and lavf. 8114c10 - Add avfilter_get_class(). Switch all filters to use AVOptions. 2013-03-19 - 2c328a9 - lavu 52.9.0 - pixdesc.h Add av_pix_fmt_count_planes() function for counting planes in a pixel format. 2013-03-16 - 42c7c61 - lavfi 3.6.0 Add AVFilterGraph.nb_filters, deprecate AVFilterGraph.filter_count. 2013-03-08 - Reference counted buffers - lavu 52.8.0, lavc 55.0.0, lavf 55.0.0,lavd 54.0.0, lavfi 3.5.0 8e401db, 1cec062 - add a new API for reference counted buffers and buffer pools (new header libavutil/buffer.h). 1afddbe - add AVPacket.buf to allow reference counting for the AVPacket data. Add av_packet_from_data() function for constructing packets from av_malloc()ed data. 7ecc2d4 - move AVFrame from lavc to lavu (new header libavutil/frame.h), add AVFrame.buf/extended_buf to allow reference counting for the AVFrame data. Add new API for working with reference-counted AVFrames. 759001c - add the refcounted_frames field to AVCodecContext to make audio and video decoders return reference-counted frames. Add get_buffer2() callback to AVCodecContext which allocates reference-counted frames. Add avcodec_default_get_buffer2() as the default get_buffer2() implementation. Deprecate AVCodecContext.get_buffer() / release_buffer() / reget_buffer(), avcodec_default_get_buffer(), avcodec_default_reget_buffer(), avcodec_default_release_buffer(). Remove avcodec_default_free_buffers(), which should not have ever been called from outside of lavc. Deprecate the following AVFrame fields: * base -- is now stored in AVBufferRef * reference, type, buffer_hints -- are unnecessary in the new API * hwaccel_picture_private, owner, thread_opaque -- should not have been acessed from outside of lavc * qscale_table, qstride, qscale_type, mbskip_table, motion_val, mb_type, dct_coeff, ref_index -- mpegvideo-specific tables, which are not exported anymore. 7e35037 - switch libavfilter to use AVFrame instead of AVFilterBufferRef. Add av_buffersrc_add_frame(), deprecate av_buffersrc_buffer(). Add av_buffersink_get_frame() and av_buffersink_get_samples(), deprecate av_buffersink_read() and av_buffersink_read_samples(). Deprecate AVFilterBufferRef and all functions for working with it. 2013-03-17 - 12c5c1d - lavu 52.8.0 - avstring.h Add av_isdigit, av_isgraph, av_isspace, av_isxdigit. 2013-02-23 - 9f12235 - lavfi 3.4.0 - avfiltergraph.h Add resample_lavr_opts to AVFilterGraph for setting libavresample options for auto-inserted resample filters. 2013-01-25 - 38c1466 - lavu 52.7.0 - dict.h Add av_dict_parse_string() to set multiple key/value pairs at once from a string. 2013-01-25 - b85a5e8 - lavu 52.6.0 - avstring.h Add av_strnstr() 2013-01-15 - 8ee288d - lavu 52.5.0 - hmac.h Add AVHMAC. 2013-01-13 - 44e065d - lavc 54.36.0 - vdpau.h Add AVVDPAUContext struct for VDPAU hardware-accelerated decoding. 2013-01-12 - 169fb94 - lavu 52.4.0 - pixdesc.h Add AV_PIX_FMT_VDPAU flag. 2013-01-07 - 074a00d - lavr 1.1.0 Add avresample_set_channel_mapping() for input channel reordering, duplication, and silencing. ------------------------------8<------------------------------------- 9 branch was cut here----------------------------->8-------------------------------------- 2012-12-29 - d8fd06c - lavu 52.3.0 - avstring.h Add av_basename() and av_dirname(). 2012-11-11 - 5980f5d - lavu 52.2.0 - audioconvert.h Rename audioconvert.h to channel_layout.h. audioconvert.h is now deprecated. 2012-11-05 - dfde8a3 - lavu 52.1.0 - intmath.h Add av_ctz() for trailing zero bit count 2012-10-21 - a893655 - lavu 51.45.0 - error.h Add AVERROR_EXPERIMENTAL 2012-10-12 - d2fcb35 - lavu 51.44.0 - pixdesc.h Add functions for accessing pixel format descriptors. Accessing the av_pix_fmt_descriptors array directly is now deprecated. 2012-10-11 - 9a92aea - lavu 51.43.0 - aes.h, md5.h, sha.h, tree.h Add functions for allocating the opaque contexts for the algorithms, deprecate the context size variables. 2012-10-10 - b522000 - lavf 54.18.0 - avio.h Add avio_closep to complement avio_close. 2012-10-08 - 78071a1 - lavu 51.42.0 - pixfmt.h Rename PixelFormat to AVPixelFormat and all PIX_FMT_* to AV_PIX_FMT_*. To provide backwards compatibility, PixelFormat is now #defined as AVPixelFormat. Note that this can break user code that includes pixfmt.h and uses the 'PixelFormat' identifier. Such code should either #undef PixelFormat or stop using the PixelFormat name. 2012-10-05 - e7ba5b1 - lavr 1.0.0 - avresample.h Data planes parameters to avresample_convert() and avresample_read() are now uint8_t** instead of void**. Libavresample is now stable. 2012-09-24 - a42aada - lavc 54.28.0 - avcodec.h Add avcodec_free_frame(). This function must now be used for freeing an AVFrame. 2012-09-12 - 8919fee - lavu 51.41.0 - audioconvert.h Added AV_CH_LOW_FREQUENCY_2 channel mask value. 2012-09-04 - 686a329 - lavu 51.40.0 - opt.h Reordered the fields in default_val in AVOption, changed which default_val field is used for which AVOptionType. 2012-08-30 - a231832 - lavc 54.26.1 - avcodec.h Add codec descriptor properties AV_CODEC_PROP_LOSSY and AV_CODEC_PROP_LOSSLESS. 2012-08-18 - lavc 54.26 - avcodec.h Add codec descriptors for accessing codec properties without having to refer to a specific decoder or encoder. c223d79 - Add an AVCodecDescriptor struct and functions avcodec_descriptor_get() and avcodec_descriptor_next(). 51efed1 - Add AVCodecDescriptor.props and AV_CODEC_PROP_INTRA_ONLY. 91e59fe - Add avcodec_descriptor_get_by_name(). 2012-08-08 - 1d9c2dc - lavu 51.39 - avutil.h Don't implicitly include libavutil/common.h in avutil.h 2012-08-08 - 987170c - lavu 51.38 - dict.h Add av_dict_count(). 2012-08-07 - 104e10f - lavc 54.25 - avcodec.h Rename CodecID to AVCodecID and all CODEC_ID_* to AV_CODEC_ID_*. To provide backwards compatibility, CodecID is now #defined as AVCodecID. Note that this can break user code that includes avcodec.h and uses the 'CodecID' identifier. Such code should either #undef CodecID or stop using the CodecID name. 2012-08-03 - 239fdf1 - lavu 51.37.1 - cpu.h lsws 2.1.1 - swscale.h Rename AV_CPU_FLAG_MMX2 ---> AV_CPU_FLAG_MMXEXT. Rename SWS_CPU_CAPS_MMX2 ---> SWS_CPU_CAPS_MMXEXT. 2012-07-29 - 681ed00 - lavf 54.13.0 - avformat.h Add AVFMT_FLAG_NOBUFFER for low latency use cases. 2012-07-20 - b70d89a - lavfi 3.0.0 - avfilter.h Add avfilter_unref_bufferp(). 2012-07-10 - 5fade8a - lavu 51.37.0 Add av_malloc_array() and av_mallocz_array() 2012-06-22 - d3d3a32 - lavu 51.34.0 Add av_usleep() 2012-06-20 - ae0a301 - lavu 51.33.0 Move av_gettime() to libavutil, add libavutil/time.h 2012-06-09 - 3971be0 - lavr 0.0.3 Add a parameter to avresample_build_matrix() for Dolby/DPLII downmixing. 2012-06-12 - 9baeff9 - lavfi 2.23.0 - avfilter.h Add AVFilterContext.nb_inputs/outputs. Deprecate AVFilterContext.input/output_count. 2012-06-12 - 84b9fbe - lavfi 2.22.0 - avfilter.h Add avfilter_pad_get_type() and avfilter_pad_get_name(). Those should now be used instead of accessing AVFilterPad members directly. 2012-06-12 - b0f0dfc - lavu 51.32.0 - audioconvert.h Add av_get_channel_layout_channel_index(), av_get_channel_name() and av_channel_layout_extract_channel(). 2012-05-25 - 154486f - lavu 51.31.0 - opt.h Add av_opt_set_bin() 2012-05-26 - e9cef89 - lavf 54.3.0 Add AVFMT_TS_NONSTRICT format flag to indicate that a muxer supports non-increasing monotone timestamps. 2012-05-15 - lavfi 2.17.0 Add support for audio filters ac71230/a2cd9be - add video/audio buffer sink in a new installed header buffersink.h 720c6b7 - add av_buffersrc_write_frame(), deprecate av_vsrc_buffer_add_frame() ab16504 - add avfilter_copy_buf_props() 9453c9e - add extended_data to AVFilterBuffer 1b8c927 - add avfilter_get_audio_buffer_ref_from_arrays() 2012-05-09 - lavu 51.30.0 - samplefmt.h 142e740 - add av_samples_copy() 6d7f617 - add av_samples_set_silence() 2012-05-09 - a5117a2 - lavc 54.13.1 For audio formats with fixed frame size, the last frame no longer needs to be padded with silence, libavcodec will handle this internally (effectively all encoders behave as if they had CODEC_CAP_SMALL_LAST_FRAME set). 2012-05-07 - 828bd08 - lavc 54.13.0 - avcodec.h Add sample_rate and channel_layout fields to AVFrame. 2012-05-01 - 4010d72 - lavr 0.0.1 Change AV_MIX_COEFF_TYPE_Q6 to AV_MIX_COEFF_TYPE_Q8. 2012-04-25 - 3527a73 - lavu 51.29.0 - cpu.h Add av_parse_cpu_flags() 2012-04-24 - c8af852 - lavr 0.0.0 Add libavresample audio conversion library 2012-04-20 - 0c0d1bc - lavu 51.28.0 - audio_fifo.h Add audio FIFO functions: av_audio_fifo_free() av_audio_fifo_alloc() av_audio_fifo_realloc() av_audio_fifo_write() av_audio_fifo_read() av_audio_fifo_drain() av_audio_fifo_reset() av_audio_fifo_size() av_audio_fifo_space() 2012-04-14 - lavfi 2.16.0 - avfiltergraph.h d7bcc71 Add avfilter_graph_parse2(). 91d3cbe Add avfilter_inout_alloc() and avfilter_inout_free(). 2012-04-08 - 4d693b0 - lavu 51.27.0 - samplefmt.h Add av_get_packed_sample_fmt() and av_get_planar_sample_fmt() 2012-04-05 - 5cc51a5 - lavu 51.26.0 - audioconvert.h Add av_get_default_channel_layout() 2012-03-20 - 3c90cc2 - lavfo 54.2.0 Deprecate av_read_packet(), use av_read_frame() with AVFMT_FLAG_NOPARSE | AVFMT_FLAG_NOFILLIN in AVFormatContext.flags 2012-03-06 - 4d851f8 - lavu 51.25.0 - cpu.h Add av_set_cpu_flags_mask(). 2012-03-05 - lavc 54.8.0 6699d07 Add av_get_exact_bits_per_sample() 9524cf7 Add av_get_audio_frame_duration() 2012-03-04 - 44fe77b - lavc 54.7.0 - avcodec.h Add av_codec_is_encoder/decoder(). 2012-03-01 - 442c132 - lavc 54.3.0 - avcodec.h Add av_packet_shrink_side_data. 2012-02-29 - dd2a4bc - lavf 54.2.0 - avformat.h Add AVStream.attached_pic and AV_DISPOSITION_ATTACHED_PIC, used for dealing with attached pictures/cover art. 2012-02-25 - c9bca80 - lavu 51.24.0 - error.h Add AVERROR_UNKNOWN NOTE: this was backported to 0.8 2012-02-20 - e9cda85 - lavc 54.2.0 Add duration field to AVCodecParserContext 2012-02-20 - 0b42a93 - lavu 51.23.1 - mathematics.h Add av_rescale_q_rnd() 2012-02-08 - 38d5533 - lavu 51.22.1 - pixdesc.h Add PIX_FMT_PSEUDOPAL flag. 2012-02-08 - 52f82a1 - lavc 54.01.0 Add avcodec_encode_video2() and deprecate avcodec_encode_video(). 2012-02-01 - 316fc74 - lavc 54.01.0 Add av_fast_padded_malloc() as alternative for av_realloc() when aligned memory is required. The buffer will always have FF_INPUT_BUFFER_PADDING_SIZELines 1–500 of 1496. Load more
Never assume the API of libav* to be stable unless at least 1 month has passed since the last major version increase. The last version increases were: libavcodec: 2013-03-xx libavdevice: 2013-03-xx libavfilter: 2013-12-xx libavformat: 2013-03-xx libavresample: 2012-10-05 libswscale: 2011-06-20 libavutil: 2013-12-xx API changes, most recent first: 2014-04-xx - xxxxxxx - lavc 55.50.3 - avcodec.h Deprecate CODEC_FLAG_MV0. It is replaced by the flag "mv0" in the "mpv_flags" private option of the mpegvideo encoders. 2014-04-xx - xxxxxxx - lavc 55.50.2 - avcodec.h Deprecate CODEC_FLAG_GMC. It is replaced by the "gmc" private option of the libxvid encoder. 2014-04-xx - xxxxxxx - lavc 55.50.1 - avcodec.h Deprecate CODEC_FLAG_NORMALIZE_AQP. It is replaced by the flag "naq" in the "mpv_flags" private option of the mpegvideo encoders. 2014-04-xx - xxxxxxx - avcodec.h Deprecate CODEC_FLAG_INPUT_PRESERVED. Its functionality is replaced by passing reference-counted frames to encoders. 2014-04-xx - xxxxxxx - lavc 55.50.0 - dxva2.h Add FF_DXVA2_WORKAROUND_INTEL_CLEARVIDEO for old Intel GPUs. 2014-04-xx - xxxxxxx - lavu 53.13.0 - avutil.h Add av_get_time_base_q(). 2014-04-xx - xxxxxxx - lavu 53.12.0 - crc.h Add AV_CRC_16_ANSI_LE crc variant. 2014-04-xx - xxxxxxx - lavu 53.11.0 - pixfmt.h Add AV_PIX_FMT_YVYU422 pixel format. 2014-04-xx - xxxxxxx - lavu 53.10.0 - replaygain.h Full scale for peak values is now 100000 (instead of UINT32_MAX) and values may overflow. 2014-04-xx - xxxxxxx - lavu 53.09.0 - log.h Add AV_LOG(c) macro to have 256 color debug messages. 2014-02-xx - xxxxxxx - lavu 53.08.0 - frame.h Add av_frame_remove_side_data() for removing a single side data instance from a frame. 2014-02-xx - xxxxxxx - lavu 53.07.0 - frame.h, replaygain.h Add AV_FRAME_DATA_REPLAYGAIN for exporting replaygain tags. Add a new header replaygain.h with the AVReplayGain struct. 2014-02-xx - xxxxxxx - lavc 55.36.0 - avcodec.h Add AV_PKT_DATA_REPLAYGAIN for exporting replaygain tags. 2014-02-xx - xxxxxxx - lavf 55.13.0 - avformat.h Add AVStream.side_data and AVStream.nb_side_data for exporting stream-global side data (e.g. replaygain tags, video rotation) 2014-02-xx - xxxxxxx - lavc 55.35.0 - avcodec.h Give the name AVPacketSideData to the previously anonymous struct used for AVPacket.side_data. 2014-xx-xx - xxxxxxx - lavu 53.06.0 - pixfmt.h Add RGBA64 pixel format and variants. 2014-xx-xx - xxxxxxx - lavu 53.05.0 - frame.h Add av_frame_copy() for copying the frame data. 2014-02-xx - xxxxxxx - lavr 1.2.0 - avresample.h Add avresample_is_open() for checking whether a resample context is open. 2014-xx-xx - xxxxxxx - lavu 53.04.0 - opt.h Add AV_OPT_FLAG_EXPORT and AV_OPT_FLAG_READONLY to mark options meant (only) for reading. 2014-xx-xx - xxxxxxx - lavu 53.03.01 - opt.h Deprecate unused AV_OPT_FLAG_METADATA. 2014-02-xx - xxxxxxx - lavu 53.3.0 - frame.h Add AV_FRAME_DATA_DOWNMIX_INFO value to the AVFrameSideDataType enum and downmix_info.h API, which identify downmix-related metadata. 2014-02-04 - d9ae103 - lavf 55.11.0 - avformat.h Add AVFormatContext.max_interleave_delta for controlling amount of buffering when interleaving. 2014-01-20 - 93c553c - lavc 55.32.1 - avcodec.h Edges are not required anymore on video buffers allocated by get_buffer2() (i.e. as if the CODEC_FLAG_EMU_EDGE flag was always on). Deprecate CODEC_FLAG_EMU_EDGE and avcodec_get_edge_width(). 2014-01-05 - 5b4797a - lavu 53.2.0 - frame.h Add AV_FRAME_DATA_MATRIXENCODING value to the AVFrameSideDataType enum, which identifies AVMatrixEncoding data. 2014-01-05 - 5c437fb - lavu 53.1.0 - channel_layout.h Add values for various Dolby flags to the AVMatrixEncoding enum. 2013-12-20 - 2a41826 - lavc 55.30.0 - avcodec.h Add HEVC profiles 2013-12-11 - b9fb59d,9431356,d7b3ee9 - lavc 55.28.1 - avcodec.h av_frame_alloc(), av_frame_unref() and av_frame_free() now can and should be used instead of avcodec_alloc_frame(), avcodec_get_frame_defaults() and avcodec_free_frame() respectively. The latter three functions are deprecated. 2013-12-09 - 7e244c6- - lavu 52.20.0 - frame.h Add AV_FRAME_DATA_STEREO3D value to the AVFrameSideDataType enum and stereo3d.h API, that identify codec-independent stereo3d information. 2013-11-26 - 1eaac1d- - lavu 52.19.0 - frame.h Add AV_FRAME_DATA_A53_CC value to the AVFrameSideDataType enum, which identifies ATSC A53 Part 4 Closed Captions data. 2013-11-14 - cce3e0a - lavu 52.18.0 - mem.h Move av_fast_malloc() and av_fast_realloc() for libavcodec to libavutil. 2013-11-14 - 8941971 - lavc 55.27.0 - avcodec.h Deprecate AVCodecContext.error_rate, it is replaced by the 'error_rate' private option of the mpegvideo encoder family. 2013-11-14 - 728c465 - lavc 55.26.0 - vdpau.h Add av_vdpau_get_profile(). Add av_vdpau_alloc_context(). This function must from now on be used for allocating AVVDPAUContext. 2013-11-04 - cd8f772 - lavc 55.25.0 - avcodec.h Add ITU-R BT.2020 and other not yet included values to color primaries, transfer characteristics and colorspaces. 2013-10-31 - 28096e0 - lavu 52.17.0 - frame.h Add AVFrame.flags and AV_FRAME_FLAG_CORRUPT. 2013-09-28 - 0767bfd - lavfi 3.11.0 - avfilter.h Add AVFilterGraph.execute and AVFilterGraph.opaque for custom slice threading implementations. 2013-09-21 - e208e6d - lavu 52.16.0 - pixfmt.h Add interleaved 4:2:2 8/10-bit formats AV_PIX_FMT_NV16 and AV_PIX_FMT_NV20. 2013-09-16 - 3feb3d6 - lavu 52.15.0 - mem.h Add av_reallocp. 2013-08-10 - 5a9a9d4 - lavc 55.16.0 - avcodec.h Extend AVPacket API with av_packet_unref, av_packet_ref, av_packet_move_ref, av_packet_copy_props, av_packet_free_side_data. 2013-08-05 - f824535 - lavc 55.13.0 - avcodec.h Deprecate the bitstream-related members from struct AVVDPAUContext. The bistream buffers no longer need to be explicitly freed. 2013-08-05 - 549294f - lavc 55.12.0 - avcodec.h Deprecate the CODEC_CAP_HWACCEL_VDPAU codec capability. Use CODEC_CAP_HWACCEL and select the AV_PIX_FMT_VDPAU format with get_format() instead. 2013-08-05 - a0ad5d0 - lavu 52.14.0 - pixfmt.h Deprecate AV_PIX_FMT_VDPAU_*. Use AV_PIX_FMT_VDPAU instead. 2013-08-02 - a8b1927 - lavc 55.11.0 - avcodec.h Add output_picture_number to AVCodecParserContext. 2013-06-24 - 95d5246 - lavc 55.10.0 - avcodec.h Add MPEG-2 AAC profiles 2013-06-04 - fc962d4 - lavu 52.13.0 - mem.h Add av_realloc_array and av_reallocp_array 2013-05-24 - 129bb23 - lavfi 3.10.0 - avfilter.h Add support for slice multithreading to lavfi. Filters supporting threading are marked with AVFILTER_FLAG_SLICE_THREADS. New fields AVFilterContext.thread_type, AVFilterGraph.thread_type and AVFilterGraph.nb_threads (accessible directly or through AVOptions) may be used to configure multithreading. 2013-05-24 - 2a6eaea - lavu 52.12.0 - cpu.h Add av_cpu_count() function for getting the number of logical CPUs. 2013-05-24 - b493847 - lavc 55.7.0 - avcodec.h Add picture_structure to AVCodecParserContext. 2013-05-15 - e6c4ac7 - lavu 52.11.0 - pixdesc.h Replace PIX_FMT_* flags with AV_PIX_FMT_FLAG_*. 2013-04-03 - 507b1e4 - lavc 55.4.0 - avcodec.h Add field_order to AVCodecParserContext. 2013-04-19 - 5e83d9a - lavc 55.2.0 - avcodec.h Add CODEC_FLAG_UNALIGNED to allow decoders to produce unaligned output. 2013-04-11 - lavfi 3.8.0 38f0c07 - Move all content from avfiltergraph.h to avfilter.h. Deprecate avfilterhraph.h, user applications should include just avfilter.h bc1a985 - Add avfilter_graph_alloc_filter(), deprecate avfilter_open() and avfilter_graph_add_filter(). 1113672 - Add AVFilterContext.graph pointing to the AVFilterGraph that contains the filter. 48a5ada - Add avfilter_init_str(), deprecate avfilter_init_filter(). 1ba95a9 - Add avfilter_init_dict(). 7cdd737 - Add AVFilter.flags field and AVFILTER_FLAG_DYNAMIC_{INPUTS,OUTPUTS} flags. 7e8fe4b - Add avfilter_pad_count() for counting filter inputs/outputs. fa2a34c - Add avfilter_next(), deprecate av_filter_next(). Deprecate avfilter_uninit(). 2013-04-09 - lavfi 3.7.0 - avfilter.h b439c99 - Add AVFilter.priv_class for exporting filter options through the AVOptions API in the similar way private options work in lavc and lavf. 8114c10 - Add avfilter_get_class(). Switch all filters to use AVOptions. 2013-03-19 - 2c328a9 - lavu 52.9.0 - pixdesc.h Add av_pix_fmt_count_planes() function for counting planes in a pixel format. 2013-03-16 - 42c7c61 - lavfi 3.6.0 Add AVFilterGraph.nb_filters, deprecate AVFilterGraph.filter_count. 2013-03-08 - Reference counted buffers - lavu 52.8.0, lavc 55.0.0, lavf 55.0.0, lavd 54.0.0, lavfi 3.5.0 8e401db, 1cec062 - add a new API for reference counted buffers and buffer pools (new header libavutil/buffer.h). 1afddbe - add AVPacket.buf to allow reference counting for the AVPacket data. Add av_packet_from_data() function for constructing packets from av_malloc()ed data. 7ecc2d4 - move AVFrame from lavc to lavu (new header libavutil/frame.h), add AVFrame.buf/extended_buf to allow reference counting for the AVFrame data. Add new API for working with reference-counted AVFrames. 759001c - add the refcounted_frames field to AVCodecContext to make audio and video decoders return reference-counted frames. Add get_buffer2() callback to AVCodecContext which allocates reference-counted frames. Add avcodec_default_get_buffer2() as the default get_buffer2() implementation. Deprecate AVCodecContext.get_buffer() / release_buffer() / reget_buffer(), avcodec_default_get_buffer(), avcodec_default_reget_buffer(), avcodec_default_release_buffer(). Remove avcodec_default_free_buffers(), which should not have ever been called from outside of lavc. Deprecate the following AVFrame fields: * base -- is now stored in AVBufferRef * reference, type, buffer_hints -- are unnecessary in the new API * hwaccel_picture_private, owner, thread_opaque -- should not have been acessed from outside of lavc * qscale_table, qstride, qscale_type, mbskip_table, motion_val, mb_type, dct_coeff, ref_index -- mpegvideo-specific tables, which are not exported anymore. 7e35037 - switch libavfilter to use AVFrame instead of AVFilterBufferRef. Add av_buffersrc_add_frame(), deprecate av_buffersrc_buffer(). Add av_buffersink_get_frame() and av_buffersink_get_samples(), deprecate av_buffersink_read() and av_buffersink_read_samples(). Deprecate AVFilterBufferRef and all functions for working with it. 2013-03-17 - 12c5c1d - lavu 52.8.0 - avstring.h Add av_isdigit, av_isgraph, av_isspace, av_isxdigit. 2013-02-23 - 9f12235 - lavfi 3.4.0 - avfiltergraph.h Add resample_lavr_opts to AVFilterGraph for setting libavresample options for auto-inserted resample filters. 2013-01-25 - 38c1466 - lavu 52.7.0 - dict.h Add av_dict_parse_string() to set multiple key/value pairs at once from a string. 2013-01-25 - b85a5e8 - lavu 52.6.0 - avstring.h Add av_strnstr() 2013-01-15 - 8ee288d - lavu 52.5.0 - hmac.h Add AVHMAC. 2013-01-13 - 44e065d - lavc 54.36.0 - vdpau.h Add AVVDPAUContext struct for VDPAU hardware-accelerated decoding. 2013-01-12 - 169fb94 - lavu 52.4.0 - pixdesc.h Add AV_PIX_FMT_VDPAU flag. 2013-01-07 - 074a00d - lavr 1.1.0 Add avresample_set_channel_mapping() for input channel reordering, duplication, and silencing. ------------------------------8<------------------------------------- 9 branch was cut here ----------------------------->8-------------------------------------- 2012-12-29 - d8fd06c - lavu 52.3.0 - avstring.h Add av_basename() and av_dirname(). 2012-11-11 - 5980f5d - lavu 52.2.0 - audioconvert.h Rename audioconvert.h to channel_layout.h. audioconvert.h is now deprecated. 2012-11-05 - dfde8a3 - lavu 52.1.0 - intmath.h Add av_ctz() for trailing zero bit count 2012-10-21 - a893655 - lavu 51.45.0 - error.h Add AVERROR_EXPERIMENTAL 2012-10-12 - d2fcb35 - lavu 51.44.0 - pixdesc.h Add functions for accessing pixel format descriptors. Accessing the av_pix_fmt_descriptors array directly is now deprecated. 2012-10-11 - 9a92aea - lavu 51.43.0 - aes.h, md5.h, sha.h, tree.h Add functions for allocating the opaque contexts for the algorithms, deprecate the context size variables. 2012-10-10 - b522000 - lavf 54.18.0 - avio.h Add avio_closep to complement avio_close. 2012-10-08 - 78071a1 - lavu 51.42.0 - pixfmt.h Rename PixelFormat to AVPixelFormat and all PIX_FMT_* to AV_PIX_FMT_*. To provide backwards compatibility, PixelFormat is now #defined as AVPixelFormat. Note that this can break user code that includes pixfmt.h and uses the 'PixelFormat' identifier. Such code should either #undef PixelFormat or stop using the PixelFormat name. 2012-10-05 - e7ba5b1 - lavr 1.0.0 - avresample.h Data planes parameters to avresample_convert() and avresample_read() are now uint8_t** instead of void**. Libavresample is now stable. 2012-09-24 - a42aada - lavc 54.28.0 - avcodec.h Add avcodec_free_frame(). This function must now be used for freeing an AVFrame. 2012-09-12 - 8919fee - lavu 51.41.0 - audioconvert.h Added AV_CH_LOW_FREQUENCY_2 channel mask value. 2012-09-04 - 686a329 - lavu 51.40.0 - opt.h Reordered the fields in default_val in AVOption, changed which default_val field is used for which AVOptionType. 2012-08-30 - a231832 - lavc 54.26.1 - avcodec.h Add codec descriptor properties AV_CODEC_PROP_LOSSY and AV_CODEC_PROP_LOSSLESS. 2012-08-18 - lavc 54.26 - avcodec.h Add codec descriptors for accessing codec properties without having to refer to a specific decoder or encoder. c223d79 - Add an AVCodecDescriptor struct and functions avcodec_descriptor_get() and avcodec_descriptor_next(). 51efed1 - Add AVCodecDescriptor.props and AV_CODEC_PROP_INTRA_ONLY. 91e59fe - Add avcodec_descriptor_get_by_name(). 2012-08-08 - 1d9c2dc - lavu 51.39 - avutil.h Don't implicitly include libavutil/common.h in avutil.h 2012-08-08 - 987170c - lavu 51.38 - dict.h Add av_dict_count(). 2012-08-07 - 104e10f - lavc 54.25 - avcodec.h Rename CodecID to AVCodecID and all CODEC_ID_* to AV_CODEC_ID_*. To provide backwards compatibility, CodecID is now #defined as AVCodecID. Note that this can break user code that includes avcodec.h and uses the 'CodecID' identifier. Such code should either #undef CodecID or stop using the CodecID name. 2012-08-03 - 239fdf1 - lavu 51.37.1 - cpu.h lsws 2.1.1 - swscale.h Rename AV_CPU_FLAG_MMX2 ---> AV_CPU_FLAG_MMXEXT. Rename SWS_CPU_CAPS_MMX2 ---> SWS_CPU_CAPS_MMXEXT. 2012-07-29 - 681ed00 - lavf 54.13.0 - avformat.h Add AVFMT_FLAG_NOBUFFER for low latency use cases. 2012-07-20 - b70d89a - lavfi 3.0.0 - avfilter.h Add avfilter_unref_bufferp(). 2012-07-10 - 5fade8a - lavu 51.37.0 Add av_malloc_array() and av_mallocz_array() 2012-06-22 - d3d3a32 - lavu 51.34.0 Add av_usleep() 2012-06-20 - ae0a301 - lavu 51.33.0 Move av_gettime() to libavutil, add libavutil/time.h 2012-06-09 - 3971be0 - lavr 0.0.3 Add a parameter to avresample_build_matrix() for Dolby/DPLII downmixing. 2012-06-12 - 9baeff9 - lavfi 2.23.0 - avfilter.h Add AVFilterContext.nb_inputs/outputs. Deprecate AVFilterContext.input/output_count. 2012-06-12 - 84b9fbe - lavfi 2.22.0 - avfilter.h Add avfilter_pad_get_type() and avfilter_pad_get_name(). Those should now be used instead of accessing AVFilterPad members directly. 2012-06-12 - b0f0dfc - lavu 51.32.0 - audioconvert.h Add av_get_channel_layout_channel_index(), av_get_channel_name() and av_channel_layout_extract_channel(). 2012-05-25 - 154486f - lavu 51.31.0 - opt.h Add av_opt_set_bin() 2012-05-26 - e9cef89 - lavf 54.3.0 Add AVFMT_TS_NONSTRICT format flag to indicate that a muxer supports non-increasing monotone timestamps. 2012-05-15 - lavfi 2.17.0 Add support for audio filters ac71230/a2cd9be - add video/audio buffer sink in a new installed header buffersink.h 720c6b7 - add av_buffersrc_write_frame(), deprecate av_vsrc_buffer_add_frame() ab16504 - add avfilter_copy_buf_props() 9453c9e - add extended_data to AVFilterBuffer 1b8c927 - add avfilter_get_audio_buffer_ref_from_arrays() 2012-05-09 - lavu 51.30.0 - samplefmt.h 142e740 - add av_samples_copy() 6d7f617 - add av_samples_set_silence() 2012-05-09 - a5117a2 - lavc 54.13.1 For audio formats with fixed frame size, the last frame no longer needs to be padded with silence, libavcodec will handle this internally (effectively all encoders behave as if they had CODEC_CAP_SMALL_LAST_FRAME set). 2012-05-07 - 828bd08 - lavc 54.13.0 - avcodec.h Add sample_rate and channel_layout fields to AVFrame. 2012-05-01 - 4010d72 - lavr 0.0.1 Change AV_MIX_COEFF_TYPE_Q6 to AV_MIX_COEFF_TYPE_Q8. 2012-04-25 - 3527a73 - lavu 51.29.0 - cpu.h Add av_parse_cpu_flags() 2012-04-24 - c8af852 - lavr 0.0.0 Add libavresample audio conversion library 2012-04-20 - 0c0d1bc - lavu 51.28.0 - audio_fifo.h Add audio FIFO functions: av_audio_fifo_free() av_audio_fifo_alloc() av_audio_fifo_realloc() av_audio_fifo_write() av_audio_fifo_read() av_audio_fifo_drain() av_audio_fifo_reset() av_audio_fifo_size() av_audio_fifo_space() 2012-04-14 - lavfi 2.16.0 - avfiltergraph.h d7bcc71 Add avfilter_graph_parse2(). 91d3cbe Add avfilter_inout_alloc() and avfilter_inout_free(). 2012-04-08 - 4d693b0 - lavu 51.27.0 - samplefmt.h Add av_get_packed_sample_fmt() and av_get_planar_sample_fmt() 2012-04-05 - 5cc51a5 - lavu 51.26.0 - audioconvert.h Add av_get_default_channel_layout() 2012-03-20 - 3c90cc2 - lavfo 54.2.0 Deprecate av_read_packet(), use av_read_frame() with AVFMT_FLAG_NOPARSE | AVFMT_FLAG_NOFILLIN in AVFormatContext.flags 2012-03-06 - 4d851f8 - lavu 51.25.0 - cpu.h Add av_set_cpu_flags_mask(). 2012-03-05 - lavc 54.8.0 6699d07 Add av_get_exact_bits_per_sample() 9524cf7 Add av_get_audio_frame_duration() 2012-03-04 - 44fe77b - lavc 54.7.0 - avcodec.h Add av_codec_is_encoder/decoder(). 2012-03-01 - 442c132 - lavc 54.3.0 - avcodec.h Add av_packet_shrink_side_data. 2012-02-29 - dd2a4bc - lavf 54.2.0 - avformat.h Add AVStream.attached_pic and AV_DISPOSITION_ATTACHED_PIC, used for dealing with attached pictures/cover art. 2012-02-25 - c9bca80 - lavu 51.24.0 - error.h Add AVERROR_UNKNOWN NOTE: this was backported to 0.8 2012-02-20 - e9cda85 - lavc 54.2.0 Add duration field to AVCodecParserContext 2012-02-20 - 0b42a93 - lavu 51.23.1 - mathematics.h Add av_rescale_q_rnd() 2012-02-08 - 38d5533 - lavu 51.22.1 - pixdesc.h Add PIX_FMT_PSEUDOPAL flag. 2012-02-08 - 52f82a1 - lavc 54.01.0 Add avcodec_encode_video2() and deprecate avcodec_encode_video(). 2012-02-01 - 316fc74 - lavc 54.01.0 Add av_fast_padded_malloc() as alternative for av_realloc() when aligned memory is required. The buffer will always have FF_INPUT_BUFFER_PADDING_SIZE