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 - 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 zero-padded bytes at the end. 2012-01-31 - dd6d3b0 - lavf 54.01.0 Add avformat_get_riff_video_tags() and avformat_get_riff_audio_tags(). NOTE: this was backported to 0.8 2012-01-31 - af08d9a - lavc 54.01.0 Add avcodec_is_open() function. NOTE: this was backported to 0.8 2012-01-30 - 8b93312 - lavu 51.22.0 - intfloat.h Add a new installed header libavutil/intfloat.h with int/float punning functions. NOTE: this was backported to 0.8 2012-01-25 - lavf 53.22.0 f1caf01 Allow doing av_write_frame(ctx, NULL) for flushing possible buffered data within a muxer. Added AVFMT_ALLOW_FLUSH for muxers supporting it (av_write_frame makes sure it is called only for muxers with this flag). ------------------------------8<------------------------------------- 0.8 branch was cut here ----------------------------->8-------------------------------------- 2012-01-15 - lavc 53.34.0 New audio encoding API: b2c75b6 Add CODEC_CAP_VARIABLE_FRAME_SIZE capability for use by audio encoders. 5ee5fa0 Add avcodec_fill_audio_frame() as a convenience function. b2c75b6 Add avcodec_encode_audio2() and deprecate avcodec_encode_audio(). Add AVCodec.encode2(). 2012-01-12 - 3167dc9 - lavfi 2.15.0 Add a new installed header -- libavfilter/version.h -- with version macros. 2011-01-03 - b73ec05 - lavu 51.21.0 Add av_popcount64 2011-12-25 - lavfi 2.14.0 e1d9dbf Add a new installed header - buffersrc.h It contains a new function av_buffersrc_buffer() that allows passing frames to the 'buffer' filter, but unlike av_vsrc_buffer_add_frame() it allows for direct rendering. 1c9e340 Add avfilter_copy_frame_props() for copying properties from AVFrame to AVFilterBufferRef. 2011-12-25 - lavc 53.31.0 Add the following new fields to AVFrame: b58dbb5 sample_aspect_ratio 3a2ddf7 width, height 8a4a5f6 format 2011-12-18 - 8400b12 - lavc 53.28.1 Deprecate AVFrame.age. The field is unused. 2011-12-12 - 5266045 - lavf 53.17.0 Add avformat_close_input(). Deprecate av_close_input_file() and av_close_input_stream(). 2011-12-02 - 0eea212 - lavc 53.25.0 Add nb_samples and extended_data fields to AVFrame. Deprecate AVCODEC_MAX_AUDIO_FRAME_SIZE. Deprecate avcodec_decode_audio3() in favor of avcodec_decode_audio4(). avcodec_decode_audio4() writes output samples to an AVFrame, which allows audio decoders to use get_buffer(). 2011-12-04 - 560f773 - lavc 53.24.0 Change AVFrame.data[4]/base[4]/linesize[4]/error[4] to [8] at next major bump. Change AVPicture.data[4]/linesize[4] to [8] at next major bump. Change AVCodecContext.error[4] to [8] at next major bump. Add AV_NUM_DATA_POINTERS to simplify the bump transition. 2011-11-23 - bbb46f3 - lavu 51.18.0 Add av_samples_get_buffer_size(), av_samples_fill_arrays(), and av_samples_alloc(), to samplefmt.h. 2011-11-23 - 8889cc4 - lavu 51.17.0 Add planar sample formats and av_sample_fmt_is_planar() to samplefmt.h. 2011-11-19 - f3a29b7 - lavc 53.21.0 Move some AVCodecContext fields to a new private struct, AVCodecInternal, which is accessed from a new field, AVCodecContext.internal. - fields moved: AVCodecContext.internal_buffer --> AVCodecInternal.buffer AVCodecContext.internal_buffer_count --> AVCodecInternal.buffer_count AVCodecContext.is_copy --> AVCodecInternal.is_copy 2011-11-16 - 6270671 - lavu 51.16.0 Add av_timegm() 2011-11-13 - lavf 53.15.0 New interrupt callback API, allowing per-AVFormatContext/AVIOContext interrupt callbacks. 6aa0b98 Add AVIOInterruptCB struct and the interrupt_callback field to AVFormatContext. 1dee0ac Add avio_open2() with additional parameters. Those are an interrupt callback and an options AVDictionary. This will allow passing AVOptions to protocols after lavf 54.0. 2011-11-06 - ba04ecf - lavu 51.14.0 Add av_strcasecmp() and av_strncasecmp() to avstring.h. 2011-11-06 - 07b172f - lavu 51.13.0 Add av_toupper()/av_tolower() 2011-11-05 - b6d08f4 - lavf 53.13.0 Add avformat_network_init()/avformat_network_deinit() 2011-10-27 - 512557b - lavc 53.15.0 Remove avcodec_parse_frame. Deprecate AVCodecContext.parse_only and CODEC_CAP_PARSE_ONLY. 2011-10-19 - 569129a - lavf 53.10.0 Add avformat_new_stream(). Deprecate av_new_stream(). 2011-10-13 - b631fba - lavf 53.9.0 Add AVFMT_NO_BYTE_SEEK AVInputFormat flag. 2011-10-12 - lavu 51.12.0 AVOptions API rewrite. - 145f741 FF_OPT_TYPE* renamed to AV_OPT_TYPE_* - new setting/getting functions with slightly different semantics: dac66da av_set_string3 -> av_opt_set av_set_double -> av_opt_set_double av_set_q -> av_opt_set_q av_set_int -> av_opt_set_int 41d9d51 av_get_string -> av_opt_get av_get_double -> av_opt_get_double av_get_q -> av_opt_get_q av_get_int -> av_opt_get_int - 8c5dcaa trivial rename av_next_option -> av_opt_next - 641c7af new functions - av_opt_child_next, av_opt_child_class_next and av_opt_find2() 2011-09-03 - fb4ca26 - lavc 53.10.0 lavf 53.6.0 lsws 2.1.0 Add {avcodec,avformat,sws}_get_class(). 2011-09-03 - c11fb82 - lavu 51.10.0 Add AV_OPT_SEARCH_FAKE_OBJ flag for av_opt_find() function. 2011-08-26 - lavu 51.9.0 - f2011ed Add av_fifo_peek2(), deprecate av_fifo_peek(). - add41de..abc78a5 Do not include intfloat_readwrite.h, mathematics.h, rational.h, pixfmt.h, or log.h from avutil.h. 2011-08-16 - 48f9e45 - lavf 53.4.0 Add avformat_query_codec(). 2011-08-16 - bca06e7 - lavc 53.8.0 Add avcodec_get_type(). 2011-08-06 - 2f63440 - lavf 53.4.0 Add error_recognition to AVFormatContext. 2011-08-02 - 9d39cbf - lavc 53.7.1 Add AV_PKT_FLAG_CORRUPT AVPacket flag. 2011-07-10 - a67c061 - lavf 53.3.0 Add avformat_find_stream_info(), deprecate av_find_stream_info(). NOTE: this was backported to 0.7 2011-07-10 - 0b950fe - lavc 53.6.0 Add avcodec_open2(), deprecate avcodec_open(). NOTE: this was backported to 0.7 Add avcodec_alloc_context3. Deprecate avcodec_alloc_context() and avcodec_alloc_context2(). 2011-06-23 - 67e9ae1 - lavu 51.8.0 - attributes.h Add av_printf_format(). ------------------------------8<------------------------------------- 0.7 branch was cut here ----------------------------->8-------------------------------------- 2011-06-16 - 05e84c9, 25de595 - lavf 53.2.0 - avformat.h Add avformat_open_input and avformat_write_header(). Deprecate av_open_input_stream, av_open_input_file, AVFormatParameters and av_write_header. 2011-06-16 - 7e83e1c, dc59ec5 - lavu 51.7.0 - opt.h Add av_opt_set_dict() and av_opt_find(). Deprecate av_find_opt(). Add AV_DICT_APPEND flag. 2011-06-10 - cb7c11c - lavu 51.6.0 - opt.h Add av_opt_flag_is_set(). 2011-06-08 - d9f80ea - lavu 51.5.0 - AVMetadata Move AVMetadata from lavf to lavu and rename it to AVDictionary -- new installed header dict.h. All av_metadata_* functions renamed to av_dict_*. 2011-06-07 - a6703fa - lavu 51.4.0 - av_get_bytes_per_sample() Add av_get_bytes_per_sample() in libavutil/samplefmt.h. Deprecate av_get_bits_per_sample_fmt(). 2011-06-05 - b39b062 - lavu 51.3.0 - opt.h Add av_opt_free convenience function. 2011-05-28 - 0420bd7 - lavu 51.2.0 - pixdesc.h Add av_get_pix_fmt_name() in libavutil/pixdesc.h, and deprecate avcodec_get_pix_fmt_name() in libavcodec/avcodec.h in its favor. 2011-05-25 - 30315a8 - lavf 53.1.0 - avformat.h Add fps_probe_size to AVFormatContext. 2011-05-18 - 64150ff - lavc 53.4.0 - AVCodecContext.request_sample_fmt Add request_sample_fmt field to AVCodecContext. 2011-05-10 - 188dea1 - lavc 53.3.0 - avcodec.h Deprecate AVLPCType and the following fields in AVCodecContext: lpc_coeff_precision, prediction_order_method, min_partition_order, max_partition_order, lpc_type, lpc_passes. Corresponding FLAC encoder options should be used instead. 2011-04-26 - bebe72f - lavu 51.1.0 - avutil.h Add AVPictureType enum and av_get_picture_type_char(), deprecate FF_*_TYPE defines and av_get_pict_type_char() defined in libavcodec/avcodec.h. 2011-04-26 - 10d3940 - lavfi 2.3.0 - avfilter.h Add pict_type and key_frame fields to AVFilterBufferRefVideo. 2011-04-26 - 7a11c82 - lavfi 2.2.0 - vsrc_buffer Add sample_aspect_ratio fields to vsrc_buffer arguments 2011-04-21 - 94f7451 - lavc 53.1.0 - avcodec.h Add CODEC_CAP_SLICE_THREADS for codecs supporting sliced threading. 2011-04-15 - lavc 52.120.0 - avcodec.h AVPacket structure got additional members for passing side information: 4de339e introduce side information for AVPacket 2d8591c make containers pass palette change in AVPacket 2011-04-12 - lavf 52.107.0 - avio.h Avio cleanup, part II - deprecate the entire URLContext API: 175389c add avio_check as a replacement for url_exist ff1ec0c add avio_pause and avio_seek_time as replacements for _av_url_read_fseek/fpause cdc6a87 deprecate av_protocol_next(), avio_enum_protocols should be used instead. 80c6e23 rename url_set_interrupt_cb->avio_set_interrupt_cb. f87b1b3 rename open flags: URL_* -> AVIO_* f8270bb add avio_enum_protocols. 5593f03 deprecate URLProtocol. c486dad deprecate URLContext. 026e175 deprecate the typedef for URLInterruptCB 8e76a19 deprecate av_register_protocol2. b840484 deprecate URL_PROTOCOL_FLAG_NESTED_SCHEME 1305d93 deprecate av_url_read_seek fa104e1 deprecate av_url_read_pause 727c7aa deprecate url_get_filename(). 5958df3 deprecate url_max_packet_size(). 1869ea0 deprecate url_get_file_handle(). 32a97d4 deprecate url_filesize(). e52a914 deprecate url_close(). 58a48c6 deprecate url_seek(). 925e908 deprecate url_write(). dce3756 deprecate url_read_complete(). bc371ac deprecate url_read(). 0589da0 deprecate url_open(). 62eaaea deprecate url_connect. 5652bb9 deprecate url_alloc. 333e894 deprecate url_open_protocol e230705 deprecate url_poll and URLPollEntry 2011-04-10 - lavu 50.40.0 - pixfmt.h Add PIX_FMT_BGR48LE and PIX_FMT_BGR48BE pixel formats 2011-04-08 - lavf 52.106.0 - avformat.h Minor avformat.h cleanup: a9bf9d8 deprecate av_guess_image2_codec c3675df rename avf_sdp_create->av_sdp_create 2011-04-03 - lavf 52.105.0 - avio.h Large-scale renaming/deprecating of AVIOContext-related functions: 724f6a0 deprecate url_fdopen 403ee83 deprecate url_open_dyn_packet_buf 6dc7d80 rename url_close_dyn_buf -> avio_close_dyn_buf b92c545 rename url_open_dyn_buf -> avio_open_dyn_buf 8978fed introduce an AVIOContext.seekable field as a replacement for AVIOContext.is_streamed and url_is_streamed() b64030f deprecate get_checksum() 4c4427a deprecate init_checksum() 4ec153b deprecate udp_set_remote_url/get_local_port 933e90a deprecate av_url_read_fseek/fpause 8d9769a deprecate url_fileno b7f2fdd rename put_flush_packet -> avio_flush 35f1023 deprecate url_close_buf 83fddae deprecate url_open_buf d9d86e0 rename url_fprintf -> avio_printf 59f65d9 deprecate url_setbufsize 3e68b3b deprecate url_ferror 66e5b1d deprecate url_feof e8bb2e2 deprecate url_fget_max_packet_size 76aa876 rename url_fsize -> avio_size e519753 deprecate url_fgetc 655e45e deprecate url_fgets a2704c9 rename url_ftell -> avio_tell e16ead0 deprecate get_strz() in favor of avio_get_str 0300db8,2af07d3 rename url_fskip -> avio_skip 6b4aa5d rename url_fseek -> avio_seek 61840b4 deprecate put_tag 22a3212 rename url_fopen/fclose -> avio_open/close. 0ac8e2b deprecate put_nbyte 77eb550 rename put_byte -> avio_w8 put_[b/l]e -> avio_w[b/l] put_buffer -> avio_write b7effd4 rename get_byte -> avio_r8, get_[b/l]e -> avio_r[b/l] get_buffer -> avio_read b3db9ce deprecate get_partial_buffer 8d9ac96 rename av_alloc_put_byte -> avio_alloc_context 2011-03-25 - 34b47d7 - lavc 52.115.0 - AVCodecContext.audio_service_type Add audio_service_type field to AVCodecContext. 2011-03-02 - 863c471 - lavf 52.103.0 - av_pkt_dump2, av_pkt_dump_log2 Add new functions av_pkt_dump2, av_pkt_dump_log2 that uses the source stream timebase for outputting timestamps. Deprecate av_pkt_dump and av_pkt_dump_log. 2011-02-20 - e731b8d - lavf 52.102.0 - avio.h * e731b8d - rename init_put_byte() to ffio_init_context(), deprecating the original, and move it to a private header so it is no longer part of our public API. Instead, use av_alloc_put_byte(). * ae628ec - rename ByteIOContext to AVIOContext. 2011-02-16 - 09d171b - lavf 52.101.0 - avformat.h lavu 52.39.0 - parseutils.h * 610219a - Add av_ prefix to dump_format(). * f6c7375 - Replace parse_date() in lavf with av_parse_time() in lavu. * ab0287f - Move find_info_tag from lavf to lavu and add av_prefix to it. 2011-02-15 - lavu 52.38.0 - merge libavcore libavcore is merged back completely into libavutil 2011-02-10 - 55bad0c - lavc 52.113.0 - vbv_delay Add vbv_delay field to AVCodecContext 2011-02-14 - 24a83bd - lavf 52.100.0 - AV_DISPOSITION_CLEAN_EFFECTS Add AV_DISPOSITION_CLEAN_EFFECTS disposition flag. 2011-02-14 - 910b5b8 - lavfi 1.76.0 - AVFilterLink sample_aspect_ratio Add sample_aspect_ratio field to AVFilterLink. 2011-02-10 - 12c14cd - lavf 52.99.0 - AVStream.disposition Add AV_DISPOSITION_HEARING_IMPAIRED and AV_DISPOSITION_VISUAL_IMPAIRED. 2011-02-09 - 5592734 - lavc 52.112.0 - avcodec_thread_init() Deprecate avcodec_thread_init()/avcodec_thread_free() use; instead set thread_count before calling avcodec_open. 2011-02-09 - 778b08a - lavc 52.111.0 - threading API Add CODEC_CAP_FRAME_THREADS with new restrictions on get_buffer()/ release_buffer()/draw_horiz_band() callbacks for appropriate codecs. Add thread_type and active_thread_type fields to AVCodecContext. 2011-02-08 - 3940caa - lavf 52.98.0 - av_probe_input_buffer Add av_probe_input_buffer() to avformat.h for probing format from a ByteIOContext. 2011-02-06 - fe174fc - lavf 52.97.0 - avio.h Add flag for non-blocking protocols: URL_FLAG_NONBLOCK 2011-02-04 - f124b08 - lavf 52.96.0 - avformat_free_context() Add avformat_free_context() in avformat.h. 2011-02-03 - f5b82f4 - lavc 52.109.0 - add CODEC_ID_PRORES Add CODEC_ID_PRORES to avcodec.h. 2011-02-03 - fe9a3fb - lavc 52.109.0 - H.264 profile defines Add defines for H.264 * Constrained Baseline and Intra profiles 2011-02-02 - lavf 52.95.0 * 50196a9 - add a new installed header version.h. * 4efd5cf, dccbd97, 93b78d1 - add several variants of public avio_{put,get}_str* functions. Deprecate corresponding semi-public {put,get}_str*. 2011-02-02 - dfd2a00 - lavu 50.37.0 - log.h Make av_dlog public. 2011-01-15 - a242ac3 - lavfi 1.74.0 - AVFilterBufferRefAudioProps Rename AVFilterBufferRefAudioProps.samples_nb to nb_samples. 2011-01-14 - 7f88a5b - lavf 52.93.0 - av_metadata_copy() Add av_metadata_copy() in avformat.h. 2011-01-07 - 81c623f - lavc 52.107.0 - deprecate reordered_opaque Deprecate reordered_opaque in favor of pkt_pts/dts. 2011-01-07 - 1919fea - lavc 52.106.0 - pkt_dts Add pkt_dts to AVFrame, this will in the future allow multithreading decoders to not mess up dts. 2011-01-07 - 393cbb9 - lavc 52.105.0 - pkt_pts Add pkt_pts to AVFrame. 2011-01-07 - 060ec0a - lavc 52.104.0 - av_get_profile_name() Add av_get_profile_name to libavcodec/avcodec.h. 2010-12-27 - 0ccabee - lavfi 1.71.0 - AV_PERM_NEG_LINESIZES Add AV_PERM_NEG_LINESIZES in avfilter.h. 2010-12-27 - 9128ae0 - lavf 52.91.0 - av_find_best_stream() Add av_find_best_stream to libavformat/avformat.h. 2010-12-27 - 107a7e3 - lavf 52.90.0 Add AVFMT_NOSTREAMS flag for formats with no streams, like e.g. text metadata. 2010-12-22 - 0328b9e - lavu 50.36.0 - file.h Add functions av_file_map() and av_file_unmap() in file.h. 2010-12-19 - 0bc55f5 - lavu 50.35.0 - error.h Add "not found" error codes: AVERROR_DEMUXER_NOT_FOUND AVERROR_MUXER_NOT_FOUND AVERROR_DECODER_NOT_FOUND AVERROR_ENCODER_NOT_FOUND AVERROR_PROTOCOL_NOT_FOUND AVERROR_FILTER_NOT_FOUND AVERROR_BSF_NOT_FOUND AVERROR_STREAM_NOT_FOUND 2010-12-09 - c61cdd0 - lavcore 0.16.0 - avcore.h Move AV_NOPTS_VALUE, AV_TIME_BASE, AV_TIME_BASE_Q symbols from avcodec.h to avcore.h. 2010-12-04 - 16cfc96 - lavc 52.98.0 - CODEC_CAP_NEG_LINESIZES Add CODEC_CAP_NEG_LINESIZES codec capability flag in avcodec.h. 2010-12-04 - bb4afa1 - lavu 50.34.0 - av_get_pix_fmt_string() Deprecate avcodec_pix_fmt_string() in favor of pixdesc.h/av_get_pix_fmt_string(). 2010-12-04 - 4da12e3 - lavcore 0.15.0 - av_image_alloc() Add av_image_alloc() to libavcore/imgutils.h. 2010-12-02 - 037be76 - lavfi 1.67.0 - avfilter_graph_create_filter() Add function avfilter_graph_create_filter() in avfiltergraph.h. 2010-11-25 - 4723bc2 - lavfi 1.65.0 - avfilter_get_video_buffer_ref_from_arrays() Add function avfilter_get_video_buffer_ref_from_arrays() in avfilter.h. 2010-11-21 - 176a615 - lavcore 0.14.0 - audioconvert.h Add a public audio channel API in audioconvert.h, and deprecate the corresponding functions in libavcodec: avcodec_get_channel_name() avcodec_get_channel_layout() avcodec_get_channel_layout_string() avcodec_channel_layout_num_channels() and the CH_* macros defined in libavcodec/avcodec.h. 2010-11-21 - 6bfc268 - lavf 52.85.0 - avformat.h Add av_append_packet(). 2010-11-21 - a08d918 - lavc 52.97.0 - avcodec.h Add av_grow_packet(). 2010-11-17 - 0985e1a - lavcore 0.13.0 - parseutils.h Add av_parse_color() declared in libavcore/parseutils.h. 2010-11-13 - cb2c971 - lavc 52.95.0 - AVCodecContext Add AVCodecContext.subtitle_header and AVCodecContext.subtitle_header_size fields. 2010-11-13 - 5aaea02 - lavfi 1.62.0 - avfiltergraph.h Make avfiltergraph.h public. 2010-11-13 - 4fcbb2a - lavfi 1.61.0 - avfiltergraph.h Remove declarations from avfiltergraph.h for the functions: avfilter_graph_check_validity() avfilter_graph_config_links() avfilter_graph_config_formats() which are now internal. Use avfilter_graph_config() instead. 2010-11-08 - d2af720 - lavu 50.33.0 - eval.h Deprecate functions: av_parse_and_eval_expr(), av_parse_expr(), av_eval_expr(), av_free_expr(), in favor of the functions: av_expr_parse_and_eval(), av_expr_parse(), av_expr_eval(), av_expr_free(). 2010-11-08 - 24de0ed - lavfi 1.59.0 - avfilter_free() Rename avfilter_destroy() to avfilter_free(). This change breaks libavfilter API/ABI. 2010-11-07 - 1e80a0e - lavfi 1.58.0 - avfiltergraph.h Remove graphparser.h header, move AVFilterInOut and avfilter_graph_parse() declarations to libavfilter/avfiltergraph.h. 2010-11-07 - 7313132 - lavfi 1.57.0 - AVFilterInOut Rename field AVFilterInOut.filter to AVFilterInOut.filter_ctx. This change breaks libavfilter API. 2010-11-04 - 97dd1e4 - lavfi 1.56.0 - avfilter_graph_free() Rename avfilter_graph_destroy() to avfilter_graph_free(). This change breaks libavfilter API/ABI. 2010-11-04 - e15aeea - lavfi 1.55.0 - avfilter_graph_alloc() Add avfilter_graph_alloc() to libavfilter/avfiltergraph.h. 2010-11-02 - 6f84cd1 - lavcore 0.12.0 - av_get_bits_per_sample_fmt() Add av_get_bits_per_sample_fmt() to libavcore/samplefmt.h and deprecate av_get_bits_per_sample_format(). 2010-11-02 - d63e456 - lavcore 0.11.0 - samplefmt.h Add sample format functions in libavcore/samplefmt.h: av_get_sample_fmt_name(), av_get_sample_fmt(), av_get_sample_fmt_string(), and deprecate the corresponding libavcodec/audioconvert.h functions: avcodec_get_sample_fmt_name(), avcodec_get_sample_fmt(), avcodec_sample_fmt_string(). 2010-11-02 - 262d1c5 - lavcore 0.10.0 - samplefmt.h Define enum AVSampleFormat in libavcore/samplefmt.h, deprecate enum SampleFormat. 2010-10-16 - 2a24df9 - lavfi 1.52.0 - avfilter_graph_config() Add the function avfilter_graph_config() in avfiltergraph.h. 2010-10-15 - 03700d3 - lavf 52.83.0 - metadata API Change demuxers to export metadata in generic format and muxers to accept generic format. Deprecate the public conversion API. 2010-10-10 - 867ae7a - lavfi 1.49.0 - AVFilterLink.time_base Add time_base field to AVFilterLink. 2010-09-27 - c85eef4 - lavu 50.31.0 - av_set_options_string() Move av_set_options_string() from libavfilter/parseutils.h to libavutil/opt.h. 2010-09-27 - acc0490 - lavfi 1.47.0 - AVFilterLink Make the AVFilterLink fields srcpad and dstpad store the pointers to the source and destination pads, rather than their indexes. 2010-09-27 - 372e288 - lavu 50.30.0 - av_get_token() Move av_get_token() from libavfilter/parseutils.h to libavutil/avstring.h. 2010-09-26 - 635d4ae - lsws 0.12.0 - swscale.h Add the functions sws_alloc_context() and sws_init_context(). 2010-09-26 - 6ed0404 - lavu 50.29.0 - opt.h Move libavcodec/opt.h to libavutil/opt.h. 2010-09-24 - 1c1c80f - lavu 50.28.0 - av_log_set_flags() Default of av_log() changed due to many problems to the old no repeat detection. Read the docs of AV_LOG_SKIP_REPEATED in log.h before enabling it for your app!. 2010-09-24 - f66eb58 - lavc 52.90.0 - av_opt_show2() Deprecate av_opt_show() in favor or av_opt_show2(). 2010-09-14 - bc6f0af - lavu 50.27.0 - av_popcount() Add av_popcount() to libavutil/common.h. 2010-09-08 - c6c98d0 - lavu 50.26.0 - av_get_cpu_flags() Add av_get_cpu_flags(). 2010-09-07 - 34017fd - lavcore 0.9.0 - av_image_copy() Add av_image_copy(). 2010-09-07 - 9686abb - lavcore 0.8.0 - av_image_copy_plane() Add av_image_copy_plane(). 2010-09-07 - 9b7269e - lavcore 0.7.0 - imgutils.h Adopt hierarchical scheme for the imgutils.h function names, deprecate the old names. 2010-09-04 - 7160bb7 - lavu 50.25.0 - AV_CPU_FLAG_* Deprecate the FF_MM_* flags defined in libavcodec/avcodec.h in favor of the AV_CPU_FLAG_* flags defined in libavutil/cpu.h. 2010-08-26 - 5da19b5 - lavc 52.87.0 - avcodec_get_channel_layout() Add avcodec_get_channel_layout() in audioconvert.h. 2010-08-20 - e344336 - lavcore 0.6.0 - av_fill_image_max_pixsteps() Rename av_fill_image_max_pixstep() to av_fill_image_max_pixsteps(). 2010-08-18 - a6ddf8b - lavcore 0.5.0 - av_fill_image_max_pixstep() Add av_fill_image_max_pixstep() in imgutils.h. 2010-08-17 - 4f2d2e4 - lavu 50.24.0 - AV_NE() Add the AV_NE macro. 2010-08-17 - ad2c950 - lavfi 1.36.0 - audio framework Implement AVFilterBufferRefAudioProps struct for audio properties, get_audio_buffer(), filter_samples() functions and related changes. 2010-08-12 - 81c1eca - lavcore 0.4.0 - av_get_image_linesize() Add av_get_image_linesize() in imgutils.h. 2010-08-11 - c1db7bf - lavfi 1.34.0 - AVFilterBufferRef Resize data and linesize arrays in AVFilterBufferRef to 8. This change breaks libavfilter API/ABI. 2010-08-11 - 9f08d80 - lavc 52.85.0 - av_picture_data_copy() Add av_picture_data_copy in avcodec.h. 2010-08-11 - 84c0386 - lavfi 1.33.0 - avfilter_open() Change avfilter_open() signature: AVFilterContext *avfilter_open(AVFilter *filter, const char *inst_name) -> int avfilter_open(AVFilterContext **filter_ctx, AVFilter *filter, const char *inst_name); This change breaks libavfilter API/ABI. 2010-08-11 - cc80caf - lavfi 1.32.0 - AVFilterBufferRef Add a type field to AVFilterBufferRef, and move video specific properties to AVFilterBufferRefVideoProps. This change breaks libavfilter API/ABI. 2010-08-07 - 5d4890d - lavfi 1.31.0 - AVFilterLink Rename AVFilterLink fields: AVFilterLink.srcpic -> AVFilterLink.src_buf AVFilterLink.cur_pic -> AVFilterLink.cur_buf AVFilterLink.outpic -> AVFilterLink.out_buf 2010-08-07 - 7fce481 - lavfi 1.30.0 Rename functions and fields: avfilter_(un)ref_pic -> avfilter_(un)ref_buffer avfilter_copy_picref_props -> avfilter_copy_buffer_ref_props AVFilterBufferRef.pic -> AVFilterBufferRef.buffer 2010-08-07 - ecc8dad - lavfi 1.29.0 - AVFilterBufferRef Rename AVFilterPicRef to AVFilterBufferRef. 2010-08-07 - d54e094 - lavfi 1.28.0 - AVFilterBuffer Move format field from AVFilterBuffer to AVFilterPicRef. 2010-08-06 - bf176f5 - lavcore 0.3.0 - av_check_image_size() Deprecate avcodec_check_dimensions() in favor of the function av_check_image_size() defined in libavcore/imgutils.h. 2010-07-30 - 56b5e9d - lavfi 1.27.0 - AVFilterBuffer Increase size of the arrays AVFilterBuffer.data and AVFilterBuffer.linesize from 4 to 8. This change breaks libavfilter ABI. 2010-07-29 - e7bd48a - lavcore 0.2.0 - imgutils.h Add functions av_fill_image_linesizes() and av_fill_image_pointers(), declared in libavcore/imgutils.h. 2010-07-27 - 126b638 - lavcore 0.1.0 - parseutils.h Deprecate av_parse_video_frame_size() and av_parse_video_frame_rate() defined in libavcodec in favor of the newly added functions av_parse_video_size() and av_parse_video_rate() declared in libavcore/parseutils.h. 2010-07-23 - 4485247 - lavu 50.23.0 - mathematics.h Add the M_PHI constant definition. 2010-07-22 - bdab614 - lavfi 1.26.0 - media format generalization Add a type field to AVFilterLink. Change the field types: enum PixelFormat format -> int format in AVFilterBuffer enum PixelFormat *formats -> int *formats in AVFilterFormats enum PixelFormat *format -> int format in AVFilterLink Change the function signatures: AVFilterFormats *avfilter_make_format_list(const enum PixelFormat *pix_fmts); -> AVFilterFormats *avfilter_make_format_list(const int *fmts); int avfilter_add_colorspace(AVFilterFormats **avff, enum PixelFormat pix_fmt); -> int avfilter_add_format (AVFilterFormats **avff, int fmt); AVFilterFormats *avfilter_all_colorspaces(void); -> AVFilterFormats *avfilter_all_formats (enum AVMediaType type); This change breaks libavfilter API/ABI. 2010-07-21 - aac6ca6 - lavcore 0.0.0 Add libavcore. 2010-07-17 - b5c582f - lavfi 1.25.0 - AVFilterBuffer Remove w and h fields from AVFilterBuffer. 2010-07-17 - f0d77b2 - lavfi 1.24.0 - AVFilterBuffer Rename AVFilterPic to AVFilterBuffer. 2010-07-17 - 57fe80f - lavf 52.74.0 - url_fskip() Make url_fskip() return an int error code instead of void. 2010-07-11 - 23940f1 - lavc 52.83.0 Add AVCodecContext.lpc_type and AVCodecContext.lpc_passes fields. Add AVLPCType enum. Deprecate AVCodecContext.use_lpc. 2010-07-11 - e1d7c88 - lavc 52.82.0 - avsubtitle_free() Add a function for free the contents of a AVSubtitle generated by avcodec_decode_subtitle. 2010-07-11 - b91d08f - lavu 50.22.0 - bswap.h and intreadwrite.h Make the bswap.h and intreadwrite.h API public. 2010-07-08 - ce1cd1c - lavu 50.21.0 - pixdesc.h Rename read/write_line() to av_read/write_image_line(). 2010-07-07 - 4d508e4 - lavfi 1.21.0 - avfilter_copy_picref_props() Add avfilter_copy_picref_props(). 2010-07-03 - 2d525ef - lavc 52.79.0 Add FF_COMPLIANCE_UNOFFICIAL and change all instances of FF_COMPLIANCE_INOFFICIAL to use FF_COMPLIANCE_UNOFFICIAL. 2010-07-02 - 89eec74 - lavu 50.20.0 - lfg.h Export av_lfg_init(), av_lfg_get(), av_mlfg_get(), and av_bmg_get() through lfg.h. 2010-06-28 - a52e2c3 - lavfi 1.20.1 - av_parse_color() Extend av_parse_color() syntax, make it accept an alpha value specifier and set the alpha value to 255 by default. 2010-06-22 - 735cf6b - lavf 52.71.0 - URLProtocol.priv_data_size, priv_data_class Add priv_data_size and priv_data_class to URLProtocol. 2010-06-22 - ffbb289 - lavf 52.70.0 - url_alloc(), url_connect() Add url_alloc() and url_connect(). 2010-06-22 - 9b07a2d - lavf 52.69.0 - av_register_protocol2() Add av_register_protocol2(), deprecating av_register_protocol(). 2010-06-09 - 65db058 - lavu 50.19.0 - av_compare_mod() Add av_compare_mod() to libavutil/mathematics.h. 2010-06-05 - 0b99215 - lavu 50.18.0 - eval API Make the eval API public. 2010-06-04 - 31878fc - lavu 50.17.0 - AV_BASE64_SIZE Add AV_BASE64_SIZE() macro. 2010-06-02 - 7e566bb - lavc 52.73.0 - av_get_codec_tag_string() Add av_get_codec_tag_string(). 2010-06-01 - 2b99142 - lsws 0.11.0 - convertPalette API Add sws_convertPalette8ToPacked32() and sws_convertPalette8ToPacked24(). 2010-05-26 - 93ebfee - lavc 52.72.0 - CODEC_CAP_EXPERIMENTAL Add CODEC_CAP_EXPERIMENTAL flag. NOTE: this was backported to 0.6 2010-05-23 - 9977863 - lavu 50.16.0 - av_get_random_seed() Add av_get_random_seed(). 2010-05-18 - 796ac23 - lavf 52.63.0 - AVFMT_FLAG_RTP_HINT Add AVFMT_FLAG_RTP_HINT as possible value for AVFormatContext.flags. NOTE: this was backported to 0.6 2010-05-09 - b6bc205 - lavfi 1.20.0 - AVFilterPicRef Add interlaced and top_field_first fields to AVFilterPicRef. ------------------------------8<------------------------------------- 0.6 branch was cut here ----------------------------->8-------------------------------------- 2010-05-01 - 8e2ee18 - lavf 52.62.0 - probe function Add av_probe_input_format2 to API, it allows ignoring probe results below given score and returns the actual probe score. 2010-04-01 - 3dd6180 - lavf 52.61.0 - metadata API Add a flag for av_metadata_set2() to disable overwriting of existing tags. 2010-04-01 - 0fb49b5 - lavc 52.66.0 Add avcodec_get_edge_width(). 2010-03-31 - d103218 - lavc 52.65.0 Add avcodec_copy_context(). 2010-03-31 - 1a70d12 - lavf 52.60.0 - av_match_ext() Make av_match_ext() public. 2010-03-31 - 1149150 - lavu 50.14.0 - AVMediaType Move AVMediaType enum from libavcodec to libavutil. 2010-03-31 - 72415b2 - lavc 52.64.0 - AVMediaType Define AVMediaType enum, and use it instead of enum CodecType, which is deprecated and will be dropped at the next major bump. 2010-03-25 - 8795823 - lavu 50.13.0 - av_strerror() Implement av_strerror(). 2010-03-23 - e1484eb - lavc 52.60.0 - av_dct_init() Support DCT-I and DST-I. 2010-03-15 - b8819c8 - lavf 52.56.0 - AVFormatContext.start_time_realtime Add AVFormatContext.start_time_realtime field. 2010-03-13 - 5bb5c1d - lavfi 1.18.0 - AVFilterPicRef.pos Add AVFilterPicRef.pos field. 2010-03-13 - 60c144f - lavu 50.12.0 - error.h Move error code definitions from libavcodec/avcodec.h to the new public header libavutil/error.h. 2010-03-07 - c709483 - lavc 52.56.0 - avfft.h Add public FFT interface. 2010-03-06 - ac6ef86 - lavu 50.11.0 - av_stristr() Add av_stristr(). 2010-03-03 - 4b83fc0 - lavu 50.10.0 - av_tree_enumerate() Add av_tree_enumerate(). 2010-02-07 - b687c1a - lavu 50.9.0 - av_compare_ts() Add av_compare_ts(). 2010-02-05 - 3f3dc76 - lsws 0.10.0 - sws_getCoefficients() Add sws_getCoefficients(). 2010-02-01 - ca76a11 - lavf 52.50.0 - metadata API Add a list of generic tag names, change 'author' -> 'artist', 'year' -> 'date'. 2010-01-30 - 80a07f6 - lavu 50.8.0 - av_get_pix_fmt() Add av_get_pix_fmt(). 2010-01-21 - 01cc47d - lsws 0.9.0 - sws_scale() Change constness attributes of sws_scale() parameters. 2010-01-10 - 3fb8e77 - lavfi 1.15.0 - avfilter_graph_config_links() Add a log_ctx parameter to avfilter_graph_config_links(). 2010-01-07 - 8e9767f - lsws 0.8.0 - sws_isSupported{In,Out}put() Add sws_isSupportedInput() and sws_isSupportedOutput() functions. 2010-01-06 - c1d662f - lavfi 1.14.0 - avfilter_add_colorspace() Change the avfilter_add_colorspace() signature, make it accept an (AVFilterFormats **) rather than an (AVFilterFormats *) as before. 2010-01-03 - 4fd1f18 - lavfi 1.13.0 - avfilter_add_colorspace() Add avfilter_add_colorspace(). 2010-01-02 - 8eb631f - lavf 52.46.0 - av_match_ext() Add av_match_ext(), it should be used in place of match_ext(). 2010-01-01 - a1f547b - lavf 52.45.0 - av_guess_format() Add av_guess_format(), it should be used in place of guess_format(). 2009-12-13 - a181981 - lavf 52.43.0 - metadata API Add av_metadata_set2(), AV_METADATA_DONT_STRDUP_KEY and AV_METADATA_DONT_STRDUP_VAL. 2009-12-13 - 277c733 - lavu 50.7.0 - avstring.h API Add av_d2str(). 2009-12-13 - 02b398e - lavc 52.42.0 - AVStream Add avg_frame_rate. 2009-12-12 - 3ba69a1 - lavu 50.6.0 - av_bmg_next() Introduce the av_bmg_next() function. 2009-12-05 - a13a543 - lavfi 1.12.0 - avfilter_draw_slice() Add a slice_dir parameter to avfilter_draw_slice(). 2009-11-26 - 4cc3f6a - lavfi 1.11.0 - AVFilter Remove the next field from AVFilter, this is not anymore required. 2009-11-25 - 1433c4a - lavfi 1.10.0 - avfilter_next() Introduce the avfilter_next() function. 2009-11-25 - 86a60fa - lavfi 1.9.0 - avfilter_register() Change the signature of avfilter_register() to make it return an int. This is required since now the registration operation may fail. 2009-11-25 - 74a0059 - lavu 50.5.0 - pixdesc.h API Make the pixdesc.h API public. 2009-10-27 - 243110f - lavfi 1.5.0 - AVFilter.next Add a next field to AVFilter, this is used for simplifying the registration and management of the registered filters. 2009-10-23 - cccd292 - lavfi 1.4.1 - AVFilter.description Add a description field to AVFilter. 2009-10-19 - 6b5dc05 - lavfi 1.3.0 - avfilter_make_format_list() Change the interface of avfilter_make_format_list() from avfilter_make_format_list(int n, ...) to avfilter_make_format_list(enum PixelFormat *pix_fmts). 2009-10-18 - 0eb4ff9 - lavfi 1.0.0 - avfilter_get_video_buffer() Make avfilter_get_video_buffer() recursive and add the w and h parameters to it. 2009-10-07 - 46c40e4 - lavfi 0.5.1 - AVFilterPic Add w and h fields to AVFilterPic. 2009-06-22 - 92400be - lavf 52.34.1 - AVFormatContext.packet_size This is now an unsigned int instead of a signed int. 2009-06-19 - a4276ba - lavc 52.32.0 - AVSubtitle.pts Add a pts field to AVSubtitle which gives the subtitle packet pts in AV_TIME_BASE. Some subtitle de-/encoders (e.g. XSUB) will not work right without this. 2009-06-03 - 8f3f2e0 - lavc 52.30.2 - AV_PKT_FLAG_KEY PKT_FLAG_KEY has been deprecated and will be dropped at the next major version. Use AV_PKT_FLAG_KEY instead. 2009-06-01 - f988ce6 - lavc 52.30.0 - av_lockmgr_register() av_lockmgr_register() can be used to register a callback function that lavc (and in the future, libraries that depend on lavc) can use to implement mutexes. The application should provide a callback function that implements the AV_LOCK_* operations described in avcodec.h. When the lock manager is registered, FFmpeg is guaranteed to behave correctly in a multi-threaded application. 2009-04-30 - ce1d9c8 - lavc 52.28.0 - av_free_packet() av_free_packet() is no longer an inline function. It is now exported. 2009-04-11 - 80d403f - lavc 52.25.0 - deprecate av_destruct_packet_nofree() Please use NULL instead. This has been supported since r16506 (lavf > 52.23.1, lavc > 52.10.0). 2009-04-07 - 7a00bba - lavc 52.23.0 - avcodec_decode_video/audio/subtitle The old decoding functions are deprecated, all new code should use the new functions avcodec_decode_video2(), avcodec_decode_audio3() and avcodec_decode_subtitle2(). These new functions take an AVPacket *pkt argument instead of a const uint8_t *buf / int buf_size pair. 2009-04-03 - 7b09db3 - lavu 50.3.0 - av_fifo_space() Introduce the av_fifo_space() function. 2009-04-02 - fabd246 - lavc 52.23.0 - AVPacket Move AVPacket declaration from libavformat/avformat.h to libavcodec/avcodec.h. 2009-03-22 - 6e08ca9 - lavu 50.2.0 - RGB32 pixel formats Convert the pixel formats PIX_FMT_ARGB, PIX_FMT_RGBA, PIX_FMT_ABGR, PIX_FMT_BGRA, which were defined as macros, into enum PixelFormat values. Conversely PIX_FMT_RGB32, PIX_FMT_RGB32_1, PIX_FMT_BGR32 and PIX_FMT_BGR32_1 are now macros. avcodec_get_pix_fmt() now recognizes the "rgb32" and "bgr32" aliases. Re-sort the enum PixelFormat list accordingly. This change breaks API/ABI backward compatibility. 2009-03-22 - f82674e - lavu 50.1.0 - PIX_FMT_RGB5X5 endian variants Add the enum PixelFormat values: PIX_FMT_RGB565BE, PIX_FMT_RGB565LE, PIX_FMT_RGB555BE, PIX_FMT_RGB555LE, PIX_FMT_BGR565BE, PIX_FMT_BGR565LE, PIX_FMT_BGR555BE, PIX_FMT_BGR555LE. 2009-03-21 - ee6624e - lavu 50.0.0 - av_random* The Mersenne Twister PRNG implemented through the av_random* functions was removed. Use the lagged Fibonacci PRNG through the av_lfg* functions instead. 2009-03-08 - 41dd680 - lavu 50.0.0 - AVFifoBuffer av_fifo_init, av_fifo_read, av_fifo_write and av_fifo_realloc were dropped and replaced by av_fifo_alloc, av_fifo_generic_read, av_fifo_generic_write and av_fifo_realloc2. In addition, the order of the function arguments of av_fifo_generic_read was changed to match av_fifo_generic_write. The AVFifoBuffer/struct AVFifoBuffer may only be used in an opaque way by applications, they may not use sizeof() or directly access members. 2009-03-01 - ec26457 - lavf 52.31.0 - Generic metadata API Introduce a new metadata API (see av_metadata_get() and friends). The old API is now deprecated and should not be used anymore. This especially includes the following structure fields: - AVFormatContext.title - AVFormatContext.author - AVFormatContext.copyright - AVFormatContext.comment - AVFormatContext.album - AVFormatContext.year - AVFormatContext.track - AVFormatContext.genre - AVStream.language - AVStream.filename - AVProgram.provider_name - AVProgram.name - AVChapter.title