Never assume the API of libav* to be stable unless at least 1 month has passedsince the last major version increase or the API was added. The last version increases were:libavcodec: 2013-03-xxlibavdevice: 2013-03-xxlibavfilter: 2012-06-22libavformat: 2013-03-xxlibavresample: 2012-10-05libpostproc: 2011-04-18libswresample: 2011-09-19libswscale: 2011-06-20libavutil: 2012-10-22 API changes, most recent first: 2013-09-16 - c74c3fb / 3feb3d6 - lavu 52.44.100 / 52.15.0 - mem.h Add av_reallocp. 2013-09-04 - 3e1f507 - lavc 55.31.101 - avcodec.h avcodec_close() argument can be NULL. 2013-09-04 - 36cd017 - lavf 55.16.101 - avformat.h avformat_close_input() argument can be NULL and point on NULL. 2013-08-29 - e31db62 - lavf 55.15.100 - avformat.h Add av_format_get_probe_score(). 2013-08-15 - 1e0e193 - lsws 2.5.100 - Add a sws_dither AVOption, allowing to set the dither algorithm used 2013-08-xx - xxxxxxx - lavc 55.27.100 - vdpau.h Add a render2 alternative to the render callback function. 2013-08-xx - xxxxxxx - lavc 55.26.100 - vdpau.h Add allocation function for AVVDPAUContext, allowing to extend it in the future without breaking ABI/API. 2013-08-10 - 67a580f / 5a9a9d4 - lavc 55.25.100 / 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 - 9547e3e / f824535 - lavc 55.22.100 / 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 - 3b805dc / 549294f - lavc 55.21.100 / 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 - 4ee0984 / a0ad5d0 - lavu 52.41.100 / 52.14.0 - pixfmt.h Deprecate AV_PIX_FMT_VDPAU_*. Use AV_PIX_FMT_VDPAU instead. 2013-08-02 - 82fdfe8 / a8b1927 - lavc 55.20.100 / 55.11.0 - avcodec.h Add output_picture_number to AVCodecParserContext. 2013-07-23 - abc8110 - lavc 55.19.100 - avcodec.h Add avcodec_chroma_pos_to_enum() Add avcodec_enum_to_chroma_pos() 2013-07-03 - 838bd73 - lavfi 3.78.100 - avfilter.h Deprecate avfilter_graph_parse() in favor of the equivalent avfilter_graph_parse_ptr(). 2013-06-24 - af5f9c0 / 95d5246 - lavc 55.17.100 / 55.10.0 - avcodec.h Add MPEG-2 AAC profiles 2013-06-25 - 95d5246 - lavf 55.10.100 - avformat.h Add AV_DISPOSITION_* flags to indicate text track kind. 2013-06-15 - 99b8cd0 - lavu 52.36.100 Add AVRIPEMD: av_ripemd_alloc() av_ripemd_init() av_ripemd_update() av_ripemd_final() 2013-06-04 - 30b491f / fc962d4 - lavu 52.35.100 / 52.13.0 - mem.h Add av_realloc_array and av_reallocp_array 2013-05-30 - 682b227 - lavu 52.35.100 Add AVSHA512: av_sha512_alloc() av_sha512_init() av_sha512_update() av_sha512_final() 2013-05-24 - 8d4e969 / 129bb23 - lavfi 3.10.0 / 3.70.100 - 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 - fe40a9f / 2a6eaea - lavu 52.12.0 / 52.34.100 - cpu.h Add av_cpu_count() function for getting the number of logical CPUs. 2013-05-24 - 0c25c39 / b493847 - lavc 55.7.0 / 55.12.100 - avcodec.h Add picture_structure to AVCodecParserContext. 2013-05-17 - 3a751ea - lavu 52.33.100 - opt.h Add AV_OPT_TYPE_COLOR value to AVOptionType enum. 2013-05-13 - e398416 - lavu 52.31.100 - mem.h Add av_dynarray2_add(). 2013-05-12 - 1776177 - lavfi 3.65.100 Add AVFILTER_FLAG_SUPPORT_TIMELINE* filter flags. 2013-04-19 - 380cfce - lavc 55.4.100 Add AV_CODEC_PROP_TEXT_SUB property for text based subtitles codec. 2013-04-18 - 7c1a002 - lavf 55.3.100 The matroska demuxer can now output proper verbatim ASS packets. It will become the default starting lavf 56.0.100. 2013-04-10 - af0d270 - lavu 25.26.100 - avutil.h,opt.h Add av_int_list_length() and av_opt_set_int_list(). 2013-03-30 - 5c73645 - lavu 52.24.100 - samplefmt.h Add av_samples_alloc_array_and_samples(). 2013-03-29 - ef7b6b4 - lavf 55.1.100 - avformat.h Add av_guess_frame_rate() 2013-03-20 - 8d928a9 - lavu 52.22.100 - opt.h Add AV_OPT_TYPE_DURATION value to AVOptionType enum. 2013-03-17 - 7aa9af5 - lavu 52.20.100 - opt.h Add AV_OPT_TYPE_VIDEO_RATE value to AVOptionType enum. 2013-03-07 - 9767ec6 - lavu 52.18.100 - avstring.h,bprint.h Add av_escape() and av_bprint_escape() API. 2013-02-24 - b59cd08 - lavfi 3.41.100 - buffersink.h Add sample_rates field to AVABufferSinkParams. 2013-01-17 - a1a707f - lavf 54.61.100 Add av_codec_get_tag2(). 2013-01-01 - 2eb2e17 - lavfi 3.34.100 Add avfilter_get_audio_buffer_ref_from_arrays_channels. 2012-12-20 - 34de47aa - lavfi 3.29.100 - avfilter.h Add AVFilterLink.channels, avfilter_link_get_channels() and avfilter_ref_get_channels(). 2012-12-15 - 96d815fc - lavc 54.80.100 - avcodec.h Add pkt_size field to AVFrame. 2012-11-25 - c70ec631 - lavu 52.9.100 - opt.h Add the following convenience functions to opt.h: av_opt_get_image_size av_opt_get_pixel_fmt av_opt_get_sample_fmt av_opt_set_image_size av_opt_set_pixel_fmt av_opt_set_sample_fmt 2012-11-17 - 4cd74c81 - lavu 52.8.100 - bprint.h Add av_bprint_strftime(). 2012-11-15 - 92648107 - lavu 52.7.100 - opt.h Add av_opt_get_key_value(). 2012-11-13 - 79456652 - lavfi 3.23.100 - avfilter.h Add channels field to AVFilterBufferRefAudioProps. 2012-11-03 - 481fdeee - lavu 52.3.100 - opt.h Add AV_OPT_TYPE_SAMPLE_FMT value to AVOptionType enum. 2012-10-21 - 6fb2fd8 - lavc 54.68.100 - avcodec.h lavfi 3.20.100 - avfilter.h Add AV_PKT_DATA_STRINGS_METADATA side data type, used to transmit key/value strings between AVPacket and AVFrame, and add metadata field to AVCodecContext (which shall not be accessed by users; see AVFrame metadata instead). 2012-09-27 - a70b493 - lavd 54.3.100 - version.h Add LIBAVDEVICE_IDENT symbol. 2012-09-27 - a70b493 - lavfi 3.18.100 - version.h Add LIBAVFILTER_IDENT symbol. 2012-09-27 - a70b493 - libswr 0.16.100 - version.h Add LIBSWRESAMPLE_VERSION, LIBSWRESAMPLE_BUILD and LIBSWRESAMPLE_IDENT symbols. 2012-09-06 - 29e972f - lavu 51.72.100 - parseutils.h Add av_small_strptime() time parsing function. Can be used as a stripped-down replacement for strptime(), on systems which do not support it. 2012-08-25 - 2626cc4 - lavf 54.28.100 Matroska demuxer now identifies SRT subtitles as AV_CODEC_ID_SUBRIP instead of AV_CODEC_ID_TEXT. 2012-08-13 - 5c0d8bc - lavfi 3.8.100 - avfilter.h Add avfilter_get_class() function, and priv_class field to AVFilter struct. 2012-08-12 - a25346e - lavu 51.69.100 - opt.h Add AV_OPT_FLAG_FILTERING_PARAM symbol in opt.h. 2012-07-31 - 23fc4dd - lavc 54.46.100 Add channels field to AVFrame. 2012-07-30 - f893904 - lavu 51.66.100 Add av_get_channel_description() and av_get_standard_channel_layout() functions. 2012-07-21 - 016a472 - lavc 54.43.100 Add decode_error_flags field to AVFrame. 2012-07-20 - b062936 - lavf 54.18.100 Add avformat_match_stream_specifier() function. 2012-07-14 - f49ec1b - lavc 54.38.100 - avcodec.h Add metadata to AVFrame, and the accessor functions av_frame_get_metadata() and av_frame_set_metadata(). 2012-07-10 - 0e003d8 - lavc 54.33.100 Add av_fast_padded_mallocz(). 2012-07-10 - 21d5609 - lavfi 3.2.0 - avfilter.h Add init_opaque() callback to AVFilter struct. 2012-06-26 - e6674e4 - lavu 51.63.100 - imgutils.h Add functions to libavutil/imgutils.h: av_image_get_buffer_size() av_image_fill_arrays() av_image_copy_to_buffer() 2012-06-24 - c41899a - lavu 51.62.100 - version.h version moved from avutil.h to version.h 2012-04-11 - 359abb1 - lavu 51.58.100 - error.h Add av_make_error_string() and av_err2str() utilities to libavutil/error.h. 2012-06-05 - 62b39d4 - lavc 54.24.100 Add pkt_duration field to AVFrame. 2012-05-24 - f2ee065 - lavu 51.54.100 Move AVPALETTE_SIZE and AVPALETTE_COUNT macros from libavcodec/avcodec.h to libavutil/pixfmt.h. 2012-05-14 - 94a9ac1 - lavf 54.5.100 Add av_guess_sample_aspect_ratio() function. 2012-04-20 - 65fa7bc - lavfi 2.70.100 Add avfilter_unref_bufferp() to avfilter.h. 2012-04-13 - 162e400 - lavfi 2.68.100 Install libavfilter/asrc_abuffer.h public header. 2012-03-26 - a67d9cf - lavfi 2.66.100 Add avfilter_fill_frame_from_{audio_,}buffer_ref() functions. 2013-05-15 - ff46809 / e6c4ac7 - lavu 52.32.100 / 52.11.0 - pixdesc.h Replace PIX_FMT_* flags with AV_PIX_FMT_FLAG_*. 2013-04-03 - 6fc58a8 / 507b1e4 - lavc 55.7.100 / 55.4.0 - avcodec.h Add field_order to AVCodecParserContext. 2013-04-19 - f4b05cd / 5e83d9a - lavc 55.5.100 / 55.2.0 - avcodec.h Add CODEC_FLAG_UNALIGNED to allow decoders to produce unaligned output. 2013-04-11 - lavfi 3.53.100 / 3.8.0 231fd44 / 38f0c07 - Move all content from avfiltergraph.h to avfilter.h. Deprecate avfilterhraph.h, user applications should include just avfilter.h 86070b8 / bc1a985 - Add avfilter_graph_alloc_filter(), deprecate avfilter_open() and avfilter_graph_add_filter(). 4fde705 / 1113672 - Add AVFilterContext.graph pointing to the AVFilterGraph that contains the filter. 710b0aa / 48a5ada - Add avfilter_init_str(), deprecate avfilter_init_filter(). 46de9ba / 1ba95a9 - Add avfilter_init_dict(). 16fc24b / 7cdd737 - Add AVFilter.flags field and AVFILTER_FLAG_DYNAMIC_{INPUTS,OUTPUTS} flags. f4db6bf / 7e8fe4b - Add avfilter_pad_count() for counting filter inputs/outputs. 835cc0f / fa2a34c - Add avfilter_next(), deprecate av_filter_next(). Deprecate avfilter_uninit(). 2013-04-09 - lavfi 3.51.100 / 3.7.0 - avfilter.h 0594ef0 / b439c99 - Add AVFilter.priv_class for exporting filter options through the AVOptions API in the similar way private options work in lavc and lavf. 44d4488 / 8114c10 - Add avfilter_get_class(). Switch all filters to use AVOptions. 2013-03-19 - 17ebef2 / 2c328a9 - lavu 52.20.100 / 52.9.0 - pixdesc.h Add av_pix_fmt_count_planes() function for counting planes in a pixel format. 2013-03-16 - ecade98 / 42c7c61 - lavfi 3.47.100 / 3.6.0 Add AVFilterGraph.nb_filters, deprecate AVFilterGraph.filter_count. 2013-03-08 - Reference counted buffers - lavu 52.8.0, lavc 55.0.100 / 55.0.0, lavf 55.0.100 / 55.0.0,lavd 54.4.100 / 54.0.0, lavfi 3.5.0 36099df / 8e401db, 532f31a / 1cec062 - add a new API for reference counted buffers and buffer pools (new header libavutil/buffer.h). 2653e12 / 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. c4e8821 / 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. 80e9e63 / 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. a05a44e / 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 - 6c17ff8 / 12c5c1d - lavu 52.19.100 / 52.8.0 - avstring.h Add av_isdigit, av_isgraph, av_isspace, av_isxdigit. 2013-02-23 - 71cf094 / 9f12235 - lavfi 3.40.100 / 3.4.0 - avfiltergraph.h Add resample_lavr_opts to AVFilterGraph for setting libavresample options for auto-inserted resample filters. 2013-01-25 - e7e14bc / 38c1466 - lavu 52.17.100 / 52.7.0 - dict.h Add av_dict_parse_string() to set multiple key/value pairs at once from a string. 2013-01-25 - 25be630 / b85a5e8 - lavu 52.16.100 / 52.6.0 - avstring.h Add av_strnstr() 2013-01-15 - e7e0186 / 8ee288d - lavu 52.15.100 / 52.5.0 - hmac.h Add AVHMAC. 2013-01-13 - 8ee7b38 / 44e065d - lavc 54.87.100 / 54.36.0 - vdpau.h Add AVVDPAUContext struct for VDPAU hardware-accelerated decoding. 2013-01-12 - dae382b / 169fb94 - lavu 52.14.100 / 52.4.0 - pixdesc.h Add AV_PIX_FMT_VDPAU flag. 2013-01-07 - 249fca3 / 074a00d - lavr 1.1.0 Add avresample_set_channel_mapping() for input channel reordering, duplication, and silencing. 2012-12-29 - 2ce43b3 / d8fd06c - lavu 52.13.100 / 52.3.0 - avstring.h Add av_basename() and av_dirname(). 2012-11-11 - 03b0787 / 5980f5d - lavu 52.6.100 / 52.2.0 - audioconvert.h Rename audioconvert.h to channel_layout.h. audioconvert.h is now deprecated. 2012-11-05 - 7d26be6 / dfde8a3 - lavu 52.5.100 / 52.1.0 - intmath.h Add av_ctz() for trailing zero bit count 2012-10-21 - e3a91c5 / a893655 - lavu 51.77.100 / 51.45.0 - error.h Add AVERROR_EXPERIMENTAL 2012-10-12 - a33ed6b / d2fcb35 - lavu 51.76.100 / 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 - f391e40 / 9a92aea - lavu 51.75.100 / 51.43.0 - aes.h, md5.h, sha.h, tree.h Add functions for allocating the opaque contexts for the algorithms, 2012-10-10 - de31814 / b522000 - lavf 54.32.100 / 54.18.0 - avio.h Add avio_closep to complement avio_close. 2012-10-08 - ae77266 / 78071a1 - lavu 51.74.100 / 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 - 55c49af / 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 - 46a3595 / a42aada - lavc 54.59.100 / 54.28.0 - avcodec.h Add avcodec_free_frame(). This function must now be used for freeing an AVFrame. 2012-09-12 - e3e09f2 / 8919fee - lavu 51.73.100 / 51.41.0 - audioconvert.h Added AV_CH_LOW_FREQUENCY_2 channel mask value. 2012-09-04 - b21b5b0 / 686a329 - lavu 51.71.100 / 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 - 98298eb / a231832 - lavc 54.54.101 / 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. f5f3684 / c223d79 - Add an AVCodecDescriptor struct and functions avcodec_descriptor_get() and avcodec_descriptor_next(). f5f3684 / 51efed1 - Add AVCodecDescriptor.props and AV_CODEC_PROP_INTRA_ONLY. 6c180b3 / 91e59fe - Add avcodec_descriptor_get_by_name(). 2012-08-08 - f5f3684 / 987170c - lavu 51.68.100 / 51.38.0 - dict.h Add av_dict_count(). 2012-08-07 - 7a72695 / 104e10f - lavc 54.51.100 / 54.25.0 - 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 - e776ee8 / 239fdf1 - lavu 51.66.101 / 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 - 7c26761 / 681ed00 - lavf 54.22.100 / 54.13.0 - avformat.h Add AVFMT_FLAG_NOBUFFER for low latency use cases. 2012-07-10 - f3e5e6f - lavu 51.37.0 Add av_malloc_array() and av_mallocz_array() 2012-06-22 - e847f41 / d3d3a32 - lavu 51.61.100 / 51.34.0 Add av_usleep() 2012-06-20 - 4da42eb / ae0a301 - lavu 51.60.100 / 51.33.0 Move av_gettime() to libavutil, add libavutil/time.h 2012-06-09 - 82edf67 / 3971be0 - lavr 0.0.3 Add a parameter to avresample_build_matrix() for Dolby/DPLII downmixing. 2012-06-12 - c7b9eab / 9baeff9 - lavfi 2.79.100 / 2.23.0 - avfilter.h Add AVFilterContext.nb_inputs/outputs. Deprecate AVFilterContext.input/output_count. 2012-06-12 - c7b9eab / 84b9fbe - lavfi 2.79.100 / 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 - 3630a07 / b0f0dfc - lavu 51.57.100 / 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 - 53ce990 / 154486f - lavu 51.55.100 / 51.31.0 - opt.h Add av_opt_set_bin() 2012-05-15 - lavfi 2.74.100 / 2.17.0 Add support for audio filters 61930bd / ac71230, 1cbf7fb / a2cd9be - add video/audio buffer sink in a new installed header buffersink.h 1cbf7fb / 720c6b7 - add av_buffersrc_write_frame(), deprecate av_vsrc_buffer_add_frame() 61930bd / ab16504 - add avfilter_copy_buf_props() 61930bd / 9453c9e - add extended_data to AVFilterBuffer 61930bd / 1b8c927 - add avfilter_get_audio_buffer_ref_from_arrays() 2012-05-09 - lavu 51.53.100 / 51.30.0 - samplefmt.h 61930bd / 142e740 - add av_samples_copy() 61930bd / 6d7f617 - add av_samples_set_silence() 2012-05-09 - 61930bd / a5117a2 - lavc 54.21.101 / 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 - 653d117 / 828bd08 - lavc 54.20.100 / 54.13.0 - avcodec.h Add sample_rate and channel_layout fields to AVFrame. 2012-05-01 - 2330eb1 / 4010d72 - lavr 0.0.1 Change AV_MIX_COEFF_TYPE_Q6 to AV_MIX_COEFF_TYPE_Q8. 2012-04-25 - e890b68 / 3527a73 - lavu 51.48.100 / 51.29.0 - cpu.h Add av_parse_cpu_flags() 2012-04-24 - 3ead79e / c8af852 - lavr 0.0.0 Add libavresample audio conversion library 2012-04-20 - 3194ab7 / 0c0d1bc - lavu 51.47.100 / 51.28.0 - audio_fifo.h Add audio FIFO functions: av_audio_fifo_free() av_audio_fifo_alloc()Lines 1–500 of 1725. Load more
Never assume the API of libav* to be stable unless at least 1 month has passed since the last major version increase or the API was added. The last version increases were: libavcodec: 2013-03-xx libavdevice: 2013-03-xx libavfilter: 2012-06-22 libavformat: 2013-03-xx libavresample: 2012-10-05 libpostproc: 2011-04-18 libswresample: 2011-09-19 libswscale: 2011-06-20 libavutil: 2012-10-22 API changes, most recent first: 2013-09-16 - c74c3fb / 3feb3d6 - lavu 52.44.100 / 52.15.0 - mem.h Add av_reallocp. 2013-09-04 - 3e1f507 - lavc 55.31.101 - avcodec.h avcodec_close() argument can be NULL. 2013-09-04 - 36cd017 - lavf 55.16.101 - avformat.h avformat_close_input() argument can be NULL and point on NULL. 2013-08-29 - e31db62 - lavf 55.15.100 - avformat.h Add av_format_get_probe_score(). 2013-08-15 - 1e0e193 - lsws 2.5.100 - Add a sws_dither AVOption, allowing to set the dither algorithm used 2013-08-xx - xxxxxxx - lavc 55.27.100 - vdpau.h Add a render2 alternative to the render callback function. 2013-08-xx - xxxxxxx - lavc 55.26.100 - vdpau.h Add allocation function for AVVDPAUContext, allowing to extend it in the future without breaking ABI/API. 2013-08-10 - 67a580f / 5a9a9d4 - lavc 55.25.100 / 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 - 9547e3e / f824535 - lavc 55.22.100 / 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 - 3b805dc / 549294f - lavc 55.21.100 / 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 - 4ee0984 / a0ad5d0 - lavu 52.41.100 / 52.14.0 - pixfmt.h Deprecate AV_PIX_FMT_VDPAU_*. Use AV_PIX_FMT_VDPAU instead. 2013-08-02 - 82fdfe8 / a8b1927 - lavc 55.20.100 / 55.11.0 - avcodec.h Add output_picture_number to AVCodecParserContext. 2013-07-23 - abc8110 - lavc 55.19.100 - avcodec.h Add avcodec_chroma_pos_to_enum() Add avcodec_enum_to_chroma_pos() 2013-07-03 - 838bd73 - lavfi 3.78.100 - avfilter.h Deprecate avfilter_graph_parse() in favor of the equivalent avfilter_graph_parse_ptr(). 2013-06-24 - af5f9c0 / 95d5246 - lavc 55.17.100 / 55.10.0 - avcodec.h Add MPEG-2 AAC profiles 2013-06-25 - 95d5246 - lavf 55.10.100 - avformat.h Add AV_DISPOSITION_* flags to indicate text track kind. 2013-06-15 - 99b8cd0 - lavu 52.36.100 Add AVRIPEMD: av_ripemd_alloc() av_ripemd_init() av_ripemd_update() av_ripemd_final() 2013-06-04 - 30b491f / fc962d4 - lavu 52.35.100 / 52.13.0 - mem.h Add av_realloc_array and av_reallocp_array 2013-05-30 - 682b227 - lavu 52.35.100 Add AVSHA512: av_sha512_alloc() av_sha512_init() av_sha512_update() av_sha512_final() 2013-05-24 - 8d4e969 / 129bb23 - lavfi 3.10.0 / 3.70.100 - 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 - fe40a9f / 2a6eaea - lavu 52.12.0 / 52.34.100 - cpu.h Add av_cpu_count() function for getting the number of logical CPUs. 2013-05-24 - 0c25c39 / b493847 - lavc 55.7.0 / 55.12.100 - avcodec.h Add picture_structure to AVCodecParserContext. 2013-05-17 - 3a751ea - lavu 52.33.100 - opt.h Add AV_OPT_TYPE_COLOR value to AVOptionType enum. 2013-05-13 - e398416 - lavu 52.31.100 - mem.h Add av_dynarray2_add(). 2013-05-12 - 1776177 - lavfi 3.65.100 Add AVFILTER_FLAG_SUPPORT_TIMELINE* filter flags. 2013-04-19 - 380cfce - lavc 55.4.100 Add AV_CODEC_PROP_TEXT_SUB property for text based subtitles codec. 2013-04-18 - 7c1a002 - lavf 55.3.100 The matroska demuxer can now output proper verbatim ASS packets. It will become the default starting lavf 56.0.100. 2013-04-10 - af0d270 - lavu 25.26.100 - avutil.h,opt.h Add av_int_list_length() and av_opt_set_int_list(). 2013-03-30 - 5c73645 - lavu 52.24.100 - samplefmt.h Add av_samples_alloc_array_and_samples(). 2013-03-29 - ef7b6b4 - lavf 55.1.100 - avformat.h Add av_guess_frame_rate() 2013-03-20 - 8d928a9 - lavu 52.22.100 - opt.h Add AV_OPT_TYPE_DURATION value to AVOptionType enum. 2013-03-17 - 7aa9af5 - lavu 52.20.100 - opt.h Add AV_OPT_TYPE_VIDEO_RATE value to AVOptionType enum. 2013-03-07 - 9767ec6 - lavu 52.18.100 - avstring.h,bprint.h Add av_escape() and av_bprint_escape() API. 2013-02-24 - b59cd08 - lavfi 3.41.100 - buffersink.h Add sample_rates field to AVABufferSinkParams. 2013-01-17 - a1a707f - lavf 54.61.100 Add av_codec_get_tag2(). 2013-01-01 - 2eb2e17 - lavfi 3.34.100 Add avfilter_get_audio_buffer_ref_from_arrays_channels. 2012-12-20 - 34de47aa - lavfi 3.29.100 - avfilter.h Add AVFilterLink.channels, avfilter_link_get_channels() and avfilter_ref_get_channels(). 2012-12-15 - 96d815fc - lavc 54.80.100 - avcodec.h Add pkt_size field to AVFrame. 2012-11-25 - c70ec631 - lavu 52.9.100 - opt.h Add the following convenience functions to opt.h: av_opt_get_image_size av_opt_get_pixel_fmt av_opt_get_sample_fmt av_opt_set_image_size av_opt_set_pixel_fmt av_opt_set_sample_fmt 2012-11-17 - 4cd74c81 - lavu 52.8.100 - bprint.h Add av_bprint_strftime(). 2012-11-15 - 92648107 - lavu 52.7.100 - opt.h Add av_opt_get_key_value(). 2012-11-13 - 79456652 - lavfi 3.23.100 - avfilter.h Add channels field to AVFilterBufferRefAudioProps. 2012-11-03 - 481fdeee - lavu 52.3.100 - opt.h Add AV_OPT_TYPE_SAMPLE_FMT value to AVOptionType enum. 2012-10-21 - 6fb2fd8 - lavc 54.68.100 - avcodec.h lavfi 3.20.100 - avfilter.h Add AV_PKT_DATA_STRINGS_METADATA side data type, used to transmit key/value strings between AVPacket and AVFrame, and add metadata field to AVCodecContext (which shall not be accessed by users; see AVFrame metadata instead). 2012-09-27 - a70b493 - lavd 54.3.100 - version.h Add LIBAVDEVICE_IDENT symbol. 2012-09-27 - a70b493 - lavfi 3.18.100 - version.h Add LIBAVFILTER_IDENT symbol. 2012-09-27 - a70b493 - libswr 0.16.100 - version.h Add LIBSWRESAMPLE_VERSION, LIBSWRESAMPLE_BUILD and LIBSWRESAMPLE_IDENT symbols. 2012-09-06 - 29e972f - lavu 51.72.100 - parseutils.h Add av_small_strptime() time parsing function. Can be used as a stripped-down replacement for strptime(), on systems which do not support it. 2012-08-25 - 2626cc4 - lavf 54.28.100 Matroska demuxer now identifies SRT subtitles as AV_CODEC_ID_SUBRIP instead of AV_CODEC_ID_TEXT. 2012-08-13 - 5c0d8bc - lavfi 3.8.100 - avfilter.h Add avfilter_get_class() function, and priv_class field to AVFilter struct. 2012-08-12 - a25346e - lavu 51.69.100 - opt.h Add AV_OPT_FLAG_FILTERING_PARAM symbol in opt.h. 2012-07-31 - 23fc4dd - lavc 54.46.100 Add channels field to AVFrame. 2012-07-30 - f893904 - lavu 51.66.100 Add av_get_channel_description() and av_get_standard_channel_layout() functions. 2012-07-21 - 016a472 - lavc 54.43.100 Add decode_error_flags field to AVFrame. 2012-07-20 - b062936 - lavf 54.18.100 Add avformat_match_stream_specifier() function. 2012-07-14 - f49ec1b - lavc 54.38.100 - avcodec.h Add metadata to AVFrame, and the accessor functions av_frame_get_metadata() and av_frame_set_metadata(). 2012-07-10 - 0e003d8 - lavc 54.33.100 Add av_fast_padded_mallocz(). 2012-07-10 - 21d5609 - lavfi 3.2.0 - avfilter.h Add init_opaque() callback to AVFilter struct. 2012-06-26 - e6674e4 - lavu 51.63.100 - imgutils.h Add functions to libavutil/imgutils.h: av_image_get_buffer_size() av_image_fill_arrays() av_image_copy_to_buffer() 2012-06-24 - c41899a - lavu 51.62.100 - version.h version moved from avutil.h to version.h 2012-04-11 - 359abb1 - lavu 51.58.100 - error.h Add av_make_error_string() and av_err2str() utilities to libavutil/error.h. 2012-06-05 - 62b39d4 - lavc 54.24.100 Add pkt_duration field to AVFrame. 2012-05-24 - f2ee065 - lavu 51.54.100 Move AVPALETTE_SIZE and AVPALETTE_COUNT macros from libavcodec/avcodec.h to libavutil/pixfmt.h. 2012-05-14 - 94a9ac1 - lavf 54.5.100 Add av_guess_sample_aspect_ratio() function. 2012-04-20 - 65fa7bc - lavfi 2.70.100 Add avfilter_unref_bufferp() to avfilter.h. 2012-04-13 - 162e400 - lavfi 2.68.100 Install libavfilter/asrc_abuffer.h public header. 2012-03-26 - a67d9cf - lavfi 2.66.100 Add avfilter_fill_frame_from_{audio_,}buffer_ref() functions. 2013-05-15 - ff46809 / e6c4ac7 - lavu 52.32.100 / 52.11.0 - pixdesc.h Replace PIX_FMT_* flags with AV_PIX_FMT_FLAG_*. 2013-04-03 - 6fc58a8 / 507b1e4 - lavc 55.7.100 / 55.4.0 - avcodec.h Add field_order to AVCodecParserContext. 2013-04-19 - f4b05cd / 5e83d9a - lavc 55.5.100 / 55.2.0 - avcodec.h Add CODEC_FLAG_UNALIGNED to allow decoders to produce unaligned output. 2013-04-11 - lavfi 3.53.100 / 3.8.0 231fd44 / 38f0c07 - Move all content from avfiltergraph.h to avfilter.h. Deprecate avfilterhraph.h, user applications should include just avfilter.h 86070b8 / bc1a985 - Add avfilter_graph_alloc_filter(), deprecate avfilter_open() and avfilter_graph_add_filter(). 4fde705 / 1113672 - Add AVFilterContext.graph pointing to the AVFilterGraph that contains the filter. 710b0aa / 48a5ada - Add avfilter_init_str(), deprecate avfilter_init_filter(). 46de9ba / 1ba95a9 - Add avfilter_init_dict(). 16fc24b / 7cdd737 - Add AVFilter.flags field and AVFILTER_FLAG_DYNAMIC_{INPUTS,OUTPUTS} flags. f4db6bf / 7e8fe4b - Add avfilter_pad_count() for counting filter inputs/outputs. 835cc0f / fa2a34c - Add avfilter_next(), deprecate av_filter_next(). Deprecate avfilter_uninit(). 2013-04-09 - lavfi 3.51.100 / 3.7.0 - avfilter.h 0594ef0 / b439c99 - Add AVFilter.priv_class for exporting filter options through the AVOptions API in the similar way private options work in lavc and lavf. 44d4488 / 8114c10 - Add avfilter_get_class(). Switch all filters to use AVOptions. 2013-03-19 - 17ebef2 / 2c328a9 - lavu 52.20.100 / 52.9.0 - pixdesc.h Add av_pix_fmt_count_planes() function for counting planes in a pixel format. 2013-03-16 - ecade98 / 42c7c61 - lavfi 3.47.100 / 3.6.0 Add AVFilterGraph.nb_filters, deprecate AVFilterGraph.filter_count. 2013-03-08 - Reference counted buffers - lavu 52.8.0, lavc 55.0.100 / 55.0.0, lavf 55.0.100 / 55.0.0, lavd 54.4.100 / 54.0.0, lavfi 3.5.0 36099df / 8e401db, 532f31a / 1cec062 - add a new API for reference counted buffers and buffer pools (new header libavutil/buffer.h). 2653e12 / 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. c4e8821 / 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. 80e9e63 / 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. a05a44e / 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 - 6c17ff8 / 12c5c1d - lavu 52.19.100 / 52.8.0 - avstring.h Add av_isdigit, av_isgraph, av_isspace, av_isxdigit. 2013-02-23 - 71cf094 / 9f12235 - lavfi 3.40.100 / 3.4.0 - avfiltergraph.h Add resample_lavr_opts to AVFilterGraph for setting libavresample options for auto-inserted resample filters. 2013-01-25 - e7e14bc / 38c1466 - lavu 52.17.100 / 52.7.0 - dict.h Add av_dict_parse_string() to set multiple key/value pairs at once from a string. 2013-01-25 - 25be630 / b85a5e8 - lavu 52.16.100 / 52.6.0 - avstring.h Add av_strnstr() 2013-01-15 - e7e0186 / 8ee288d - lavu 52.15.100 / 52.5.0 - hmac.h Add AVHMAC. 2013-01-13 - 8ee7b38 / 44e065d - lavc 54.87.100 / 54.36.0 - vdpau.h Add AVVDPAUContext struct for VDPAU hardware-accelerated decoding. 2013-01-12 - dae382b / 169fb94 - lavu 52.14.100 / 52.4.0 - pixdesc.h Add AV_PIX_FMT_VDPAU flag. 2013-01-07 - 249fca3 / 074a00d - lavr 1.1.0 Add avresample_set_channel_mapping() for input channel reordering, duplication, and silencing. 2012-12-29 - 2ce43b3 / d8fd06c - lavu 52.13.100 / 52.3.0 - avstring.h Add av_basename() and av_dirname(). 2012-11-11 - 03b0787 / 5980f5d - lavu 52.6.100 / 52.2.0 - audioconvert.h Rename audioconvert.h to channel_layout.h. audioconvert.h is now deprecated. 2012-11-05 - 7d26be6 / dfde8a3 - lavu 52.5.100 / 52.1.0 - intmath.h Add av_ctz() for trailing zero bit count 2012-10-21 - e3a91c5 / a893655 - lavu 51.77.100 / 51.45.0 - error.h Add AVERROR_EXPERIMENTAL 2012-10-12 - a33ed6b / d2fcb35 - lavu 51.76.100 / 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 - f391e40 / 9a92aea - lavu 51.75.100 / 51.43.0 - aes.h, md5.h, sha.h, tree.h Add functions for allocating the opaque contexts for the algorithms, 2012-10-10 - de31814 / b522000 - lavf 54.32.100 / 54.18.0 - avio.h Add avio_closep to complement avio_close. 2012-10-08 - ae77266 / 78071a1 - lavu 51.74.100 / 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 - 55c49af / 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 - 46a3595 / a42aada - lavc 54.59.100 / 54.28.0 - avcodec.h Add avcodec_free_frame(). This function must now be used for freeing an AVFrame. 2012-09-12 - e3e09f2 / 8919fee - lavu 51.73.100 / 51.41.0 - audioconvert.h Added AV_CH_LOW_FREQUENCY_2 channel mask value. 2012-09-04 - b21b5b0 / 686a329 - lavu 51.71.100 / 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 - 98298eb / a231832 - lavc 54.54.101 / 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. f5f3684 / c223d79 - Add an AVCodecDescriptor struct and functions avcodec_descriptor_get() and avcodec_descriptor_next(). f5f3684 / 51efed1 - Add AVCodecDescriptor.props and AV_CODEC_PROP_INTRA_ONLY. 6c180b3 / 91e59fe - Add avcodec_descriptor_get_by_name(). 2012-08-08 - f5f3684 / 987170c - lavu 51.68.100 / 51.38.0 - dict.h Add av_dict_count(). 2012-08-07 - 7a72695 / 104e10f - lavc 54.51.100 / 54.25.0 - 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 - e776ee8 / 239fdf1 - lavu 51.66.101 / 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 - 7c26761 / 681ed00 - lavf 54.22.100 / 54.13.0 - avformat.h Add AVFMT_FLAG_NOBUFFER for low latency use cases. 2012-07-10 - f3e5e6f - lavu 51.37.0 Add av_malloc_array() and av_mallocz_array() 2012-06-22 - e847f41 / d3d3a32 - lavu 51.61.100 / 51.34.0 Add av_usleep() 2012-06-20 - 4da42eb / ae0a301 - lavu 51.60.100 / 51.33.0 Move av_gettime() to libavutil, add libavutil/time.h 2012-06-09 - 82edf67 / 3971be0 - lavr 0.0.3 Add a parameter to avresample_build_matrix() for Dolby/DPLII downmixing. 2012-06-12 - c7b9eab / 9baeff9 - lavfi 2.79.100 / 2.23.0 - avfilter.h Add AVFilterContext.nb_inputs/outputs. Deprecate AVFilterContext.input/output_count. 2012-06-12 - c7b9eab / 84b9fbe - lavfi 2.79.100 / 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 - 3630a07 / b0f0dfc - lavu 51.57.100 / 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 - 53ce990 / 154486f - lavu 51.55.100 / 51.31.0 - opt.h Add av_opt_set_bin() 2012-05-15 - lavfi 2.74.100 / 2.17.0 Add support for audio filters 61930bd / ac71230, 1cbf7fb / a2cd9be - add video/audio buffer sink in a new installed header buffersink.h 1cbf7fb / 720c6b7 - add av_buffersrc_write_frame(), deprecate av_vsrc_buffer_add_frame() 61930bd / ab16504 - add avfilter_copy_buf_props() 61930bd / 9453c9e - add extended_data to AVFilterBuffer 61930bd / 1b8c927 - add avfilter_get_audio_buffer_ref_from_arrays() 2012-05-09 - lavu 51.53.100 / 51.30.0 - samplefmt.h 61930bd / 142e740 - add av_samples_copy() 61930bd / 6d7f617 - add av_samples_set_silence() 2012-05-09 - 61930bd / a5117a2 - lavc 54.21.101 / 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 - 653d117 / 828bd08 - lavc 54.20.100 / 54.13.0 - avcodec.h Add sample_rate and channel_layout fields to AVFrame. 2012-05-01 - 2330eb1 / 4010d72 - lavr 0.0.1 Change AV_MIX_COEFF_TYPE_Q6 to AV_MIX_COEFF_TYPE_Q8. 2012-04-25 - e890b68 / 3527a73 - lavu 51.48.100 / 51.29.0 - cpu.h Add av_parse_cpu_flags() 2012-04-24 - 3ead79e / c8af852 - lavr 0.0.0 Add libavresample audio conversion library 2012-04-20 - 3194ab7 / 0c0d1bc - lavu 51.47.100 / 51.28.0 - audio_fifo.h Add audio FIFO functions: av_audio_fifo_free() av_audio_fifo_alloc()