FFmpeg  4.0
Deprecated List
Global av_bitstream_filter_close (AVBitStreamFilterContext *bsf)
the old bitstream filtering API (using AVBitStreamFilterContext) is deprecated.
Global av_bitstream_filter_filter (AVBitStreamFilterContext *bsfc, AVCodecContext *avctx, const char *args, uint8_t **poutbuf, int *poutbuf_size, const uint8_t *buf, int buf_size, int keyframe)
the old bitstream filtering API (using AVBitStreamFilterContext) is deprecated.
Global av_bitstream_filter_init (const char *name)
the old bitstream filtering API (using AVBitStreamFilterContext) is deprecated.
Global av_bitstream_filter_next (const AVBitStreamFilter *f)
the old bitstream filtering API (using AVBitStreamFilterContext) is deprecated.
Global av_copy_packet (AVPacket *dst, const AVPacket *src)
Use av_packet_ref
Global av_copy_packet_side_data (AVPacket *dst, const AVPacket *src)
Use av_packet_copy_props
Global av_dup_packet (AVPacket *pkt)
Use av_packet_ref or av_packet_make_refcounted
Global av_free_packet (AVPacket *pkt)
Use av_packet_unref
Global av_get_codec_tag_string (char *buf, size_t buf_size, unsigned int codec_tag)
see av_fourcc_make_string() and av_fourcc2str().
Global av_hwaccel_next (const AVHWAccel *hwaccel)
AVHWaccel structures contain no user-serviceable parts, so this function should not be used.
Global av_lockmgr_register (int(*cb)(void **mutex, enum AVLockOp op))
This function does nothing, and always returns 0. Be sure to build with thread support to get basic thread safety.
Global av_parser_change (AVCodecParserContext *s, AVCodecContext *avctx, uint8_t **poutbuf, int *poutbuf_size, const uint8_t *buf, int buf_size, int keyframe)
use AVBitStreamFilter
Global av_picture_copy (AVPicture *dst, const AVPicture *src, enum AVPixelFormat pix_fmt, int width, int height)
av_image_copy() instead.
Global av_picture_crop (AVPicture *dst, const AVPicture *src, enum AVPixelFormat pix_fmt, int top_band, int left_band)
unused
Global av_picture_pad (AVPicture *dst, const AVPicture *src, int height, int width, enum AVPixelFormat pix_fmt, int padtop, int padbottom, int padleft, int padright, int *color)
unused
Global AV_PIX_FMT_FLAG_PSEUDOPAL
This flag is deprecated, and will be removed. When it is removed, the extra palette allocation in AVFrame.data[1] is removed as well. Only actual paletted formats (as indicated by AV_PIX_FMT_FLAG_PAL) will have a palette. Starting with FFmpeg versions which have this flag deprecated, the extra "pseudo" palette is already ignored, and API users are not required to allocate a palette for AV_PIX_FMT_FLAG_PSEUDOPAL formats (it was required before the deprecation, though).
Global av_register_bitstream_filter (AVBitStreamFilter *bsf)
the old bitstream filtering API (using AVBitStreamFilterContext) is deprecated.
Global av_register_hwaccel (AVHWAccel *hwaccel)
This function doesn't do anything.
Global av_tempfile (const char *prefix, char **filename, int log_offset, void *log_ctx)
as fd numbers cannot be passed saftely between libs on some platforms
Global av_vdpau_get_profile (AVCodecContext *avctx, VdpDecoderProfile *profile)
Use av_vdpau_bind_context() instead.
Global avcodec_copy_context (AVCodecContext *dest, const AVCodecContext *src)
The semantics of this function are ill-defined and it should not be used. If you need to transfer the stream parameters from one codec context to another, use an intermediate AVCodecParameters instance and the avcodec_parameters_from_context() / avcodec_parameters_to_context() functions.
Global avcodec_decode_audio4 (AVCodecContext *avctx, AVFrame *frame, int *got_frame_ptr, const AVPacket *avpkt)
Use avcodec_send_packet() and avcodec_receive_frame().
Global avcodec_decode_video2 (AVCodecContext *avctx, AVFrame *picture, int *got_picture_ptr, const AVPacket *avpkt)
Use avcodec_send_packet() and avcodec_receive_frame().
Global avcodec_encode_audio2 (AVCodecContext *avctx, AVPacket *avpkt, const AVFrame *frame, int *got_packet_ptr)
use avcodec_send_frame()/avcodec_receive_packet() instead
Global avcodec_encode_video2 (AVCodecContext *avctx, AVPacket *avpkt, const AVFrame *frame, int *got_packet_ptr)
use avcodec_send_frame()/avcodec_receive_packet() instead
Global avcodec_find_best_pix_fmt_of_2 (enum AVPixelFormat dst_pix_fmt1, enum AVPixelFormat dst_pix_fmt2, enum AVPixelFormat src_pix_fmt, int has_alpha, int *loss_ptr)
see av_find_best_pix_fmt_of_2()
Global avcodec_get_chroma_sub_sample (enum AVPixelFormat pix_fmt, int *h_shift, int *v_shift)
Use av_pix_fmt_get_chroma_sub_sample
Global avcodec_get_context_defaults3 (AVCodecContext *s, const AVCodec *codec)
This function should not be used, as closing and opening a codec context multiple time is not supported.
Global avcodec_get_pix_fmt_loss (enum AVPixelFormat dst_pix_fmt, enum AVPixelFormat src_pix_fmt, int has_alpha)
see av_get_pix_fmt_loss()
Global AVCodecContext::b_frame_strategy
use encoder private options instead
Global AVCodecContext::b_sensitivity
use encoder private options instead
Global AVCodecContext::brd_scale
use encoder private options instead
Global AVCodecContext::chromaoffset
use encoder private options instead
Global AVCodecContext::coded_frame
use the quality factor packet side data instead
Global AVCodecContext::coder_type
use encoder private options instead
Global AVCodecContext::context_model
use encoder private options instead
Global AVCodecContext::frame_bits
this field is unused
Global AVCodecContext::frame_skip_cmp
use encoder private options instead
Global AVCodecContext::frame_skip_exp
use encoder private options instead
Global AVCodecContext::frame_skip_factor
use encoder private options instead
Global AVCodecContext::frame_skip_threshold
use encoder private options instead
Global AVCodecContext::max_prediction_order
use encoder private options instead
Global AVCodecContext::me_penalty_compensation
use encoder private options instead
Global AVCodecContext::min_prediction_order
use encoder private options instead
Global AVCodecContext::mpeg_quant
use encoder private options instead
Global AVCodecContext::noise_reduction
use encoder private options instead
Global AVCodecContext::pre_me
use encoder private options instead
Global AVCodecContext::prediction_method
use encoder private options instead
Global AVCodecContext::rtp_callback )(struct AVCodecContext *avctx, void *data, int size, int mb_nb)
unused
Global AVCodecContext::rtp_payload_size
use encoder private options instead
Global AVCodecContext::scenechange_threshold
use encoder private options instead
Global AVCodecContext::side_data_only_packets
this field disables the default behaviour and it is kept only for compatibility.
Global AVCodecContext::timecode_frame_start
use encoder private options instead
Global AVCodecContext::vbv_delay
this value is now exported as a part of AV_PKT_DATA_CPB_PROPERTIES packet side data
Global AVCodecParserContext::convergence_duration
unused
Global avfilter_link_set_closed (AVFilterLink *link, int closed)
applications are not supposed to mess with links, they should close the sinks.
Global AVFrame::error [AV_NUM_DATA_POINTERS]
unused
Global AVFrame::pkt_pts
use the pts field instead
Global AVFrame::reordered_opaque
in favor of pkt_pts
Global AVLockOp
Deprecated together with av_lockmgr_register().
Global AVMixCoeffType
use libswresample
Global AVPacket::convergence_duration
Same as the duration field, but as int64_t.
Class AVPicture
use AVFrame or imgutils functions instead
Global avpicture_alloc (AVPicture *picture, enum AVPixelFormat pix_fmt, int width, int height)
unused
Global avpicture_fill (AVPicture *picture, const uint8_t *ptr, enum AVPixelFormat pix_fmt, int width, int height)
use av_image_fill_arrays() instead.
Global avpicture_free (AVPicture *picture)
unused
Global avpicture_get_size (enum AVPixelFormat pix_fmt, int width, int height)
use av_image_get_buffer_size() instead.
Global avpicture_layout (const AVPicture *src, enum AVPixelFormat pix_fmt, int width, int height, unsigned char *dest, int dest_size)
use av_image_copy_to_buffer() instead.
Global avresample_alloc_context (void)
use libswresample
Global avresample_available (AVAudioResampleContext *avr)
use libswresample
Global avresample_build_matrix (uint64_t in_layout, uint64_t out_layout, double center_mix_level, double surround_mix_level, double lfe_mix_level, int normalize, double *matrix, int stride, enum AVMatrixEncoding matrix_encoding)
use libswresample
Global avresample_close (AVAudioResampleContext *avr)
use libswresample
Global avresample_config (AVAudioResampleContext *avr, AVFrame *out, AVFrame *in)
use libswresample
Global avresample_configuration (void)
use libswresample
Global avresample_convert (AVAudioResampleContext *avr, uint8_t **output, int out_plane_size, int out_samples, uint8_t *const *input, int in_plane_size, int in_samples)
use libswresample
Global avresample_convert_frame (AVAudioResampleContext *avr, AVFrame *output, AVFrame *input)
use libswresample
Global avresample_free (AVAudioResampleContext **avr)
use libswresample
Global avresample_get_class (void)
use libswresample
Global avresample_get_delay (AVAudioResampleContext *avr)
use libswresample
Global avresample_get_matrix (AVAudioResampleContext *avr, double *matrix, int stride)
use libswresample
Global avresample_get_out_samples (AVAudioResampleContext *avr, int in_nb_samples)
use libswresample
Global avresample_is_open (AVAudioResampleContext *avr)
use libswresample
Global avresample_license (void)
use libswresample
Global avresample_open (AVAudioResampleContext *avr)
use libswresample
Global avresample_read (AVAudioResampleContext *avr, uint8_t **output, int nb_samples)
use libswresample
Global avresample_set_channel_mapping (AVAudioResampleContext *avr, const int *channel_map)
use libswresample
Global avresample_set_compensation (AVAudioResampleContext *avr, int sample_delta, int compensation_distance)
use libswresample
Global avresample_set_matrix (AVAudioResampleContext *avr, const double *matrix, int stride)
use libswresample
Global avresample_version (void)
use libswresample
Global AVResampleDitherMethod
use libswresample
Global AVResampleFilterType
use libswresample
Global AVSubtitleRect::pict
unused
File dict.h
AVDictionary is provided for compatibility with libav. It is both in implementation as well as API inefficient. It does not scale and is extremely slow with large dictionaries. It is recommended that new code uses our tree container from tree.c/h where applicable, which uses AVL trees to achieve O(log n) performance.