Go to the documentation of this file.
21 #ifndef AVCODEC_AVCODEC_H
22 #define AVCODEC_AVCODEC_H
215 #define AV_INPUT_BUFFER_PADDING_SIZE 64
222 #define AV_INPUT_BUFFER_MIN_SIZE 16384
271 #define AV_CODEC_FLAG_UNALIGNED (1 << 0)
275 #define AV_CODEC_FLAG_QSCALE (1 << 1)
279 #define AV_CODEC_FLAG_4MV (1 << 2)
283 #define AV_CODEC_FLAG_OUTPUT_CORRUPT (1 << 3)
287 #define AV_CODEC_FLAG_QPEL (1 << 4)
292 #define AV_CODEC_FLAG_DROPCHANGED (1 << 5)
296 #define AV_CODEC_FLAG_PASS1 (1 << 9)
300 #define AV_CODEC_FLAG_PASS2 (1 << 10)
304 #define AV_CODEC_FLAG_LOOP_FILTER (1 << 11)
308 #define AV_CODEC_FLAG_GRAY (1 << 13)
312 #define AV_CODEC_FLAG_PSNR (1 << 15)
317 #define AV_CODEC_FLAG_TRUNCATED (1 << 16)
321 #define AV_CODEC_FLAG_INTERLACED_DCT (1 << 18)
325 #define AV_CODEC_FLAG_LOW_DELAY (1 << 19)
329 #define AV_CODEC_FLAG_GLOBAL_HEADER (1 << 22)
333 #define AV_CODEC_FLAG_BITEXACT (1 << 23)
338 #define AV_CODEC_FLAG_AC_PRED (1 << 24)
342 #define AV_CODEC_FLAG_INTERLACED_ME (1 << 29)
343 #define AV_CODEC_FLAG_CLOSED_GOP (1U << 31)
348 #define AV_CODEC_FLAG2_FAST (1 << 0)
352 #define AV_CODEC_FLAG2_NO_OUTPUT (1 << 2)
356 #define AV_CODEC_FLAG2_LOCAL_HEADER (1 << 3)
361 #define AV_CODEC_FLAG2_DROP_FRAME_TIMECODE (1 << 13)
367 #define AV_CODEC_FLAG2_CHUNKS (1 << 15)
371 #define AV_CODEC_FLAG2_IGNORE_CROP (1 << 16)
376 #define AV_CODEC_FLAG2_SHOW_ALL (1 << 22)
380 #define AV_CODEC_FLAG2_EXPORT_MVS (1 << 28)
384 #define AV_CODEC_FLAG2_SKIP_MANUAL (1 << 29)
388 #define AV_CODEC_FLAG2_RO_FLUSH_NOOP (1 << 30)
403 #define AV_CODEC_EXPORT_DATA_MVS (1 << 0)
407 #define AV_CODEC_EXPORT_DATA_PRFT (1 << 1)
412 #define AV_CODEC_EXPORT_DATA_VIDEO_ENC_PARAMS (1 << 2)
417 #define AV_CODEC_EXPORT_DATA_FILM_GRAIN (1 << 3)
458 #if FF_API_UNSANITIZED_BITRATES
467 #if FF_API_UNSANITIZED_BITRATES
476 #if FF_API_UNSANITIZED_BITRATES
514 #define AV_GET_BUFFER_FLAG_REF (1 << 0)
519 #define AV_GET_ENCODE_BUFFER_FLAG_REF (1 << 0)
609 #define FF_COMPRESSION_DEFAULT -1
807 #if FF_API_PRIVATE_OPT
828 #if FF_API_PRIVATE_OPT
892 #if FF_API_PRIVATE_OPT
896 #define FF_PRED_LEFT 0
897 #define FF_PRED_PLANE 1
898 #define FF_PRED_MEDIAN 2
943 #define FF_CMP_SATD 2
945 #define FF_CMP_PSNR 4
948 #define FF_CMP_ZERO 7
949 #define FF_CMP_VSAD 8
950 #define FF_CMP_VSSE 9
951 #define FF_CMP_NSSE 10
952 #define FF_CMP_W53 11
953 #define FF_CMP_W97 12
954 #define FF_CMP_DCTMAX 13
955 #define FF_CMP_DCT264 14
956 #define FF_CMP_MEDIAN_SAD 15
957 #define FF_CMP_CHROMA 256
973 #if FF_API_PRIVATE_OPT
1015 #define SLICE_FLAG_CODED_ORDER 0x0001
1016 #define SLICE_FLAG_ALLOW_FIELD 0x0002
1017 #define SLICE_FLAG_ALLOW_PLANE 0x0004
1025 #define FF_MB_DECISION_SIMPLE 0
1026 #define FF_MB_DECISION_BITS 1
1027 #define FF_MB_DECISION_RD 2
1047 #if FF_API_PRIVATE_OPT
1092 #if FF_API_PRIVATE_OPT
1106 #if FF_API_PRIVATE_OPT
1126 #if FF_API_PRIVATE_OPT
1139 #if FF_API_PRIVATE_OPT
1353 #if FF_API_OLD_ENCDEC
1446 #if FF_API_CODER_TYPE
1447 #define FF_CODER_TYPE_VLC 0
1448 #define FF_CODER_TYPE_AC 1
1449 #define FF_CODER_TYPE_RAW 2
1450 #define FF_CODER_TYPE_RLE 3
1458 #if FF_API_PRIVATE_OPT
1464 #if FF_API_PRIVATE_OPT
1489 #if FF_API_PRIVATE_OPT
1503 #if FF_API_RTP_CALLBACK
1517 #if FF_API_PRIVATE_OPT
1528 #if FF_API_STAT_BITS
1573 #define FF_BUG_AUTODETECT 1
1574 #define FF_BUG_XVID_ILACE 4
1575 #define FF_BUG_UMP4 8
1576 #define FF_BUG_NO_PADDING 16
1577 #define FF_BUG_AMV 32
1578 #define FF_BUG_QPEL_CHROMA 64
1579 #define FF_BUG_STD_QPEL 128
1580 #define FF_BUG_QPEL_CHROMA2 256
1581 #define FF_BUG_DIRECT_BLOCKSIZE 512
1582 #define FF_BUG_EDGE 1024
1583 #define FF_BUG_HPEL_CHROMA 2048
1584 #define FF_BUG_DC_CLIP 4096
1585 #define FF_BUG_MS 8192
1586 #define FF_BUG_TRUNCATED 16384
1587 #define FF_BUG_IEDGE 32768
1602 #define FF_COMPLIANCE_VERY_STRICT 2
1603 #define FF_COMPLIANCE_STRICT 1
1604 #define FF_COMPLIANCE_NORMAL 0
1605 #define FF_COMPLIANCE_UNOFFICIAL -1
1606 #define FF_COMPLIANCE_EXPERIMENTAL -2
1614 #define FF_EC_GUESS_MVS 1
1615 #define FF_EC_DEBLOCK 2
1616 #define FF_EC_FAVOR_INTER 256
1624 #define FF_DEBUG_PICT_INFO 1
1625 #define FF_DEBUG_RC 2
1626 #define FF_DEBUG_BITSTREAM 4
1627 #define FF_DEBUG_MB_TYPE 8
1628 #define FF_DEBUG_QP 16
1629 #define FF_DEBUG_DCT_COEFF 0x00000040
1630 #define FF_DEBUG_SKIP 0x00000080
1631 #define FF_DEBUG_STARTCODE 0x00000100
1632 #define FF_DEBUG_ER 0x00000400
1633 #define FF_DEBUG_MMCO 0x00000800
1634 #define FF_DEBUG_BUGS 0x00001000
1635 #define FF_DEBUG_BUFFERS 0x00008000
1636 #define FF_DEBUG_THREADS 0x00010000
1637 #define FF_DEBUG_GREEN_MD 0x00800000
1638 #define FF_DEBUG_NOMC 0x01000000
1653 #define AV_EF_CRCCHECK (1<<0)
1654 #define AV_EF_BITSTREAM (1<<1)
1655 #define AV_EF_BUFFER (1<<2)
1656 #define AV_EF_EXPLODE (1<<3)
1658 #define AV_EF_IGNORE_ERR (1<<15)
1659 #define AV_EF_CAREFUL (1<<16)
1660 #define AV_EF_COMPLIANT (1<<17)
1661 #define AV_EF_AGGRESSIVE (1<<18)
1707 #define FF_DCT_AUTO 0
1708 #define FF_DCT_FASTINT 1
1709 #define FF_DCT_INT 2
1710 #define FF_DCT_MMX 3
1711 #define FF_DCT_ALTIVEC 5
1712 #define FF_DCT_FAAN 6
1720 #define FF_IDCT_AUTO 0
1721 #define FF_IDCT_INT 1
1722 #define FF_IDCT_SIMPLE 2
1723 #define FF_IDCT_SIMPLEMMX 3
1724 #define FF_IDCT_ARM 7
1725 #define FF_IDCT_ALTIVEC 8
1726 #define FF_IDCT_SIMPLEARM 10
1727 #define FF_IDCT_XVID 14
1728 #define FF_IDCT_SIMPLEARMV5TE 16
1729 #define FF_IDCT_SIMPLEARMV6 17
1730 #define FF_IDCT_FAAN 20
1731 #define FF_IDCT_SIMPLENEON 22
1732 #define FF_IDCT_NONE 24
1733 #define FF_IDCT_SIMPLEAUTO 128
1756 #if FF_API_CODED_FRAME
1784 #define FF_THREAD_FRAME 1
1785 #define FF_THREAD_SLICE 2
1794 #if FF_API_THREAD_SAFE_CALLBACKS
1859 #define FF_PROFILE_UNKNOWN -99
1860 #define FF_PROFILE_RESERVED -100
1862 #define FF_PROFILE_AAC_MAIN 0
1863 #define FF_PROFILE_AAC_LOW 1
1864 #define FF_PROFILE_AAC_SSR 2
1865 #define FF_PROFILE_AAC_LTP 3
1866 #define FF_PROFILE_AAC_HE 4
1867 #define FF_PROFILE_AAC_HE_V2 28
1868 #define FF_PROFILE_AAC_LD 22
1869 #define FF_PROFILE_AAC_ELD 38
1870 #define FF_PROFILE_MPEG2_AAC_LOW 128
1871 #define FF_PROFILE_MPEG2_AAC_HE 131
1873 #define FF_PROFILE_DNXHD 0
1874 #define FF_PROFILE_DNXHR_LB 1
1875 #define FF_PROFILE_DNXHR_SQ 2
1876 #define FF_PROFILE_DNXHR_HQ 3
1877 #define FF_PROFILE_DNXHR_HQX 4
1878 #define FF_PROFILE_DNXHR_444 5
1880 #define FF_PROFILE_DTS 20
1881 #define FF_PROFILE_DTS_ES 30
1882 #define FF_PROFILE_DTS_96_24 40
1883 #define FF_PROFILE_DTS_HD_HRA 50
1884 #define FF_PROFILE_DTS_HD_MA 60
1885 #define FF_PROFILE_DTS_EXPRESS 70
1887 #define FF_PROFILE_MPEG2_422 0
1888 #define FF_PROFILE_MPEG2_HIGH 1
1889 #define FF_PROFILE_MPEG2_SS 2
1890 #define FF_PROFILE_MPEG2_SNR_SCALABLE 3
1891 #define FF_PROFILE_MPEG2_MAIN 4
1892 #define FF_PROFILE_MPEG2_SIMPLE 5
1894 #define FF_PROFILE_H264_CONSTRAINED (1<<9) // 8+1; constraint_set1_flag
1895 #define FF_PROFILE_H264_INTRA (1<<11) // 8+3; constraint_set3_flag
1897 #define FF_PROFILE_H264_BASELINE 66
1898 #define FF_PROFILE_H264_CONSTRAINED_BASELINE (66|FF_PROFILE_H264_CONSTRAINED)
1899 #define FF_PROFILE_H264_MAIN 77
1900 #define FF_PROFILE_H264_EXTENDED 88
1901 #define FF_PROFILE_H264_HIGH 100
1902 #define FF_PROFILE_H264_HIGH_10 110
1903 #define FF_PROFILE_H264_HIGH_10_INTRA (110|FF_PROFILE_H264_INTRA)
1904 #define FF_PROFILE_H264_MULTIVIEW_HIGH 118
1905 #define FF_PROFILE_H264_HIGH_422 122
1906 #define FF_PROFILE_H264_HIGH_422_INTRA (122|FF_PROFILE_H264_INTRA)
1907 #define FF_PROFILE_H264_STEREO_HIGH 128
1908 #define FF_PROFILE_H264_HIGH_444 144
1909 #define FF_PROFILE_H264_HIGH_444_PREDICTIVE 244
1910 #define FF_PROFILE_H264_HIGH_444_INTRA (244|FF_PROFILE_H264_INTRA)
1911 #define FF_PROFILE_H264_CAVLC_444 44
1913 #define FF_PROFILE_VC1_SIMPLE 0
1914 #define FF_PROFILE_VC1_MAIN 1
1915 #define FF_PROFILE_VC1_COMPLEX 2
1916 #define FF_PROFILE_VC1_ADVANCED 3
1918 #define FF_PROFILE_MPEG4_SIMPLE 0
1919 #define FF_PROFILE_MPEG4_SIMPLE_SCALABLE 1
1920 #define FF_PROFILE_MPEG4_CORE 2
1921 #define FF_PROFILE_MPEG4_MAIN 3
1922 #define FF_PROFILE_MPEG4_N_BIT 4
1923 #define FF_PROFILE_MPEG4_SCALABLE_TEXTURE 5
1924 #define FF_PROFILE_MPEG4_SIMPLE_FACE_ANIMATION 6
1925 #define FF_PROFILE_MPEG4_BASIC_ANIMATED_TEXTURE 7
1926 #define FF_PROFILE_MPEG4_HYBRID 8
1927 #define FF_PROFILE_MPEG4_ADVANCED_REAL_TIME 9
1928 #define FF_PROFILE_MPEG4_CORE_SCALABLE 10
1929 #define FF_PROFILE_MPEG4_ADVANCED_CODING 11
1930 #define FF_PROFILE_MPEG4_ADVANCED_CORE 12
1931 #define FF_PROFILE_MPEG4_ADVANCED_SCALABLE_TEXTURE 13
1932 #define FF_PROFILE_MPEG4_SIMPLE_STUDIO 14
1933 #define FF_PROFILE_MPEG4_ADVANCED_SIMPLE 15
1935 #define FF_PROFILE_JPEG2000_CSTREAM_RESTRICTION_0 1
1936 #define FF_PROFILE_JPEG2000_CSTREAM_RESTRICTION_1 2
1937 #define FF_PROFILE_JPEG2000_CSTREAM_NO_RESTRICTION 32768
1938 #define FF_PROFILE_JPEG2000_DCINEMA_2K 3
1939 #define FF_PROFILE_JPEG2000_DCINEMA_4K 4
1941 #define FF_PROFILE_VP9_0 0
1942 #define FF_PROFILE_VP9_1 1
1943 #define FF_PROFILE_VP9_2 2
1944 #define FF_PROFILE_VP9_3 3
1946 #define FF_PROFILE_HEVC_MAIN 1
1947 #define FF_PROFILE_HEVC_MAIN_10 2
1948 #define FF_PROFILE_HEVC_MAIN_STILL_PICTURE 3
1949 #define FF_PROFILE_HEVC_REXT 4
1951 #define FF_PROFILE_VVC_MAIN_10 1
1952 #define FF_PROFILE_VVC_MAIN_10_444 33
1954 #define FF_PROFILE_AV1_MAIN 0
1955 #define FF_PROFILE_AV1_HIGH 1
1956 #define FF_PROFILE_AV1_PROFESSIONAL 2
1958 #define FF_PROFILE_MJPEG_HUFFMAN_BASELINE_DCT 0xc0
1959 #define FF_PROFILE_MJPEG_HUFFMAN_EXTENDED_SEQUENTIAL_DCT 0xc1
1960 #define FF_PROFILE_MJPEG_HUFFMAN_PROGRESSIVE_DCT 0xc2
1961 #define FF_PROFILE_MJPEG_HUFFMAN_LOSSLESS 0xc3
1962 #define FF_PROFILE_MJPEG_JPEG_LS 0xf7
1964 #define FF_PROFILE_SBC_MSBC 1
1966 #define FF_PROFILE_PRORES_PROXY 0
1967 #define FF_PROFILE_PRORES_LT 1
1968 #define FF_PROFILE_PRORES_STANDARD 2
1969 #define FF_PROFILE_PRORES_HQ 3
1970 #define FF_PROFILE_PRORES_4444 4
1971 #define FF_PROFILE_PRORES_XQ 5
1973 #define FF_PROFILE_ARIB_PROFILE_A 0
1974 #define FF_PROFILE_ARIB_PROFILE_C 1
1976 #define FF_PROFILE_KLVA_SYNC 0
1977 #define FF_PROFILE_KLVA_ASYNC 1
1985 #define FF_LEVEL_UNKNOWN -99
2019 #if FF_API_VBV_DELAY
2032 #if FF_API_SIDEDATA_ONLY_PKT
2118 #define FF_SUB_CHARENC_MODE_DO_NOTHING -1
2119 #define FF_SUB_CHARENC_MODE_AUTOMATIC 0
2120 #define FF_SUB_CHARENC_MODE_PRE_DECODER 1
2121 #define FF_SUB_CHARENC_MODE_IGNORE 2
2150 #define FF_DEBUG_VIS_MV_P_FOR 0x00000001 //visualize forward predicted MVs of P frames
2151 #define FF_DEBUG_VIS_MV_B_FOR 0x00000002 //visualize forward predicted MVs of B frames
2152 #define FF_DEBUG_VIS_MV_B_BACK 0x00000004 //visualize backward predicted MVs of B frames
2184 #define FF_CODEC_PROPERTY_LOSSLESS 0x00000001
2185 #define FF_CODEC_PROPERTY_CLOSED_CAPTIONS 0x00000002
2226 #define FF_SUB_TEXT_FMT_ASS 0
2227 #if FF_API_ASS_TIMING
2228 #define FF_SUB_TEXT_FMT_ASS_WITH_TIMINGS 1
2387 #if FF_API_CODEC_GET_SET
2423 #if FF_API_CODEC_GET_SET
2604 #define AV_HWACCEL_CODEC_CAP_EXPERIMENTAL 0x0200
2614 #define AV_HWACCEL_FLAG_IGNORE_LEVEL (1 << 0)
2620 #define AV_HWACCEL_FLAG_ALLOW_HIGH_DEPTH (1 << 1)
2634 #define AV_HWACCEL_FLAG_ALLOW_PROFILE_MISMATCH (1 << 2)
2640 #if FF_API_AVPICTURE
2685 #define AV_SUBTITLE_FLAG_FORCED 0x00000001
2694 #if FF_API_AVPICTURE
2791 #if FF_API_GET_CONTEXT_DEFAULTS
2808 #if FF_API_GET_FRAME_CLASS
2824 #if FF_API_COPY_CONTEXT
2992 #if FF_API_OLD_ENCDEC
3048 int *got_frame_ptr,
const AVPacket *avpkt);
3097 int *got_picture_ptr,
3404 #define AV_PARSER_PTS_NB 4
3411 #define PARSER_FLAG_COMPLETE_FRAMES 0x0001
3412 #define PARSER_FLAG_ONCE 0x0002
3414 #define PARSER_FLAG_FETCHED_OFFSET 0x0004
3415 #define PARSER_FLAG_USE_CODEC_TS 0x1000
3428 #if FF_API_CONVERGENCE_DURATION
3552 const uint8_t **poutbuf,
int *poutbuf_size,
3553 const uint8_t *buf,
int buf_size);
3615 uint8_t **poutbuf,
int *poutbuf_size,
3616 const uint8_t *buf,
int buf_size,
3617 int64_t
pts, int64_t dts,
3620 #if FF_API_PARSER_CHANGE
3629 uint8_t **poutbuf,
int *poutbuf_size,
3630 const uint8_t *buf,
int buf_size,
int keyframe);
3644 #if FF_API_OLD_ENCDEC
3741 #if FF_API_AVPICTURE
3772 unsigned char *dest,
int dest_size);
3799 int padtop,
int padbottom,
int padleft,
int padright,
int *
color);
3822 #if FF_API_GETCHROMA
3857 int has_alpha,
int *loss_ptr);
3859 #if FF_API_AVCODEC_PIX_FMT
3871 enum AVPixelFormat src_pix_fmt,
int has_alpha,
int *loss_ptr);
3875 enum AVPixelFormat src_pix_fmt,
int has_alpha,
int *loss_ptr);
3884 #if FF_API_TAG_STRING
3953 int buf_size,
int align);
4050 uint8_t **poutbuf,
int *poutbuf_size,
4051 const uint8_t *buf,
int buf_size,
int keyframe);
4099 #if FF_API_USER_VISIBLE_AVHWACCEL
int avcodec_close(AVCodecContext *avctx)
Close a given AVCodecContext and free all the data associated with it (but not the AVCodecContext its...
int(* func)(AVBPrint *dst, const char *in, const char *arg)
int avcodec_encode_subtitle(AVCodecContext *avctx, uint8_t *buf, int buf_size, const AVSubtitle *sub)
int frame_size
Number of samples per channel in an audio frame.
const struct AVHWAccel * hwaccel
Hardware accelerator in use.
it s the only field you need to keep assuming you have a context There is some magic you don t need to care about around this just let it be(in the first position) for now. Options ------- Then comes the options array. This is what will define the user accessible options. For example
void * hwaccel_context
Hardware accelerator context.
attribute_deprecated unsigned av_codec_get_codec_properties(const AVCodecContext *avctx)
static enum AVPixelFormat hw_pix_fmt
attribute_deprecated int64_t convergence_duration
AVPixelFormat
Pixel format.
it s the only field you need to keep assuming you have a context There is some magic you don t need to care about around this just let it vf default minimum maximum flags name is the option name
attribute_deprecated void av_codec_set_pkt_timebase(AVCodecContext *avctx, AVRational val)
int16_t position[3][2]
position of the top left corner in 1/16 pel for up to 3 fields/frames
@ AV_AUDIO_SERVICE_TYPE_VOICE_OVER
int keyint_min
minimum GOP size
@ AV_AUDIO_SERVICE_TYPE_EMERGENCY
int avcodec_receive_packet(AVCodecContext *avctx, AVPacket *avpkt)
Read encoded data from the encoder.
int workaround_bugs
Work around bugs in encoders which sometimes cannot be detected automatically.
unsigned int av_xiphlacing(unsigned char *s, unsigned int v)
Encode extradata length to a buffer.
enum AVPixelFormat(* get_format)(struct AVCodecContext *s, const enum AVPixelFormat *fmt)
callback to negotiate the pixelFormat
int dts_sync_point
Synchronization point for start of timestamp generation.
enum AVAudioServiceType audio_service_type
Type of service that the audio stream conveys.
uint64_t channel_layout
Audio channel layout.
enum AVColorSpace colorspace
YUV colorspace type.
attribute_deprecated int mpeg_quant
AVColorTransferCharacteristic
Color Transfer Characteristic.
const AVClass * av_class
information on struct for av_log
attribute_deprecated AVCodecParser * av_parser_next(const AVCodecParser *c)
attribute_deprecated int avcodec_encode_audio2(AVCodecContext *avctx, AVPacket *avpkt, const AVFrame *frame, int *got_packet_ptr)
Encode a frame of audio.
int sample_rate
samples per second
static double cb(void *priv, double x, double y)
int64_t rc_min_rate
minimum bitrate
int output_picture_number
Picture number incremented in presentation or output order.
This struct describes the properties of an encoded stream.
static float sub(float src0, float src1)
attribute_deprecated int avcodec_decode_audio4(AVCodecContext *avctx, AVFrame *frame, int *got_frame_ptr, const AVPacket *avpkt)
Decode the audio frame of size avpkt->size from avpkt->data into frame.
enum AVMediaType type
Type of codec implemented by the hardware accelerator.
@ AV_PICTURE_STRUCTURE_UNKNOWN
int caps_internal
Internal hwaccel capabilities.
int avcodec_parameters_from_context(AVCodecParameters *par, const AVCodecContext *codec)
Fill the parameters struct based on the values from the supplied codec context.
attribute_deprecated int 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)
int duration
Duration of the current frame.
int err_recognition
Error recognition; may misdetect some more or less valid parts as errors.
void avcodec_string(char *buf, int buf_size, AVCodecContext *enc, int encode)
AVPacketSideData * coded_side_data
Additional data associated with the entire coded stream.
const AVCodecParser * av_parser_iterate(void **opaque)
Iterate over all registered codec parsers.
uint16_t * intra_matrix
custom intra quantization matrix Must be allocated with the av_malloc() family of functions,...
int mv0_threshold
Note: Value depends upon the compare function used for fullpel ME.
float lumi_masking
luminance masking (0-> disabled)
This structure describes decoded (raw) audio or video data.
enum AVColorTransferCharacteristic color_trc
Color Transfer Characteristic.
int pts_dts_delta
Presentation delay of current frame in units of AVCodecContext.time_base.
int * slice_offset
slice offsets in the frame in bytes
const attribute_deprecated AVCodecDescriptor * av_codec_get_codec_descriptor(const AVCodecContext *avctx)
int avcodec_decode_subtitle2(AVCodecContext *avctx, AVSubtitle *sub, int *got_sub_ptr, AVPacket *avpkt)
Decode a subtitle message.
int64_t wallclock
A UTC timestamp, in microseconds, since Unix epoch (e.g, av_gettime()).
attribute_deprecated int av_codec_get_max_lowres(const AVCodec *codec)
attribute_deprecated int av_lockmgr_register(int(*cb)(void **mutex, enum AVLockOp op))
Register a user provided lock manager supporting the operations specified by AVLockOp.
attribute_deprecated void av_codec_set_chroma_intra_matrix(AVCodecContext *avctx, uint16_t *val)
enum AVFieldOrder field_order
Field order.
int capabilities
Hardware accelerated codec capabilities.
@ AV_LOCK_RELEASE
Unlock the mutex.
attribute_deprecated int p_tex_bits
float b_quant_offset
qscale offset between IP and B-frames
void avcodec_align_dimensions(AVCodecContext *s, int *width, int *height)
Modify width and height values so that they will result in a memory buffer that is acceptable for the...
int(* init)(AVCodecContext *avctx)
Initialize the hwaccel private data.
AVLockOp
Lock operation used by lockmgr.
attribute_deprecated void avcodec_register_all(void)
uint8_t * subtitle_header
Header containing style information for text subtitles.
const struct AVBitStreamFilter * filter
attribute_deprecated int skip_count
int cur_frame_start_index
attribute_deprecated void av_codec_set_seek_preroll(AVCodecContext *avctx, int val)
const char * avcodec_profile_name(enum AVCodecID codec_id, int profile)
Return a name for the specified profile, if available.
int me_pre_cmp
motion estimation prepass comparison function
struct AVCodecContext * avctx
AVColorPrimaries
Chromaticity coordinates of the source primaries.
enum AVPixelFormat avcodec_default_get_format(struct AVCodecContext *s, const enum AVPixelFormat *fmt)
enum AVPixelFormat avcodec_find_best_pix_fmt_of_list(const enum AVPixelFormat *pix_fmt_list, enum AVPixelFormat src_pix_fmt, int has_alpha, int *loss_ptr)
Find the best pixel format to convert to given a certain source pixel format.
int mb_decision
macroblock decision mode
int avcodec_is_open(AVCodecContext *s)
int qmax
maximum quantizer
attribute_deprecated int frame_skip_threshold
uint64_t request_channel_layout
Request decoder to use this channel layout if it can (0 for default)
int coded_width
Dimensions of the coded video.
int me_subpel_quality
subpel ME quality
int mb_cmp
macroblock comparison function (not supported yet)
attribute_deprecated uint8_t * data[AV_NUM_DATA_POINTERS]
pointers to the image data planes
int slice_count
slice count
unsigned int avcodec_pix_fmt_to_codec_tag(enum AVPixelFormat pix_fmt)
Return a value representing the fourCC code associated to the pixel format pix_fmt,...
@ SUBTITLE_ASS
Formatted text, the ass field must be set by the decoder and is authoritative.
@ AV_AUDIO_SERVICE_TYPE_NB
Not part of ABI.
attribute_deprecated int frame_bits
int skip_top
Number of macroblock rows at the top which are skipped.
int avcodec_enum_to_chroma_pos(int *xpos, int *ypos, enum AVChromaLocation pos)
Converts AVChromaLocation to swscale x/y chroma position.
int64_t offset
byte offset from starting packet start
attribute_deprecated int pre_me
attribute_deprecated int prediction_method
int key_frame
Set by parser to 1 for key frames and 0 for non-key frames.
enum AVDiscard skip_idct
Skip IDCT/dequantization for selected frames.
float i_quant_factor
qscale factor between P- and I-frames If > 0 then the last P-frame quantizer will be used (q = lastp_...
const struct AVCodec * codec
enum AVDiscard skip_frame
Skip decoding for selected frames.
int thread_count
thread count is used to decide how many independent tasks should be passed to execute()
int x
top left corner of pict, undefined when pict is not set
int initial_padding
Audio only.
int refs
number of reference frames
int avcodec_default_execute2(AVCodecContext *c, int(*func)(AVCodecContext *c2, void *arg2, int, int), void *arg, int *ret, int count)
int width
width and height in 1/16 pel
@ AVDISCARD_NONE
discard nothing
int flags
AV_CODEC_FLAG_*.
int bit_rate_tolerance
number of bits the bitstream is allowed to diverge from the reference.
static double val(void *priv, double ch)
it s the only field you need to keep assuming you have a context There is some magic you don t need to care about around this just let it vf type
int dct_algo
DCT algorithm, see FF_DCT_* below.
AVCodecParserContext * av_parser_init(int codec_id)
struct AVBitStreamFilterContext * next
attribute_deprecated int avcodec_copy_context(AVCodecContext *dest, const AVCodecContext *src)
Copy the settings of the source AVCodecContext into the destination AVCodecContext.
attribute_deprecated int avpicture_get_size(enum AVPixelFormat pix_fmt, int width, int height)
int64_t max_samples
The number of samples per frame to maximally accept.
char * ass
0 terminated ASS/SSA compatible event line.
int priv_data_size
Size of the private data to allocate in AVCodecInternal.hwaccel_priv_data.
attribute_deprecated void av_codec_set_codec_descriptor(AVCodecContext *avctx, const AVCodecDescriptor *desc)
void avsubtitle_free(AVSubtitle *sub)
Free all allocated data in the given subtitle struct.
@ AV_LOCK_OBTAIN
Lock the mutex.
int(* get_buffer2)(struct AVCodecContext *s, AVFrame *frame, int flags)
This callback is called at the beginning of each frame to get data buffer(s) for it.
attribute_deprecated int p_count
@ AV_PICTURE_STRUCTURE_FRAME
enum AVColorPrimaries color_primaries
Chromaticity coordinates of the source primaries.
int64_t cur_frame_end[AV_PARSER_PTS_NB]
int64_t pts_correction_num_faulty_pts
Current statistics for PTS correction.
struct AVCodecParser * parser
int rc_initial_buffer_occupancy
Number of bits which should be loaded into the rc buffer before decoding starts.
int(* alloc_frame)(AVCodecContext *avctx, AVFrame *frame)
Allocate a custom buffer.
int has_b_frames
Size of the frame reordering buffer in the decoder.
AVCodecContext * avcodec_alloc_context3(const AVCodec *codec)
Allocate an AVCodecContext and set its fields to default values.
This struct describes the properties of a single codec described by an AVCodecID.
char * stats_in
pass2 encoding statistics input buffer Concatenated stuff from stats_out of pass1 should be placed he...
int global_quality
Global quality for codecs which cannot change it per frame.
int(* uninit)(AVCodecContext *avctx)
Uninitialize the hwaccel private data.
attribute_deprecated int avpicture_alloc(AVPicture *picture, enum AVPixelFormat pix_fmt, int width, int height)
@ AV_AUDIO_SERVICE_TYPE_VISUALLY_IMPAIRED
int y
top left corner of pict, undefined when pict is not set
static int op(uint8_t **dst, const uint8_t *dst_end, GetByteContext *gb, int pixel, int count, int *x, int width, int linesize)
Perform decode operation.
int ticks_per_frame
For some codecs, the time base is closer to the field rate than the frame rate.
int sub_text_format
Control the form of AVSubtitle.rects[N]->ass.
attribute_deprecated int mv_bits
int error_concealment
error concealment flags
int avcodec_receive_frame(AVCodecContext *avctx, AVFrame *frame)
Return decoded output data from a decoder.
int thread_type
Which multithreading methods to use.
attribute_deprecated int brd_scale
int bits_per_raw_sample
Bits per sample/pixel of internal libavcodec pixel/sample format.
int avcodec_fill_audio_frame(AVFrame *frame, int nb_channels, enum AVSampleFormat sample_fmt, const uint8_t *buf, int buf_size, int align)
Fill AVFrame audio data and linesize pointers.
int format
The format of the coded data, corresponds to enum AVPixelFormat for video and for enum AVSampleFormat...
int64_t pts
Same as packet pts, in AV_TIME_BASE.
static enum AVPixelFormat pix_fmt
void avcodec_align_dimensions2(AVCodecContext *s, int *width, int *height, int linesize_align[AV_NUM_DATA_POINTERS])
Modify width and height values so that they will result in a memory buffer that is acceptable for the...
int64_t max_pixels
The number of pixels per image to maximally accept.
attribute_deprecated void av_picture_copy(AVPicture *dst, const AVPicture *src, enum AVPixelFormat pix_fmt, int width, int height)
int(* decode_params)(AVCodecContext *avctx, int type, const uint8_t *buf, uint32_t buf_size)
Callback for parameter data (SPS/PPS/VPS etc).
int64_t rc_max_rate
maximum bitrate
uint64_t error[AV_NUM_DATA_POINTERS]
error
char * text
0 terminated plain UTF-8 text
This structure describes the bitrate properties of an encoded bitstream.
@ AVDISCARD_BIDIR
discard all bidirectional frames
attribute_deprecated size_t av_get_codec_tag_string(char *buf, size_t buf_size, unsigned int codec_tag)
Put a string representing the codec tag codec_tag in buf.
float p_masking
p block masking (0-> disabled)
const attribute_deprecated AVBitStreamFilter * av_bitstream_filter_next(const AVBitStreamFilter *f)
int dts_ref_dts_delta
Offset of the current timestamp against last timestamp sync point in units of AVCodecContext....
int repeat_pict
This field is used for proper frame duration computation in lavf.
@ AV_PICTURE_STRUCTURE_BOTTOM_FIELD
int rc_buffer_size
decoder bitstream buffer size
char * sub_charenc
DTS of the last frame.
int avg_bitrate
Average bitrate of the stream, in bits per second.
@ AVDISCARD_ALL
discard all
int w
width of pict, undefined when pict is not set
Describe the class of an AVClass context structure.
const AVClass * avcodec_get_class(void)
Get the AVClass for AVCodecContext.
attribute_deprecated int max_prediction_order
int apply_cropping
Video decoding only.
enum AVColorRange color_range
MPEG vs JPEG YUV range.
attribute_deprecated int i_tex_bits
int slice_flags
slice flags
void(* parser_close)(AVCodecParserContext *s)
attribute_deprecated int misc_bits
void avcodec_free_context(AVCodecContext **avctx)
Free the codec context and everything associated with it and write NULL to the provided pointer.
Rational number (pair of numerator and denominator).
float qblur
amount of qscale smoothing over time (0.0-1.0)
attribute_deprecated enum AVPixelFormat 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)
@ AV_PICTURE_STRUCTURE_TOP_FIELD
int64_t bit_rate
the average bitrate
int(* split)(AVCodecContext *avctx, const uint8_t *buf, int buf_size)
int(* end_frame)(AVCodecContext *avctx)
Called at the end of each frame or field picture.
uint8_t * data[4]
data+linesize for the bitmap of this subtitle.
int trailing_padding
Audio only.
attribute_deprecated AVRational av_codec_get_pkt_timebase(const AVCodecContext *avctx)
Accessors for some AVCodecContext fields.
int avcodec_get_context_defaults3(AVCodecContext *s, const AVCodec *codec)
int ildct_cmp
interlaced DCT comparison function
attribute_deprecated int b_frame_strategy
attribute_deprecated int noise_reduction
const char * avcodec_license(void)
Return the libavcodec license.
attribute_deprecated int thread_safe_callbacks
Set by the client if its custom get_buffer() callback can be called synchronously from another thread...
float rc_min_vbv_overflow_use
Ratecontrol attempt to use, at least, times the amount needed to prevent a vbv overflow.
int avcodec_open2(AVCodecContext *avctx, const AVCodec *codec, AVDictionary **options)
Initialize the AVCodecContext to use the given AVCodec.
unsigned avcodec_version(void)
Return the LIBAVCODEC_VERSION_INT constant.
@ AV_AUDIO_SERVICE_TYPE_MAIN
int me_cmp
motion estimation comparison function
enum AVPictureStructure picture_structure
Indicate whether a picture is coded as a frame, top field or bottom field.
attribute_deprecated int context_model
int trellis
trellis RD quantization
This structure supplies correlation between a packet timestamp and a wall clock production time.
AVCPBProperties * av_cpb_properties_alloc(size_t *size)
Allocate a CPB properties structure and initialize its fields to default values.
Undefined Behavior In the C some operations are like signed integer dereferencing freed accessing outside allocated Undefined Behavior must not occur in a C it is not safe even if the output of undefined operations is unused The unsafety may seem nit picking but Optimizing compilers have in fact optimized code on the assumption that no undefined Behavior occurs Optimizing code based on wrong assumptions can and has in some cases lead to effects beyond the output of computations The signed integer overflow problem in speed critical code Code which is highly optimized and works with signed integers sometimes has the problem that often the output of the computation does not c
const AVClass * avcodec_get_subtitle_rect_class(void)
Get the AVClass for AVSubtitleRect.
AVCodecID
Identify the syntax and semantics of the bitstream.
float temporal_cplx_masking
temporary complexity masking (0-> disabled)
attribute_deprecated void av_register_bitstream_filter(AVBitStreamFilter *bsf)
@ AV_AUDIO_SERVICE_TYPE_KARAOKE
float qcompress
amount of qscale change between easy & hard scenes (0.0-1.0)
AVRational time_base
This is the fundamental unit of time (in seconds) in terms of which frame timestamps are represented.
int lowres
low resolution decoding, 1-> 1/2 size, 2->1/4 size
int av_get_bits_per_sample(enum AVCodecID codec_id)
Return codec bits per sample.
const OptionDef options[]
char * stats_out
pass1 encoding statistics output buffer
@ AVDISCARD_NONKEY
discard all frames except keyframes
attribute_deprecated uint64_t vbv_delay
VBV delay coded in the last frame (in periods of a 27 MHz clock).
int flags2
AV_CODEC_FLAG2_*.
attribute_deprecated void av_codec_set_lowres(AVCodecContext *avctx, int val)
int gop_size
the number of pictures in a group of pictures, or 0 for intra_only
@ AVDISCARD_DEFAULT
discard useless packets like 0 size packets in avi
const attribute_deprecated AVBitStreamFilter * av_bsf_next(void **opaque)
int64_t next_frame_offset
const char * av_get_profile_name(const AVCodec *codec, int profile)
Return a name for the specified profile, if available.
int64_t cur_frame_offset[AV_PARSER_PTS_NB]
attribute_deprecated int frame_skip_exp
enum AVSampleFormat sample_fmt
audio sample format
AVRational pkt_timebase
Timebase in which pkt_dts/pts and AVPacket.dts/pts are.
attribute_deprecated enum AVPixelFormat avcodec_find_best_pix_fmt2(enum AVPixelFormat dst_pix_fmt1, enum AVPixelFormat dst_pix_fmt2, enum AVPixelFormat src_pix_fmt, int has_alpha, int *loss_ptr)
int width
Dimensions of the decoded video intended for presentation.
#define AV_NUM_DATA_POINTERS
attribute_deprecated int rtp_payload_size
const attribute_deprecated AVClass * avcodec_get_frame_class(void)
int me_range
maximum motion estimation search range in subpel units If 0 then no limit.
int(* parser_parse)(AVCodecParserContext *s, AVCodecContext *avctx, const uint8_t **poutbuf, int *poutbuf_size, const uint8_t *buf, int buf_size)
int skip_alpha
Skip processing alpha if supported by codec.
uint16_t * chroma_intra_matrix
custom intra quantization matrix
int skip_bottom
Number of macroblock rows at the bottom which are skipped.
int last_predictor_count
amount of previous MV predictors (2a+1 x 2a+1 square)
attribute_deprecated uint16_t * av_codec_get_chroma_intra_matrix(const AVCodecContext *avctx)
uint32_t end_display_time
@ SUBTITLE_TEXT
Plain text, the text field must be set by the decoder and is authoritative.
#define attribute_deprecated
static void encode(AVCodecContext *ctx, AVFrame *frame, AVPacket *pkt, FILE *output)
int me_sub_cmp
subpixel motion estimation comparison function
int64_t pts_correction_num_faulty_dts
Number of incorrect PTS values so far.
attribute_deprecated void av_register_codec_parser(AVCodecParser *parser)
attribute_deprecated int coder_type
int64_t pts_correction_last_pts
Number of incorrect DTS values so far.
int max_bitrate
Maximum bitrate of the stream, in bits per second.
int avcodec_default_execute(AVCodecContext *c, int(*func)(AVCodecContext *c2, void *arg2), void *arg, int *ret, int count, int size)
it s the only field you need to keep assuming you have a context There is some magic you don t need to care about around this just let it vf offset
enum AVSampleFormat request_sample_fmt
desired sample format
attribute_deprecated int 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)
attribute_deprecated int avcodec_encode_video2(AVCodecContext *avctx, AVPacket *avpkt, const AVFrame *frame, int *got_packet_ptr)
Encode a frame of video.
enum AVDiscard skip_loop_filter
Skip loop filtering for selected frames.
attribute_deprecated int i_count
attribute_deprecated AVHWAccel * av_hwaccel_next(const AVHWAccel *hwaccel)
If hwaccel is NULL, returns the first registered hardware accelerator, if hwaccel is non-NULL,...
@ AV_LOCK_CREATE
Create a mutex.
attribute_deprecated void avpicture_free(AVPicture *picture)
@ SUBTITLE_BITMAP
A bitmap, pict will be set.
attribute_deprecated int av_picture_crop(AVPicture *dst, const AVPicture *src, enum AVPixelFormat pix_fmt, int top_band, int left_band)
float b_quant_factor
qscale factor between IP and B-frames If > 0 then the last P-frame quantizer will be used (q= lastp_q...
int64_t cur_frame_pts[AV_PARSER_PTS_NB]
int channels
number of audio channels
AVChromaLocation
Location of chroma samples.
int64_t cur_frame_pos[AV_PARSER_PTS_NB]
Position of the packet in file.
const char * name
Name of the hardware accelerated codec.
uint64_t vbv_delay
The delay between the time the packet this structure is associated with is received and the time when...
@ AV_LOCK_DESTROY
Free mutex resources.
int bits_per_coded_sample
bits per sample/pixel from the demuxer (needed for huffyuv).
int avcodec_default_get_buffer2(AVCodecContext *s, AVFrame *frame, int flags)
The default callback for AVCodecContext.get_buffer2().
int avcodec_send_packet(AVCodecContext *avctx, const AVPacket *avpkt)
Supply raw packet data as input to a decoder.
attribute_deprecated int64_t timecode_frame_start
int64_t pos
Byte position of currently parsed frame in stream.
attribute_deprecated int b_sensitivity
@ AVDISCARD_NONINTRA
discard all non intra frames
unsigned properties
Properties of the stream that gets decoded.
attribute_deprecated void avcodec_register(AVCodec *codec)
uint8_t * extradata
some codecs need / can use extradata like Huffman tables.
int nb_colors
number of colors in pict, undefined when pict is not set
int(* decode_slice)(AVCodecContext *avctx, const uint8_t *buf, uint32_t buf_size)
Callback for each slice.
attribute_deprecated AVCodec * av_codec_next(const AVCodec *c)
If c is NULL, returns the first registered codec, if c is non-NULL, returns the next registered codec...
attribute_deprecated void(* rtp_callback)(struct AVCodecContext *avctx, void *data, int size, int mb_nb)
int avcodec_parameters_to_context(AVCodecContext *codec, const AVCodecParameters *par)
Fill the codec context based on the values from the supplied codec parameters.
@ AV_AUDIO_SERVICE_TYPE_HEARING_IMPAIRED
attribute_deprecated int av_codec_get_lowres(const AVCodecContext *avctx)
int intra_dc_precision
precision of the intra DC coefficient - 8
attribute_deprecated int avcodec_decode_video2(AVCodecContext *avctx, AVFrame *picture, int *got_picture_ptr, const AVPacket *avpkt)
Decode the video frame of size avpkt->size from avpkt->data into picture.
AVColorSpace
YUV colorspace type.
@ AV_AUDIO_SERVICE_TYPE_EFFECTS
int cutoff
Audio cutoff bandwidth (0 means "automatic")
attribute_deprecated int frame_skip_cmp
int hwaccel_flags
Bit set of AV_HWACCEL_FLAG_* flags, which affect hardware accelerated decoding (if active).
AVSampleFormat
Audio sample formats.
void av_fast_padded_malloc(void *ptr, unsigned int *size, size_t min_size)
Same behaviour av_fast_malloc but the buffer has additional AV_INPUT_BUFFER_PADDING_SIZE at the end w...
int(* parser_init)(AVCodecParserContext *s)
int64_t pts_correction_last_dts
PTS of the last frame.
int dia_size
ME diamond size & shape.
uint8_t * dump_separator
dump format separator.
attribute_deprecated int header_bits
int mb_lmin
minimum MB Lagrange multiplier
int av_get_audio_frame_duration(AVCodecContext *avctx, int frame_bytes)
Return audio frame duration.
attribute_deprecated AVPicture pict
int idct_algo
IDCT algorithm, see FF_IDCT_* below.
AVBufferRef * hw_device_ctx
A reference to the AVHWDeviceContext describing the device which will be used by a hardware encoder/d...
enum AVChromaLocation chroma_sample_location
This defines the location of chroma samples.
attribute_deprecated void av_register_hwaccel(AVHWAccel *hwaccel)
Register the hardware accelerator hwaccel.
int min_bitrate
Minimum bitrate of the stream, in bits per second.
int avcodec_send_frame(AVCodecContext *avctx, const AVFrame *frame)
Supply a raw video or audio frame to the encoder.
enum AVPixelFormat pix_fmt
Pixel format, see AV_PIX_FMT_xxx.
AVCodecParserContext * parser
attribute_deprecated void av_bitstream_filter_close(AVBitStreamFilterContext *bsf)
int av_get_exact_bits_per_sample(enum AVCodecID codec_id)
Return codec bits per sample.
AVBufferRef * hw_frames_ctx
A reference to the AVHWFramesContext describing the input (for encoding) or output (decoding) frames.
attribute_deprecated void avcodec_get_chroma_sub_sample(enum AVPixelFormat pix_fmt, int *h_shift, int *v_shift)
int sub_charenc_mode
Subtitles character encoding mode.
attribute_deprecated int av_parser_change(AVCodecParserContext *s, AVCodecContext *avctx, uint8_t **poutbuf, int *poutbuf_size, const uint8_t *buf, int buf_size, int keyframe)
void(* decode_mb)(struct MpegEncContext *s)
Called for every Macroblock in a slice.
int avcodec_get_hw_frames_parameters(AVCodecContext *avctx, AVBufferRef *device_ref, enum AVPixelFormat hw_pix_fmt, AVBufferRef **out_frames_ref)
Create and return a AVHWFramesContext with values adequate for hardware decoding.
int h
height of pict, undefined when pict is not set
int block_align
number of bytes per packet if constant and known or 0 Used by some WAV based audio codecs.
void avcodec_flush_buffers(AVCodecContext *avctx)
Reset the internal codec state / flush internal buffers.
these buffered frames must be flushed immediately if a new input produces new the filter must not call request_frame to get more It must just process the frame or queue it The task of requesting more frames is left to the filter s request_frame method or the application If a filter has several the filter must be ready for frames arriving randomly on any input any filter with several inputs will most likely require some kind of queuing mechanism It is perfectly acceptable to have a limited queue and to drop frames when the inputs are too unbalanced request_frame For filters that do not use the this method is called when a frame is wanted on an output For a it should directly call filter_frame on the corresponding output For a if there are queued frames already one of these frames should be pushed If the filter should request a frame on one of its repeatedly until at least one frame has been pushed Return or at least make progress towards producing a frame
int buffer_size
The size of the buffer to which the ratecontrol is applied, in bits.
int strict_std_compliance
strictly follow the standard (MPEG-4, ...).
attribute_deprecated int avpicture_layout(const AVPicture *src, enum AVPixelFormat pix_fmt, int width, int height, unsigned char *dest, int dest_size)
void * opaque
Private data of the user, can be used to carry app specific stuff.
attribute_deprecated int refcounted_frames
If non-zero, the decoded audio and video frames returned from avcodec_decode_video2() and avcodec_dec...
void(* draw_horiz_band)(struct AVCodecContext *s, const AVFrame *src, int offset[AV_NUM_DATA_POINTERS], int y, int type, int height)
If non NULL, 'draw_horiz_band' is called by the libavcodec decoder to draw a horizontal band.
attribute_deprecated int scenechange_threshold
@ AV_AUDIO_SERVICE_TYPE_COMMENTARY
attribute_deprecated int av_codec_get_seek_preroll(const AVCodecContext *avctx)
int max_qdiff
maximum quantizer difference between frames
float dark_masking
darkness masking (0-> disabled)
attribute_deprecated AVFrame * coded_frame
the picture in the bitstream
main external API structure.
int active_thread_type
Which multithreading methods are in use by the codec.
const AVCodecDescriptor * codec_descriptor
AVCodecDescriptor.
enum AVFieldOrder field_order
int(* execute)(struct AVCodecContext *c, int(*func)(struct AVCodecContext *c2, void *arg), void *arg2, int *ret, int count, int size)
The codec may call this to execute several independent things.
int qmin
minimum quantizer
enum AVCodecID av_get_pcm_codec(enum AVSampleFormat fmt, int be)
Return the PCM codec associated with a sample format.
int frame_priv_data_size
Size of per-frame hardware accelerator private data.
void av_fast_padded_mallocz(void *ptr, unsigned int *size, size_t min_size)
Same behaviour av_fast_padded_malloc except that buffer will always be 0-initialized after call.
int(* get_encode_buffer)(struct AVCodecContext *s, AVPacket *pkt, int flags)
This callback is called at the beginning of each packet to get a data buffer for it.
float spatial_cplx_masking
spatial complexity masking (0-> disabled)
float i_quant_offset
qscale offset between P and I-frames
int discard_damaged_percentage
The percentage of damaged samples to discard a frame.
int mb_lmax
maximum MB Lagrange multiplier
int export_side_data
Bit set of AV_CODEC_EXPORT_DATA_* flags, which affects the kind of metadata exported in frame,...
int av_get_audio_frame_duration2(AVCodecParameters *par, int frame_bytes)
This function is the same as av_get_audio_frame_duration(), except it works with AVCodecParameters in...
enum AVChromaLocation avcodec_chroma_pos_to_enum(int xpos, int ypos)
Converts swscale x/y chroma position to AVChromaLocation.
int pre_dia_size
ME prepass diamond size & shape.
char * args
Internal default arguments, used if NULL is passed to av_bitstream_filter_filter().
int(* start_frame)(AVCodecContext *avctx, const uint8_t *buf, uint32_t buf_size)
Called at the beginning of each frame or field picture.
int coded_width
Bitstream width / height, may be different from width/height e.g.
enum AVMediaType codec_type
int seek_preroll
Number of samples to skip after a discontinuity.
int av_parser_parse2(AVCodecParserContext *s, AVCodecContext *avctx, uint8_t **poutbuf, int *poutbuf_size, const uint8_t *buf, int buf_size, int64_t pts, int64_t dts, int64_t pos)
Parse a packet.
int max_b_frames
maximum number of B-frames between non-B-frames Note: The output will be delayed by max_b_frames+1 re...
A reference to a data buffer.
int frame_number
Frame counter, set by libavcodec.
float rc_max_available_vbv_use
Ratecontrol attempt to use, at maximum, of what can be used without an underflow.
attribute_deprecated int chromaoffset
@ AV_AUDIO_SERVICE_TYPE_DIALOGUE
unsigned int codec_tag
fourcc (LSB first, so "ABCD" -> ('D'<<24) + ('C'<<16) + ('B'<<8) + 'A').
int slices
Number of slices.
This structure stores compressed data.
int avcodec_default_get_encode_buffer(AVCodecContext *s, AVPacket *pkt, int flags)
The default callback for AVCodecContext.get_encode_buffer().
int64_t last_pos
Previous frame byte position.
uint16_t * inter_matrix
custom inter quantization matrix Must be allocated with the av_malloc() family of functions,...
attribute_deprecated int avpicture_fill(AVPicture *picture, const uint8_t *ptr, enum AVPixelFormat pix_fmt, int width, int height)
int(* frame_params)(AVCodecContext *avctx, AVBufferRef *hw_frames_ctx)
Fill the given hw_frames context with current codec parameters.
int rc_override_count
ratecontrol override, see RcOverride
int64_t reordered_opaque
opaque 64-bit number (generally a PTS) that will be reordered and output in AVFrame....
const char * avcodec_configuration(void)
Return the libavcodec build-time configuration.
attribute_deprecated int linesize[AV_NUM_DATA_POINTERS]
number of bytes per line
int width
picture width / height.
attribute_deprecated int me_penalty_compensation
attribute_deprecated int min_prediction_order
attribute_deprecated int debug_mv
#define flags(name, subs,...)
enum AVPixelFormat sw_pix_fmt
Nominal unaccelerated pixel format, see AV_PIX_FMT_xxx.
int64_t cur_frame_dts[AV_PARSER_PTS_NB]
char * codec_whitelist
',' separated list of allowed decoders.
@ AVDISCARD_NONREF
discard all non reference
AVColorRange
Visual content value range.
attribute_deprecated int frame_skip_factor
attribute_deprecated struct AVCodecParser * next
int(* execute2)(struct AVCodecContext *c, int(*func)(struct AVCodecContext *c2, void *arg, int jobnr, int threadnr), void *arg2, int *ret, int count)
The codec may call this to execute several independent things.
enum AVPixelFormat pix_fmt
Supported pixel format.
AVRational sample_aspect_ratio
sample aspect ratio (0 if unknown) That is the width of a pixel divided by the height of the pixel.
uint32_t start_display_time
attribute_deprecated int avcodec_get_pix_fmt_loss(enum AVPixelFormat dst_pix_fmt, enum AVPixelFormat src_pix_fmt, int has_alpha)
void av_parser_close(AVCodecParserContext *s)
attribute_deprecated AVBitStreamFilterContext * av_bitstream_filter_init(const char *name)
enum AVCodecID id
Codec implemented by the hardware accelerator.
attribute_deprecated int side_data_only_packets
Encoding only and set by default.