15#define AVCODEC_AVCODEC_H
17#define AVUTIL_SAMPLEFMT_H
59 int nb_channels,
int nb_samples,
69 int src_offset,
int nb_samples,
int nb_channels,
75#define AVUTIL_ATTRIBUTES_H
77# define AV_GCC_VERSION_AT_LEAST(x,y) 0
78# define AV_GCC_VERSION_AT_MOST(x,y) 0
80# define AV_HAS_BUILTIN(x) 0
82# define av_always_inline inline
84# define av_extern_inline inline
86# define av_warn_unused_result
98# define attribute_deprecated
100# define AV_NOWARN_DEPRECATED(code) code
108# define av_uninit(x) x
110# define av_builtin_constant_p(x) 0
111# define av_printf_format(fmtpos, attrpos)
115#define AVUTIL_AVUTIL_H
137#define FF_LAMBDA_SHIFT 7
138#define FF_LAMBDA_SCALE (1<<FF_LAMBDA_SHIFT)
139#define FF_QP2LAMBDA 118
140#define FF_LAMBDA_MAX (256*128-1)
142#define FF_QUALITY_SCALE FF_LAMBDA_SCALE
144#define AV_NOPTS_VALUE ((int64_t)UINT64_C(0x8000000000000000))
146#define AV_TIME_BASE 1000000
148#define AV_TIME_BASE_Q (AVRational){1, AV_TIME_BASE}
163#define AVUTIL_COMMON_H
165#define AVUTIL_ERROR_H
167#define AVUTIL_MACROS_H
169# define AV_NE(be, le) (le)
171#define FFDIFFSIGN(x,y) (((x)>(y)) - ((x)<(y)))
173#define FFMAX(a,b) ((a) > (b) ? (a) : (b))
174#define FFMAX3(a,b,c) FFMAX(FFMAX(a,b),c)
175#define FFMIN(a,b) ((a) > (b) ? (b) : (a))
176#define FFMIN3(a,b,c) FFMIN(FFMIN(a,b),c)
178#define FFSWAP(type,a,b) do{type SWAP_tmp= b; b= a; a= SWAP_tmp;}while(0)
179#define FF_ARRAY_ELEMS(a) (sizeof(a) / sizeof((a)[0]))
181#define MKTAG(a,b,c,d) ((a) | ((b) << 8) | ((c) << 16) | ((unsigned)(d) << 24))
182#define MKBETAG(a,b,c,d) ((d) | ((c) << 8) | ((b) << 16) | ((unsigned)(a) << 24))
184#define AV_STRINGIFY(s) AV_TOSTRING(s)
185#define AV_TOSTRING(s) #s
187#define AV_GLUE(a, b) a ## b
188#define AV_JOIN(a, b) AV_GLUE(a, b)
190#define AV_PRAGMA(s) _Pragma(#s)
192#define FFALIGN(x, a) (((x)+(a)-1)&~((a)-1))
194#define AVERROR(e) (e)
195#define AVUNERROR(e) (e)
197#define FFERRTAG(a, b, c, d) (-(int)MKTAG(a, b, c, d))
199#define AVERROR_BSF_NOT_FOUND FFERRTAG(0xF8,'B','S','F')
200#define AVERROR_BUG FFERRTAG( 'B','U','G','!')
201#define AVERROR_BUFFER_TOO_SMALL FFERRTAG( 'B','U','F','S')
202#define AVERROR_DECODER_NOT_FOUND FFERRTAG(0xF8,'D','E','C')
203#define AVERROR_DEMUXER_NOT_FOUND FFERRTAG(0xF8,'D','E','M')
204#define AVERROR_ENCODER_NOT_FOUND FFERRTAG(0xF8,'E','N','C')
205#define AVERROR_EOF FFERRTAG( 'E','O','F',' ')
206#define AVERROR_EXIT FFERRTAG( 'E','X','I','T')
207#define AVERROR_EXTERNAL FFERRTAG( 'E','X','T',' ')
208#define AVERROR_FILTER_NOT_FOUND FFERRTAG(0xF8,'F','I','L')
209#define AVERROR_INVALIDDATA FFERRTAG( 'I','N','D','A')
210#define AVERROR_MUXER_NOT_FOUND FFERRTAG(0xF8,'M','U','X')
211#define AVERROR_OPTION_NOT_FOUND FFERRTAG(0xF8,'O','P','T')
212#define AVERROR_PATCHWELCOME FFERRTAG( 'P','A','W','E')
213#define AVERROR_PROTOCOL_NOT_FOUND FFERRTAG(0xF8,'P','R','O')
215#define AVERROR_STREAM_NOT_FOUND FFERRTAG(0xF8,'S','T','R')
217#define AVERROR_BUG2 FFERRTAG( 'B','U','G',' ')
218#define AVERROR_UNKNOWN FFERRTAG( 'U','N','K','N')
219#define AVERROR_EXPERIMENTAL (-0x2bb2afa8)
220#define AVERROR_INPUT_CHANGED (-0x636e6701)
221#define AVERROR_OUTPUT_CHANGED (-0x636e6702)
223#define AVERROR_HTTP_BAD_REQUEST FFERRTAG(0xF8,'4','0','0')
224#define AVERROR_HTTP_UNAUTHORIZED FFERRTAG(0xF8,'4','0','1')
225#define AVERROR_HTTP_FORBIDDEN FFERRTAG(0xF8,'4','0','3')
226#define AVERROR_HTTP_NOT_FOUND FFERRTAG(0xF8,'4','0','4')
227#define AVERROR_HTTP_OTHER_4XX FFERRTAG(0xF8,'4','X','X')
228#define AVERROR_HTTP_SERVER_ERROR FFERRTAG(0xF8,'5','X','X')
230#define AV_ERROR_MAX_STRING_SIZE 64
240#define av_err2str(errnum) \
241 av_make_error_string((char[AV_ERROR_MAX_STRING_SIZE]){0}, AV_ERROR_MAX_STRING_SIZE, errnum)
245 #define av_malloc_attrib
247 #define av_alloc_size(...)
292 const uint8_t *elem_data);
298#define RSHIFT(a,b) ((a) > 0 ? ((a) + ((1<<(b))>>1))>>(b) : ((a) + ((1<<(b))>>1)-1)>>(b))
300#define ROUNDED_DIV(a,b) (((a)>=0 ? (a) + ((b)>>1) : (a) - ((b)>>1))/(b))
302#define AV_CEIL_RSHIFT(a,b) (!av_builtin_constant_p(b) ? -((-(a)) >> (b)) \
303 : ((a) + (1<<(b)) - 1) >> (b))
305#define FF_CEIL_RSHIFT AV_CEIL_RSHIFT
307#define FFUDIV(a,b) (((a)>0 ?(a):(a)-(b)+1) / (b))
308#define FFUMOD(a,b) ((a)-(b)*FFUDIV(a,b))
310#define FFABS(a) ((a) >= 0 ? (a) : (-(a)))
311#define FFSIGN(a) ((a) > 0 ? 1 : -1)
313#define FFNABS(a) ((a) <= 0 ? (a) : (-(a)))
315#define FFABSU(a) ((a) <= 0 ? -(unsigned)(a) : (unsigned)(a))
316#define FFABS64U(a) ((a) <= 0 ? -(uint64_t)(a) : (uint64_t)(a))
318# define av_ceil_log2 av_ceil_log2_c
319# define av_clip av_clip_c
320# define av_clip64 av_clip64_c
321# define av_clip_uint8 av_clip_uint8_c
322# define av_clip_int8 av_clip_int8_c
323# define av_clip_uint16 av_clip_uint16_c
324# define av_clip_int16 av_clip_int16_c
325# define av_clipl_int32 av_clipl_int32_c
326# define av_clip_intp2 av_clip_intp2_c
327# define av_clip_uintp2 av_clip_uintp2_c
328# define av_mod_uintp2 av_mod_uintp2_c
329# define av_sat_add32 av_sat_add32_c
330# define av_sat_dadd32 av_sat_dadd32_c
331# define av_sat_sub32 av_sat_sub32_c
332# define av_sat_dsub32 av_sat_dsub32_c
333# define av_sat_add64 av_sat_add64_c
334# define av_sat_sub64 av_sat_sub64_c
335# define av_clipf av_clipf_c
336# define av_clipd av_clipd_c
337# define av_popcount av_popcount_c
338# define av_popcount64 av_popcount64_c
339# define av_parity av_parity_c
347 if (a < amin)
return amin;
348 else if (a > amax)
return amax;
354 if (a < amin)
return amin;
355 else if (a > amax)
return amax;
361 if (a&(~0xFF))
return (~a)>>31;
367 if ((a+0x80U) & ~0xFF)
return (a>>31) ^ 0x7F;
373 if (a&(~0xFFFF))
return (~a)>>31;
379 if ((a+0x8000U) & ~0xFFFF)
return (a>>31) ^ 0x7FFF;
385 if ((a+0x80000000u) & ~UINT64_C(0xFFFFFFFF))
return (int32_t)((a>>63) ^ 0x7FFFFFFF);
386 else return (int32_t)a;
391 if (((
unsigned)a + (1 << p)) & ~((2 << p) - 1))
392 return (a >> 31) ^ ((1 << p) - 1);
399 if (a & ~((1<<p) - 1))
return (~a) >> 31 & ((1<<p) - 1);
405 return a & ((1U << p) - 1);
429 int64_t s = a+(uint64_t)b;
430 if ((int64_t)(a^b | ~s^b) >= 0)
431 return INT64_MAX ^ (b >> 63);
436 if (b <= 0 && a >= INT64_MAX + b)
438 if (b >= 0 && a <= INT64_MIN + b)
460 x -= (x >> 1) & 0x55555555;
461 x = (x & 0x33333333) + ((x >> 2) & 0x33333333);
462 x = (x + (x >> 4)) & 0x0F0F0F0F;
464 return (x + (x >> 16)) & 0x3F;
477#define GET_UTF8(val, GET_BYTE, ERROR)\
480 uint32_t top = (val & 128) >> 1;\
481 if ((val & 0xc0) == 0x80 || val >= 0xFE)\
484 unsigned int tmp = (GET_BYTE) - 128;\
487 val= (val<<6) + tmp;\
490 val &= (top << 1) - 1;\
493#define GET_UTF16(val, GET_16BIT, ERROR)\
496 unsigned int hi = val - 0xD800;\
498 val = (GET_16BIT) - 0xDC00;\
499 if (val > 0x3FFU || hi > 0x3FFU)\
501 val += (hi<<10) + 0x10000;\
505#define PUT_UTF8(val, tmp, PUT_BYTE)\
513 bytes = (av_log2(in) + 4) / 5;\
514 shift = (bytes - 1) * 6;\
515 tmp = (256 - (256 >> bytes)) | (in >> shift);\
517 while (shift >= 6) {\
519 tmp = 0x80 | ((in >> shift) & 0x3f);\
525#define PUT_UTF16(val, tmp, PUT_16BIT)\
532 tmp = 0xD800 | ((in - 0x10000) >> 10);\
534 tmp = 0xDC00 | ((in - 0x10000) & 0x3FF);\
539#define AVUTIL_RATIONAL_H
553 const int64_t tmp= a.
num * (int64_t)b.
den - b.
num * (int64_t)a.
den;
555 if(tmp)
return (
int)((tmp ^ a.
den ^ b.
den)>>63)|1;
556 else if(b.
den && a.
den)
return 0;
557 else if(a.
num && b.
num)
return (a.
num>>31) - (b.
num>>31);
562 return a.
num / (double) a.
den;
565int av_reduce(
int *dst_num,
int *dst_den, int64_t num, int64_t den, int64_t max);
591#define AVUTIL_VERSION_H
593#define AV_VERSION_INT(a, b, c) ((a)<<16 | (b)<<8 | (c))
594#define AV_VERSION_DOT(a, b, c) a ##.## b ##.## c
595#define AV_VERSION(a, b, c) AV_VERSION_DOT(a, b, c)
597#define AV_VERSION_MAJOR(a) ((a) >> 16)
598#define AV_VERSION_MINOR(a) (((a) & 0x00FF00) >> 8)
599#define AV_VERSION_MICRO(a) ((a) & 0xFF)
601#define LIBAVUTIL_VERSION_MAJOR 59
602#define LIBAVUTIL_VERSION_MINOR 8
603#define LIBAVUTIL_VERSION_MICRO 100
605#define LIBAVUTIL_VERSION_INT AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \
606 LIBAVUTIL_VERSION_MINOR, \
607 LIBAVUTIL_VERSION_MICRO)
608#define LIBAVUTIL_VERSION AV_VERSION(LIBAVUTIL_VERSION_MAJOR, \
609 LIBAVUTIL_VERSION_MINOR, \
610 LIBAVUTIL_VERSION_MICRO)
611#define LIBAVUTIL_BUILD LIBAVUTIL_VERSION_INT
613#define LIBAVUTIL_IDENT "Lavu" AV_STRINGIFY(LIBAVUTIL_VERSION)
615#define FF_API_HDR_VIVID_THREE_SPLINE (LIBAVUTIL_VERSION_MAJOR < 60)
616#define FF_API_FRAME_PKT (LIBAVUTIL_VERSION_MAJOR < 60)
617#define FF_API_INTERLACED_FRAME (LIBAVUTIL_VERSION_MAJOR < 60)
618#define FF_API_FRAME_KEY (LIBAVUTIL_VERSION_MAJOR < 60)
619#define FF_API_PALETTE_HAS_CHANGED (LIBAVUTIL_VERSION_MAJOR < 60)
620#define FF_API_VULKAN_CONTIGUOUS_MEMORY (LIBAVUTIL_VERSION_MAJOR < 60)
621#define FF_API_H274_FILM_GRAIN_VCS (LIBAVUTIL_VERSION_MAJOR < 60)
623#define AVUTIL_MATHEMATICS_H
625#define AVUTIL_INTFLOAT_H
665#define M_E 2.7182818284590452354
666#define M_Ef 2.7182818284590452354f
667#define M_LN2 0.69314718055994530942
668#define M_LN2f 0.69314718055994530942f
669#define M_LN10 2.30258509299404568402
670#define M_LN10f 2.30258509299404568402f
671#define M_LOG2_10 3.32192809488736234787
672#define M_LOG2_10f 3.32192809488736234787f
673#define M_PHI 1.61803398874989484820
674#define M_PHIf 1.61803398874989484820f
675#define M_PI 3.14159265358979323846
676#define M_PIf 3.14159265358979323846f
677#define M_PI_2 1.57079632679489661923
678#define M_PI_2f 1.57079632679489661923f
679#define M_PI_4 0.78539816339744830962
680#define M_PI_4f 0.78539816339744830962f
681#define M_1_PI 0.31830988618379067154
682#define M_1_PIf 0.31830988618379067154f
683#define M_2_PI 0.63661977236758134308
684#define M_2_PIf 0.63661977236758134308f
685#define M_2_SQRTPI 1.12837916709551257390
686#define M_2_SQRTPIf 1.12837916709551257390f
687#define M_SQRT1_2 0.70710678118654752440
688#define M_SQRT1_2f 0.70710678118654752440f
689#define M_SQRT2 1.41421356237309504880
690#define M_SQRT2f 1.41421356237309504880f
691#define NAN av_int2float(0x7fc00000)
692#define INFINITY av_int2float(0x7f800000)
748#define AV_IS_INPUT_DEVICE(category) \
749 (((category) == AV_CLASS_CATEGORY_DEVICE_VIDEO_INPUT) || \
750 ((category) == AV_CLASS_CATEGORY_DEVICE_AUDIO_INPUT) || \
751 ((category) == AV_CLASS_CATEGORY_DEVICE_INPUT))
753#define AV_IS_OUTPUT_DEVICE(category) \
754 (((category) == AV_CLASS_CATEGORY_DEVICE_VIDEO_OUTPUT) || \
755 ((category) == AV_CLASS_CATEGORY_DEVICE_AUDIO_OUTPUT) || \
756 ((category) == AV_CLASS_CATEGORY_DEVICE_OUTPUT))
758struct AVOptionRanges;
764 const char* (*item_name)(
void* ctx);
766 const struct AVOption *
option;
778 int (*
query_ranges)(
struct AVOptionRanges **,
void *obj,
const char *
key,
int flags);
780 void* (*child_next)(
void *obj,
void *prev);
782 const struct AVClass* (*child_class_iterate)(
void **iter);
785#define AV_LOG_QUIET -8
787#define AV_LOG_PANIC 0
789#define AV_LOG_FATAL 8
791#define AV_LOG_ERROR 16
793#define AV_LOG_WARNING 24
795#define AV_LOG_INFO 32
797#define AV_LOG_VERBOSE 40
799#define AV_LOG_DEBUG 48
801#define AV_LOG_TRACE 56
803#define AV_LOG_MAX_OFFSET (AV_LOG_TRACE - AV_LOG_QUIET)
805#define AV_LOG_C(x) ((x) << 8)
811void av_vlog(
void *avcl,
int level, const
char *fmt, va_list vl);
826 char *line,
int line_size,
int *print_prefix);
829 char *line,
int line_size,
int *print_prefix);
831#define AV_LOG_SKIP_REPEATED 1
833#define AV_LOG_PRINT_LEVEL 2
838#define AVUTIL_PIXFMT_H
840#define AVPALETTE_SIZE 1024
841#define AVPALETTE_COUNT 256
843#define AV_VIDEO_MAX_PLANES 4
1142# define AV_PIX_FMT_NE(be, le) AV_PIX_FMT_##le
1144#define AV_PIX_FMT_RGB32 AV_PIX_FMT_NE(ARGB, BGRA)
1145#define AV_PIX_FMT_RGB32_1 AV_PIX_FMT_NE(RGBA, ABGR)
1146#define AV_PIX_FMT_BGR32 AV_PIX_FMT_NE(ABGR, RGBA)
1147#define AV_PIX_FMT_BGR32_1 AV_PIX_FMT_NE(BGRA, ARGB)
1148#define AV_PIX_FMT_0RGB32 AV_PIX_FMT_NE(0RGB, BGR0)
1149#define AV_PIX_FMT_0BGR32 AV_PIX_FMT_NE(0BGR, RGB0)
1151#define AV_PIX_FMT_GRAY9 AV_PIX_FMT_NE(GRAY9BE, GRAY9LE)
1152#define AV_PIX_FMT_GRAY10 AV_PIX_FMT_NE(GRAY10BE, GRAY10LE)
1153#define AV_PIX_FMT_GRAY12 AV_PIX_FMT_NE(GRAY12BE, GRAY12LE)
1154#define AV_PIX_FMT_GRAY14 AV_PIX_FMT_NE(GRAY14BE, GRAY14LE)
1155#define AV_PIX_FMT_GRAY16 AV_PIX_FMT_NE(GRAY16BE, GRAY16LE)
1156#define AV_PIX_FMT_YA16 AV_PIX_FMT_NE(YA16BE, YA16LE)
1157#define AV_PIX_FMT_RGB48 AV_PIX_FMT_NE(RGB48BE, RGB48LE)
1158#define AV_PIX_FMT_RGB565 AV_PIX_FMT_NE(RGB565BE, RGB565LE)
1159#define AV_PIX_FMT_RGB555 AV_PIX_FMT_NE(RGB555BE, RGB555LE)
1160#define AV_PIX_FMT_RGB444 AV_PIX_FMT_NE(RGB444BE, RGB444LE)
1161#define AV_PIX_FMT_RGBA64 AV_PIX_FMT_NE(RGBA64BE, RGBA64LE)
1162#define AV_PIX_FMT_BGR48 AV_PIX_FMT_NE(BGR48BE, BGR48LE)
1163#define AV_PIX_FMT_BGR565 AV_PIX_FMT_NE(BGR565BE, BGR565LE)
1164#define AV_PIX_FMT_BGR555 AV_PIX_FMT_NE(BGR555BE, BGR555LE)
1165#define AV_PIX_FMT_BGR444 AV_PIX_FMT_NE(BGR444BE, BGR444LE)
1166#define AV_PIX_FMT_BGRA64 AV_PIX_FMT_NE(BGRA64BE, BGRA64LE)
1168#define AV_PIX_FMT_YUV420P9 AV_PIX_FMT_NE(YUV420P9BE , YUV420P9LE)
1169#define AV_PIX_FMT_YUV422P9 AV_PIX_FMT_NE(YUV422P9BE , YUV422P9LE)
1170#define AV_PIX_FMT_YUV444P9 AV_PIX_FMT_NE(YUV444P9BE , YUV444P9LE)
1171#define AV_PIX_FMT_YUV420P10 AV_PIX_FMT_NE(YUV420P10BE, YUV420P10LE)
1172#define AV_PIX_FMT_YUV422P10 AV_PIX_FMT_NE(YUV422P10BE, YUV422P10LE)
1173#define AV_PIX_FMT_YUV440P10 AV_PIX_FMT_NE(YUV440P10BE, YUV440P10LE)
1174#define AV_PIX_FMT_YUV444P10 AV_PIX_FMT_NE(YUV444P10BE, YUV444P10LE)
1175#define AV_PIX_FMT_YUV420P12 AV_PIX_FMT_NE(YUV420P12BE, YUV420P12LE)
1176#define AV_PIX_FMT_YUV422P12 AV_PIX_FMT_NE(YUV422P12BE, YUV422P12LE)
1177#define AV_PIX_FMT_YUV440P12 AV_PIX_FMT_NE(YUV440P12BE, YUV440P12LE)
1178#define AV_PIX_FMT_YUV444P12 AV_PIX_FMT_NE(YUV444P12BE, YUV444P12LE)
1179#define AV_PIX_FMT_YUV420P14 AV_PIX_FMT_NE(YUV420P14BE, YUV420P14LE)
1180#define AV_PIX_FMT_YUV422P14 AV_PIX_FMT_NE(YUV422P14BE, YUV422P14LE)
1181#define AV_PIX_FMT_YUV444P14 AV_PIX_FMT_NE(YUV444P14BE, YUV444P14LE)
1182#define AV_PIX_FMT_YUV420P16 AV_PIX_FMT_NE(YUV420P16BE, YUV420P16LE)
1183#define AV_PIX_FMT_YUV422P16 AV_PIX_FMT_NE(YUV422P16BE, YUV422P16LE)
1184#define AV_PIX_FMT_YUV444P16 AV_PIX_FMT_NE(YUV444P16BE, YUV444P16LE)
1186#define AV_PIX_FMT_GBRP9 AV_PIX_FMT_NE(GBRP9BE , GBRP9LE)
1187#define AV_PIX_FMT_GBRP10 AV_PIX_FMT_NE(GBRP10BE, GBRP10LE)
1188#define AV_PIX_FMT_GBRP12 AV_PIX_FMT_NE(GBRP12BE, GBRP12LE)
1189#define AV_PIX_FMT_GBRP14 AV_PIX_FMT_NE(GBRP14BE, GBRP14LE)
1190#define AV_PIX_FMT_GBRP16 AV_PIX_FMT_NE(GBRP16BE, GBRP16LE)
1191#define AV_PIX_FMT_GBRAP10 AV_PIX_FMT_NE(GBRAP10BE, GBRAP10LE)
1192#define AV_PIX_FMT_GBRAP12 AV_PIX_FMT_NE(GBRAP12BE, GBRAP12LE)
1193#define AV_PIX_FMT_GBRAP14 AV_PIX_FMT_NE(GBRAP14BE, GBRAP14LE)
1194#define AV_PIX_FMT_GBRAP16 AV_PIX_FMT_NE(GBRAP16BE, GBRAP16LE)
1196#define AV_PIX_FMT_BAYER_BGGR16 AV_PIX_FMT_NE(BAYER_BGGR16BE, BAYER_BGGR16LE)
1197#define AV_PIX_FMT_BAYER_RGGB16 AV_PIX_FMT_NE(BAYER_RGGB16BE, BAYER_RGGB16LE)
1198#define AV_PIX_FMT_BAYER_GBRG16 AV_PIX_FMT_NE(BAYER_GBRG16BE, BAYER_GBRG16LE)
1199#define AV_PIX_FMT_BAYER_GRBG16 AV_PIX_FMT_NE(BAYER_GRBG16BE, BAYER_GRBG16LE)
1201#define AV_PIX_FMT_GBRPF32 AV_PIX_FMT_NE(GBRPF32BE, GBRPF32LE)
1202#define AV_PIX_FMT_GBRAPF32 AV_PIX_FMT_NE(GBRAPF32BE, GBRAPF32LE)
1204#define AV_PIX_FMT_GRAYF32 AV_PIX_FMT_NE(GRAYF32BE, GRAYF32LE)
1206#define AV_PIX_FMT_YUVA420P9 AV_PIX_FMT_NE(YUVA420P9BE , YUVA420P9LE)
1207#define AV_PIX_FMT_YUVA422P9 AV_PIX_FMT_NE(YUVA422P9BE , YUVA422P9LE)
1208#define AV_PIX_FMT_YUVA444P9 AV_PIX_FMT_NE(YUVA444P9BE , YUVA444P9LE)
1209#define AV_PIX_FMT_YUVA420P10 AV_PIX_FMT_NE(YUVA420P10BE, YUVA420P10LE)
1210#define AV_PIX_FMT_YUVA422P10 AV_PIX_FMT_NE(YUVA422P10BE, YUVA422P10LE)
1211#define AV_PIX_FMT_YUVA444P10 AV_PIX_FMT_NE(YUVA444P10BE, YUVA444P10LE)
1212#define AV_PIX_FMT_YUVA422P12 AV_PIX_FMT_NE(YUVA422P12BE, YUVA422P12LE)
1213#define AV_PIX_FMT_YUVA444P12 AV_PIX_FMT_NE(YUVA444P12BE, YUVA444P12LE)
1214#define AV_PIX_FMT_YUVA420P16 AV_PIX_FMT_NE(YUVA420P16BE, YUVA420P16LE)
1215#define AV_PIX_FMT_YUVA422P16 AV_PIX_FMT_NE(YUVA422P16BE, YUVA422P16LE)
1216#define AV_PIX_FMT_YUVA444P16 AV_PIX_FMT_NE(YUVA444P16BE, YUVA444P16LE)
1218#define AV_PIX_FMT_XYZ12 AV_PIX_FMT_NE(XYZ12BE, XYZ12LE)
1219#define AV_PIX_FMT_NV20 AV_PIX_FMT_NE(NV20BE, NV20LE)
1220#define AV_PIX_FMT_AYUV64 AV_PIX_FMT_NE(AYUV64BE, AYUV64LE)
1221#define AV_PIX_FMT_P010 AV_PIX_FMT_NE(P010BE, P010LE)
1222#define AV_PIX_FMT_P012 AV_PIX_FMT_NE(P012BE, P012LE)
1223#define AV_PIX_FMT_P016 AV_PIX_FMT_NE(P016BE, P016LE)
1225#define AV_PIX_FMT_Y210 AV_PIX_FMT_NE(Y210BE, Y210LE)
1226#define AV_PIX_FMT_Y212 AV_PIX_FMT_NE(Y212BE, Y212LE)
1227#define AV_PIX_FMT_XV30 AV_PIX_FMT_NE(XV30BE, XV30LE)
1228#define AV_PIX_FMT_XV36 AV_PIX_FMT_NE(XV36BE, XV36LE)
1229#define AV_PIX_FMT_X2RGB10 AV_PIX_FMT_NE(X2RGB10BE, X2RGB10LE)
1230#define AV_PIX_FMT_X2BGR10 AV_PIX_FMT_NE(X2BGR10BE, X2BGR10LE)
1232#define AV_PIX_FMT_P210 AV_PIX_FMT_NE(P210BE, P210LE)
1233#define AV_PIX_FMT_P410 AV_PIX_FMT_NE(P410BE, P410LE)
1234#define AV_PIX_FMT_P212 AV_PIX_FMT_NE(P212BE, P212LE)
1235#define AV_PIX_FMT_P412 AV_PIX_FMT_NE(P412BE, P412LE)
1236#define AV_PIX_FMT_P216 AV_PIX_FMT_NE(P216BE, P216LE)
1237#define AV_PIX_FMT_P416 AV_PIX_FMT_NE(P416BE, P416LE)
1239#define AV_PIX_FMT_RGBAF16 AV_PIX_FMT_NE(RGBAF16BE, RGBAF16LE)
1241#define AV_PIX_FMT_RGBF32 AV_PIX_FMT_NE(RGBF32BE, RGBF32LE)
1242#define AV_PIX_FMT_RGBAF32 AV_PIX_FMT_NE(RGBAF32BE, RGBAF32LE)
1332 return (
void *)(intptr_t)(p ? p : x);
1336 const void *list, uint64_t term)
av_pure;
1338#define av_int_list_length(list, term) \
1339 av_int_list_length_for_size(sizeof(*(list)), list, term)
1343#define AV_FOURCC_MAX_STRING_SIZE 32
1345#define av_fourcc2str(fourcc) av_fourcc_make_string((char[AV_FOURCC_MAX_STRING_SIZE]){0}, fourcc)
1349#define AVUTIL_BUFFER_H
1365#define AV_BUFFER_FLAG_READONLY (1 << 0)
1368 void (*
free)(
void *opaque, uint8_t *data),
1369 void *opaque,
int flags);
1395 void (*pool_free)(
void *opaque));
1403#define AVUTIL_CHANNEL_LAYOUT_H
1463#define AV_CH_FRONT_LEFT (1ULL << AV_CHAN_FRONT_LEFT )
1464#define AV_CH_FRONT_RIGHT (1ULL << AV_CHAN_FRONT_RIGHT )
1465#define AV_CH_FRONT_CENTER (1ULL << AV_CHAN_FRONT_CENTER )
1466#define AV_CH_LOW_FREQUENCY (1ULL << AV_CHAN_LOW_FREQUENCY )
1467#define AV_CH_BACK_LEFT (1ULL << AV_CHAN_BACK_LEFT )
1468#define AV_CH_BACK_RIGHT (1ULL << AV_CHAN_BACK_RIGHT )
1469#define AV_CH_FRONT_LEFT_OF_CENTER (1ULL << AV_CHAN_FRONT_LEFT_OF_CENTER )
1470#define AV_CH_FRONT_RIGHT_OF_CENTER (1ULL << AV_CHAN_FRONT_RIGHT_OF_CENTER)
1471#define AV_CH_BACK_CENTER (1ULL << AV_CHAN_BACK_CENTER )
1472#define AV_CH_SIDE_LEFT (1ULL << AV_CHAN_SIDE_LEFT )
1473#define AV_CH_SIDE_RIGHT (1ULL << AV_CHAN_SIDE_RIGHT )
1474#define AV_CH_TOP_CENTER (1ULL << AV_CHAN_TOP_CENTER )
1475#define AV_CH_TOP_FRONT_LEFT (1ULL << AV_CHAN_TOP_FRONT_LEFT )
1476#define AV_CH_TOP_FRONT_CENTER (1ULL << AV_CHAN_TOP_FRONT_CENTER )
1477#define AV_CH_TOP_FRONT_RIGHT (1ULL << AV_CHAN_TOP_FRONT_RIGHT )
1478#define AV_CH_TOP_BACK_LEFT (1ULL << AV_CHAN_TOP_BACK_LEFT )
1479#define AV_CH_TOP_BACK_CENTER (1ULL << AV_CHAN_TOP_BACK_CENTER )
1480#define AV_CH_TOP_BACK_RIGHT (1ULL << AV_CHAN_TOP_BACK_RIGHT )
1481#define AV_CH_STEREO_LEFT (1ULL << AV_CHAN_STEREO_LEFT )
1482#define AV_CH_STEREO_RIGHT (1ULL << AV_CHAN_STEREO_RIGHT )
1483#define AV_CH_WIDE_LEFT (1ULL << AV_CHAN_WIDE_LEFT )
1484#define AV_CH_WIDE_RIGHT (1ULL << AV_CHAN_WIDE_RIGHT )
1485#define AV_CH_SURROUND_DIRECT_LEFT (1ULL << AV_CHAN_SURROUND_DIRECT_LEFT )
1486#define AV_CH_SURROUND_DIRECT_RIGHT (1ULL << AV_CHAN_SURROUND_DIRECT_RIGHT)
1487#define AV_CH_LOW_FREQUENCY_2 (1ULL << AV_CHAN_LOW_FREQUENCY_2 )
1488#define AV_CH_TOP_SIDE_LEFT (1ULL << AV_CHAN_TOP_SIDE_LEFT )
1489#define AV_CH_TOP_SIDE_RIGHT (1ULL << AV_CHAN_TOP_SIDE_RIGHT )
1490#define AV_CH_BOTTOM_FRONT_CENTER (1ULL << AV_CHAN_BOTTOM_FRONT_CENTER )
1491#define AV_CH_BOTTOM_FRONT_LEFT (1ULL << AV_CHAN_BOTTOM_FRONT_LEFT )
1492#define AV_CH_BOTTOM_FRONT_RIGHT (1ULL << AV_CHAN_BOTTOM_FRONT_RIGHT )
1494#define AV_CH_LAYOUT_MONO (AV_CH_FRONT_CENTER)
1495#define AV_CH_LAYOUT_STEREO (AV_CH_FRONT_LEFT|AV_CH_FRONT_RIGHT)
1496#define AV_CH_LAYOUT_2POINT1 (AV_CH_LAYOUT_STEREO|AV_CH_LOW_FREQUENCY)
1497#define AV_CH_LAYOUT_2_1 (AV_CH_LAYOUT_STEREO|AV_CH_BACK_CENTER)
1498#define AV_CH_LAYOUT_SURROUND (AV_CH_LAYOUT_STEREO|AV_CH_FRONT_CENTER)
1499#define AV_CH_LAYOUT_3POINT1 (AV_CH_LAYOUT_SURROUND|AV_CH_LOW_FREQUENCY)
1500#define AV_CH_LAYOUT_4POINT0 (AV_CH_LAYOUT_SURROUND|AV_CH_BACK_CENTER)
1501#define AV_CH_LAYOUT_4POINT1 (AV_CH_LAYOUT_4POINT0|AV_CH_LOW_FREQUENCY)
1502#define AV_CH_LAYOUT_2_2 (AV_CH_LAYOUT_STEREO|AV_CH_SIDE_LEFT|AV_CH_SIDE_RIGHT)
1503#define AV_CH_LAYOUT_QUAD (AV_CH_LAYOUT_STEREO|AV_CH_BACK_LEFT|AV_CH_BACK_RIGHT)
1504#define AV_CH_LAYOUT_5POINT0 (AV_CH_LAYOUT_SURROUND|AV_CH_SIDE_LEFT|AV_CH_SIDE_RIGHT)
1505#define AV_CH_LAYOUT_5POINT1 (AV_CH_LAYOUT_5POINT0|AV_CH_LOW_FREQUENCY)
1506#define AV_CH_LAYOUT_5POINT0_BACK (AV_CH_LAYOUT_SURROUND|AV_CH_BACK_LEFT|AV_CH_BACK_RIGHT)
1507#define AV_CH_LAYOUT_5POINT1_BACK (AV_CH_LAYOUT_5POINT0_BACK|AV_CH_LOW_FREQUENCY)
1508#define AV_CH_LAYOUT_6POINT0 (AV_CH_LAYOUT_5POINT0|AV_CH_BACK_CENTER)
1509#define AV_CH_LAYOUT_6POINT0_FRONT (AV_CH_LAYOUT_2_2|AV_CH_FRONT_LEFT_OF_CENTER|AV_CH_FRONT_RIGHT_OF_CENTER)
1510#define AV_CH_LAYOUT_HEXAGONAL (AV_CH_LAYOUT_5POINT0_BACK|AV_CH_BACK_CENTER)
1511#define AV_CH_LAYOUT_3POINT1POINT2 (AV_CH_LAYOUT_3POINT1|AV_CH_TOP_FRONT_LEFT|AV_CH_TOP_FRONT_RIGHT)
1512#define AV_CH_LAYOUT_6POINT1 (AV_CH_LAYOUT_5POINT1|AV_CH_BACK_CENTER)
1513#define AV_CH_LAYOUT_6POINT1_BACK (AV_CH_LAYOUT_5POINT1_BACK|AV_CH_BACK_CENTER)
1514#define AV_CH_LAYOUT_6POINT1_FRONT (AV_CH_LAYOUT_6POINT0_FRONT|AV_CH_LOW_FREQUENCY)
1515#define AV_CH_LAYOUT_7POINT0 (AV_CH_LAYOUT_5POINT0|AV_CH_BACK_LEFT|AV_CH_BACK_RIGHT)
1516#define AV_CH_LAYOUT_7POINT0_FRONT (AV_CH_LAYOUT_5POINT0|AV_CH_FRONT_LEFT_OF_CENTER|AV_CH_FRONT_RIGHT_OF_CENTER)
1517#define AV_CH_LAYOUT_7POINT1 (AV_CH_LAYOUT_5POINT1|AV_CH_BACK_LEFT|AV_CH_BACK_RIGHT)
1518#define AV_CH_LAYOUT_7POINT1_WIDE (AV_CH_LAYOUT_5POINT1|AV_CH_FRONT_LEFT_OF_CENTER|AV_CH_FRONT_RIGHT_OF_CENTER)
1519#define AV_CH_LAYOUT_7POINT1_WIDE_BACK (AV_CH_LAYOUT_5POINT1_BACK|AV_CH_FRONT_LEFT_OF_CENTER|AV_CH_FRONT_RIGHT_OF_CENTER)
1520#define AV_CH_LAYOUT_5POINT1POINT2_BACK (AV_CH_LAYOUT_5POINT1_BACK|AV_CH_TOP_FRONT_LEFT|AV_CH_TOP_FRONT_RIGHT)
1521#define AV_CH_LAYOUT_OCTAGONAL (AV_CH_LAYOUT_5POINT0|AV_CH_BACK_LEFT|AV_CH_BACK_CENTER|AV_CH_BACK_RIGHT)
1522#define AV_CH_LAYOUT_CUBE (AV_CH_LAYOUT_QUAD|AV_CH_TOP_FRONT_LEFT|AV_CH_TOP_FRONT_RIGHT|AV_CH_TOP_BACK_LEFT|AV_CH_TOP_BACK_RIGHT)
1523#define AV_CH_LAYOUT_5POINT1POINT4_BACK (AV_CH_LAYOUT_5POINT1POINT2_BACK|AV_CH_TOP_BACK_LEFT|AV_CH_TOP_BACK_RIGHT)
1524#define AV_CH_LAYOUT_7POINT1POINT2 (AV_CH_LAYOUT_7POINT1|AV_CH_TOP_FRONT_LEFT|AV_CH_TOP_FRONT_RIGHT)
1525#define AV_CH_LAYOUT_7POINT1POINT4_BACK (AV_CH_LAYOUT_7POINT1POINT2|AV_CH_TOP_BACK_LEFT|AV_CH_TOP_BACK_RIGHT)
1526#define AV_CH_LAYOUT_7POINT2POINT3 (AV_CH_LAYOUT_7POINT1POINT2|AV_CH_TOP_BACK_CENTER|AV_CH_LOW_FREQUENCY_2)
1527#define AV_CH_LAYOUT_9POINT1POINT4_BACK (AV_CH_LAYOUT_7POINT1POINT4_BACK|AV_CH_FRONT_LEFT_OF_CENTER|AV_CH_FRONT_RIGHT_OF_CENTER)
1528#define AV_CH_LAYOUT_HEXADECAGONAL (AV_CH_LAYOUT_OCTAGONAL|AV_CH_WIDE_LEFT|AV_CH_WIDE_RIGHT|AV_CH_TOP_BACK_LEFT|AV_CH_TOP_BACK_RIGHT|AV_CH_TOP_BACK_CENTER|AV_CH_TOP_FRONT_CENTER|AV_CH_TOP_FRONT_LEFT|AV_CH_TOP_FRONT_RIGHT)
1529#define AV_CH_LAYOUT_STEREO_DOWNMIX (AV_CH_STEREO_LEFT|AV_CH_STEREO_RIGHT)
1530#define AV_CH_LAYOUT_22POINT2 (AV_CH_LAYOUT_7POINT1POINT4_BACK|AV_CH_FRONT_LEFT_OF_CENTER|AV_CH_FRONT_RIGHT_OF_CENTER|AV_CH_BACK_CENTER|AV_CH_LOW_FREQUENCY_2|AV_CH_TOP_FRONT_CENTER|AV_CH_TOP_CENTER|AV_CH_TOP_SIDE_LEFT|AV_CH_TOP_SIDE_RIGHT|AV_CH_TOP_BACK_CENTER|AV_CH_BOTTOM_FRONT_CENTER|AV_CH_BOTTOM_FRONT_LEFT|AV_CH_BOTTOM_FRONT_RIGHT)
1532#define AV_CH_LAYOUT_7POINT1_TOP_BACK AV_CH_LAYOUT_5POINT1POINT2_BACK
1567#define AV_CHANNEL_LAYOUT_MASK(nb, m) \
1568 { AV_CHANNEL_ORDER_NATIVE, \
1573#define AV_CHANNEL_LAYOUT_MONO AV_CHANNEL_LAYOUT_MASK(1, AV_CH_LAYOUT_MONO)
1574#define AV_CHANNEL_LAYOUT_STEREO AV_CHANNEL_LAYOUT_MASK(2, AV_CH_LAYOUT_STEREO)
1575#define AV_CHANNEL_LAYOUT_2POINT1 AV_CHANNEL_LAYOUT_MASK(3, AV_CH_LAYOUT_2POINT1)
1576#define AV_CHANNEL_LAYOUT_2_1 AV_CHANNEL_LAYOUT_MASK(3, AV_CH_LAYOUT_2_1)
1577#define AV_CHANNEL_LAYOUT_SURROUND AV_CHANNEL_LAYOUT_MASK(3, AV_CH_LAYOUT_SURROUND)
1578#define AV_CHANNEL_LAYOUT_3POINT1 AV_CHANNEL_LAYOUT_MASK(4, AV_CH_LAYOUT_3POINT1)
1579#define AV_CHANNEL_LAYOUT_4POINT0 AV_CHANNEL_LAYOUT_MASK(4, AV_CH_LAYOUT_4POINT0)
1580#define AV_CHANNEL_LAYOUT_4POINT1 AV_CHANNEL_LAYOUT_MASK(5, AV_CH_LAYOUT_4POINT1)
1581#define AV_CHANNEL_LAYOUT_2_2 AV_CHANNEL_LAYOUT_MASK(4, AV_CH_LAYOUT_2_2)
1582#define AV_CHANNEL_LAYOUT_QUAD AV_CHANNEL_LAYOUT_MASK(4, AV_CH_LAYOUT_QUAD)
1583#define AV_CHANNEL_LAYOUT_5POINT0 AV_CHANNEL_LAYOUT_MASK(5, AV_CH_LAYOUT_5POINT0)
1584#define AV_CHANNEL_LAYOUT_5POINT1 AV_CHANNEL_LAYOUT_MASK(6, AV_CH_LAYOUT_5POINT1)
1585#define AV_CHANNEL_LAYOUT_5POINT0_BACK AV_CHANNEL_LAYOUT_MASK(5, AV_CH_LAYOUT_5POINT0_BACK)
1586#define AV_CHANNEL_LAYOUT_5POINT1_BACK AV_CHANNEL_LAYOUT_MASK(6, AV_CH_LAYOUT_5POINT1_BACK)
1587#define AV_CHANNEL_LAYOUT_6POINT0 AV_CHANNEL_LAYOUT_MASK(6, AV_CH_LAYOUT_6POINT0)
1588#define AV_CHANNEL_LAYOUT_6POINT0_FRONT AV_CHANNEL_LAYOUT_MASK(6, AV_CH_LAYOUT_6POINT0_FRONT)
1589#define AV_CHANNEL_LAYOUT_3POINT1POINT2 AV_CHANNEL_LAYOUT_MASK(6, AV_CH_LAYOUT_3POINT1POINT2)
1590#define AV_CHANNEL_LAYOUT_HEXAGONAL AV_CHANNEL_LAYOUT_MASK(6, AV_CH_LAYOUT_HEXAGONAL)
1591#define AV_CHANNEL_LAYOUT_6POINT1 AV_CHANNEL_LAYOUT_MASK(7, AV_CH_LAYOUT_6POINT1)
1592#define AV_CHANNEL_LAYOUT_6POINT1_BACK AV_CHANNEL_LAYOUT_MASK(7, AV_CH_LAYOUT_6POINT1_BACK)
1593#define AV_CHANNEL_LAYOUT_6POINT1_FRONT AV_CHANNEL_LAYOUT_MASK(7, AV_CH_LAYOUT_6POINT1_FRONT)
1594#define AV_CHANNEL_LAYOUT_7POINT0 AV_CHANNEL_LAYOUT_MASK(7, AV_CH_LAYOUT_7POINT0)
1595#define AV_CHANNEL_LAYOUT_7POINT0_FRONT AV_CHANNEL_LAYOUT_MASK(7, AV_CH_LAYOUT_7POINT0_FRONT)
1596#define AV_CHANNEL_LAYOUT_7POINT1 AV_CHANNEL_LAYOUT_MASK(8, AV_CH_LAYOUT_7POINT1)
1597#define AV_CHANNEL_LAYOUT_7POINT1_WIDE AV_CHANNEL_LAYOUT_MASK(8, AV_CH_LAYOUT_7POINT1_WIDE)
1598#define AV_CHANNEL_LAYOUT_7POINT1_WIDE_BACK AV_CHANNEL_LAYOUT_MASK(8, AV_CH_LAYOUT_7POINT1_WIDE_BACK)
1599#define AV_CHANNEL_LAYOUT_5POINT1POINT2_BACK AV_CHANNEL_LAYOUT_MASK(8, AV_CH_LAYOUT_5POINT1POINT2_BACK)
1600#define AV_CHANNEL_LAYOUT_OCTAGONAL AV_CHANNEL_LAYOUT_MASK(8, AV_CH_LAYOUT_OCTAGONAL)
1601#define AV_CHANNEL_LAYOUT_CUBE AV_CHANNEL_LAYOUT_MASK(8, AV_CH_LAYOUT_CUBE)
1602#define AV_CHANNEL_LAYOUT_5POINT1POINT4_BACK AV_CHANNEL_LAYOUT_MASK(10, AV_CH_LAYOUT_5POINT1POINT4_BACK)
1603#define AV_CHANNEL_LAYOUT_7POINT1POINT2 AV_CHANNEL_LAYOUT_MASK(10, AV_CH_LAYOUT_7POINT1POINT2)
1604#define AV_CHANNEL_LAYOUT_7POINT1POINT4_BACK AV_CHANNEL_LAYOUT_MASK(12, AV_CH_LAYOUT_7POINT1POINT4_BACK)
1605#define AV_CHANNEL_LAYOUT_7POINT2POINT3 AV_CHANNEL_LAYOUT_MASK(12, AV_CH_LAYOUT_7POINT2POINT3)
1606#define AV_CHANNEL_LAYOUT_9POINT1POINT4_BACK AV_CHANNEL_LAYOUT_MASK(14, AV_CH_LAYOUT_9POINT1POINT4_BACK)
1607#define AV_CHANNEL_LAYOUT_HEXADECAGONAL AV_CHANNEL_LAYOUT_MASK(16, AV_CH_LAYOUT_HEXADECAGONAL)
1608#define AV_CHANNEL_LAYOUT_STEREO_DOWNMIX AV_CHANNEL_LAYOUT_MASK(2, AV_CH_LAYOUT_STEREO_DOWNMIX)
1609#define AV_CHANNEL_LAYOUT_22POINT2 AV_CHANNEL_LAYOUT_MASK(24, AV_CH_LAYOUT_22POINT2)
1611#define AV_CHANNEL_LAYOUT_7POINT1_TOP_BACK AV_CHANNEL_LAYOUT_5POINT1POINT2_BACK
1613#define AV_CHANNEL_LAYOUT_AMBISONIC_FIRST_ORDER \
1614 { AV_CHANNEL_ORDER_AMBISONIC, \
1647 char *buf,
size_t buf_size);
1650 struct AVBPrint *bp);
1672#define AV_CHANNEL_LAYOUT_RETYPE_FLAG_LOSSLESS (1 << 0)
1674#define AV_CHANNEL_LAYOUT_RETYPE_FLAG_CANONICAL (1 << 1)
1678#define AVUTIL_DICT_H
1680#define AV_DICT_MATCH_CASE 1
1681#define AV_DICT_IGNORE_SUFFIX 2
1683#define AV_DICT_DONT_STRDUP_KEY 4
1685#define AV_DICT_DONT_STRDUP_VAL 8
1687#define AV_DICT_DONT_OVERWRITE 16
1688#define AV_DICT_APPEND 32
1690#define AV_DICT_MULTIKEY 64
1712 const char *key_val_sep,
const char *pairs_sep,
1720 const char key_val_sep,
const char pairs_sep);
1722#define AVUTIL_FRAME_H
1814#define AV_NUM_DATA_POINTERS 8
1867#define AV_FRAME_FLAG_CORRUPT (1 << 0)
1869#define AV_FRAME_FLAG_KEY (1 << 1)
1871#define AV_FRAME_FLAG_DISCARD (1 << 2)
1873#define AV_FRAME_FLAG_INTERLACED (1 << 3)
1875#define AV_FRAME_FLAG_TOP_FIELD_FIRST (1 << 4)
1897#define FF_DECODE_ERROR_INVALID_BITSTREAM 1
1898#define FF_DECODE_ERROR_MISSING_REFERENCE 2
1899#define FF_DECODE_ERROR_CONCEALMENT_ACTIVE 4
1900#define FF_DECODE_ERROR_DECODE_SLICES 8
1971#define AV_FRAME_SIDE_DATA_FLAG_UNIQUE (1 << 0)
1975 size_t size,
unsigned int flags);
1993#define AVCODEC_CODEC_H
1995#define AVUTIL_HWCONTEXT_H
2108 const void *hwconfig);
2131#define AVCODEC_CODEC_ID_H
2133#define AVCODEC_VERSION_MAJOR_H
2135#define LIBAVCODEC_VERSION_MAJOR 61
2137#define FF_API_INIT_PACKET (LIBAVCODEC_VERSION_MAJOR < 62)
2138#define FF_API_SUBFRAMES (LIBAVCODEC_VERSION_MAJOR < 62)
2139#define FF_API_TICKS_PER_FRAME (LIBAVCODEC_VERSION_MAJOR < 62)
2140#define FF_API_DROPCHANGED (LIBAVCODEC_VERSION_MAJOR < 62)
2142#define FF_API_AVFFT (LIBAVCODEC_VERSION_MAJOR < 62)
2143#define FF_API_FF_PROFILE_LEVEL (LIBAVCODEC_VERSION_MAJOR < 62)
2144#define FF_API_AVCODEC_CLOSE (LIBAVCODEC_VERSION_MAJOR < 62)
2145#define FF_API_BUFFER_MIN_SIZE (LIBAVCODEC_VERSION_MAJOR < 62)
2146#define FF_API_VDPAU_ALLOC_GET_SET (LIBAVCODEC_VERSION_MAJOR < 62)
2287#define AV_CODEC_ID_IFF_BYTERUN1 AV_CODEC_ID_IFF_ILBM
2325#define AV_CODEC_ID_H265 AV_CODEC_ID_HEVC
2349#define AV_CODEC_ID_H266 AV_CODEC_ID_VVC
2708#define AV_CODEC_CAP_DRAW_HORIZ_BAND (1 << 0)
2710#define AV_CODEC_CAP_DR1 (1 << 1)
2712#define AV_CODEC_CAP_DELAY (1 << 5)
2714#define AV_CODEC_CAP_SMALL_LAST_FRAME (1 << 6)
2716#define AV_CODEC_CAP_SUBFRAMES (1 << 8)
2718#define AV_CODEC_CAP_EXPERIMENTAL (1 << 9)
2720#define AV_CODEC_CAP_CHANNEL_CONF (1 << 10)
2722#define AV_CODEC_CAP_FRAME_THREADS (1 << 12)
2724#define AV_CODEC_CAP_SLICE_THREADS (1 << 13)
2726#define AV_CODEC_CAP_PARAM_CHANGE (1 << 14)
2728#define AV_CODEC_CAP_OTHER_THREADS (1 << 15)
2730#define AV_CODEC_CAP_VARIABLE_FRAME_SIZE (1 << 16)
2732#define AV_CODEC_CAP_AVOID_PROBING (1 << 17)
2734#define AV_CODEC_CAP_HARDWARE (1 << 18)
2736#define AV_CODEC_CAP_HYBRID (1 << 19)
2738#define AV_CODEC_CAP_ENCODER_REORDERED_OPAQUE (1 << 20)
2740#define AV_CODEC_CAP_ENCODER_FLUSH (1 << 21)
2742#define AV_CODEC_CAP_ENCODER_RECON_FRAME (1 << 22)
2809#define AVCODEC_DEFS_H
2811#define AV_INPUT_BUFFER_PADDING_SIZE 64
2813#define AV_EF_CRCCHECK (1<<0)
2814#define AV_EF_BITSTREAM (1<<1)
2815#define AV_EF_BUFFER (1<<2)
2816#define AV_EF_EXPLODE (1<<3)
2818#define AV_EF_IGNORE_ERR (1<<15)
2819#define AV_EF_CAREFUL (1<<16)
2820#define AV_EF_COMPLIANT (1<<17)
2821#define AV_EF_AGGRESSIVE (1<<18)
2823#define FF_COMPLIANCE_VERY_STRICT 2
2824#define FF_COMPLIANCE_STRICT 1
2825#define FF_COMPLIANCE_NORMAL 0
2826#define FF_COMPLIANCE_UNOFFICIAL -1
2827#define FF_COMPLIANCE_EXPERIMENTAL -2
2829#define AV_PROFILE_UNKNOWN -99
2830#define AV_PROFILE_RESERVED -100
2832#define AV_PROFILE_AAC_MAIN 0
2833#define AV_PROFILE_AAC_LOW 1
2834#define AV_PROFILE_AAC_SSR 2
2835#define AV_PROFILE_AAC_LTP 3
2836#define AV_PROFILE_AAC_HE 4
2837#define AV_PROFILE_AAC_HE_V2 28
2838#define AV_PROFILE_AAC_LD 22
2839#define AV_PROFILE_AAC_ELD 38
2840#define AV_PROFILE_MPEG2_AAC_LOW 128
2841#define AV_PROFILE_MPEG2_AAC_HE 131
2843#define AV_PROFILE_DNXHD 0
2844#define AV_PROFILE_DNXHR_LB 1
2845#define AV_PROFILE_DNXHR_SQ 2
2846#define AV_PROFILE_DNXHR_HQ 3
2847#define AV_PROFILE_DNXHR_HQX 4
2848#define AV_PROFILE_DNXHR_444 5
2850#define AV_PROFILE_DTS 20
2851#define AV_PROFILE_DTS_ES 30
2852#define AV_PROFILE_DTS_96_24 40
2853#define AV_PROFILE_DTS_HD_HRA 50
2854#define AV_PROFILE_DTS_HD_MA 60
2855#define AV_PROFILE_DTS_EXPRESS 70
2856#define AV_PROFILE_DTS_HD_MA_X 61
2857#define AV_PROFILE_DTS_HD_MA_X_IMAX 62
2859#define AV_PROFILE_EAC3_DDP_ATMOS 30
2861#define AV_PROFILE_TRUEHD_ATMOS 30
2863#define AV_PROFILE_MPEG2_422 0
2864#define AV_PROFILE_MPEG2_HIGH 1
2865#define AV_PROFILE_MPEG2_SS 2
2866#define AV_PROFILE_MPEG2_SNR_SCALABLE 3
2867#define AV_PROFILE_MPEG2_MAIN 4
2868#define AV_PROFILE_MPEG2_SIMPLE 5
2870#define AV_PROFILE_H264_CONSTRAINED (1<<9)
2871#define AV_PROFILE_H264_INTRA (1<<11)
2873#define AV_PROFILE_H264_BASELINE 66
2874#define AV_PROFILE_H264_CONSTRAINED_BASELINE (66|AV_PROFILE_H264_CONSTRAINED)
2875#define AV_PROFILE_H264_MAIN 77
2876#define AV_PROFILE_H264_EXTENDED 88
2877#define AV_PROFILE_H264_HIGH 100
2878#define AV_PROFILE_H264_HIGH_10 110
2879#define AV_PROFILE_H264_HIGH_10_INTRA (110|AV_PROFILE_H264_INTRA)
2880#define AV_PROFILE_H264_MULTIVIEW_HIGH 118
2881#define AV_PROFILE_H264_HIGH_422 122
2882#define AV_PROFILE_H264_HIGH_422_INTRA (122|AV_PROFILE_H264_INTRA)
2883#define AV_PROFILE_H264_STEREO_HIGH 128
2884#define AV_PROFILE_H264_HIGH_444 144
2885#define AV_PROFILE_H264_HIGH_444_PREDICTIVE 244
2886#define AV_PROFILE_H264_HIGH_444_INTRA (244|AV_PROFILE_H264_INTRA)
2887#define AV_PROFILE_H264_CAVLC_444 44
2889#define AV_PROFILE_VC1_SIMPLE 0
2890#define AV_PROFILE_VC1_MAIN 1
2891#define AV_PROFILE_VC1_COMPLEX 2
2892#define AV_PROFILE_VC1_ADVANCED 3
2894#define AV_PROFILE_MPEG4_SIMPLE 0
2895#define AV_PROFILE_MPEG4_SIMPLE_SCALABLE 1
2896#define AV_PROFILE_MPEG4_CORE 2
2897#define AV_PROFILE_MPEG4_MAIN 3
2898#define AV_PROFILE_MPEG4_N_BIT 4
2899#define AV_PROFILE_MPEG4_SCALABLE_TEXTURE 5
2900#define AV_PROFILE_MPEG4_SIMPLE_FACE_ANIMATION 6
2901#define AV_PROFILE_MPEG4_BASIC_ANIMATED_TEXTURE 7
2902#define AV_PROFILE_MPEG4_HYBRID 8
2903#define AV_PROFILE_MPEG4_ADVANCED_REAL_TIME 9
2904#define AV_PROFILE_MPEG4_CORE_SCALABLE 10
2905#define AV_PROFILE_MPEG4_ADVANCED_CODING 11
2906#define AV_PROFILE_MPEG4_ADVANCED_CORE 12
2907#define AV_PROFILE_MPEG4_ADVANCED_SCALABLE_TEXTURE 13
2908#define AV_PROFILE_MPEG4_SIMPLE_STUDIO 14
2909#define AV_PROFILE_MPEG4_ADVANCED_SIMPLE 15
2911#define AV_PROFILE_JPEG2000_CSTREAM_RESTRICTION_0 1
2912#define AV_PROFILE_JPEG2000_CSTREAM_RESTRICTION_1 2
2913#define AV_PROFILE_JPEG2000_CSTREAM_NO_RESTRICTION 32768
2914#define AV_PROFILE_JPEG2000_DCINEMA_2K 3
2915#define AV_PROFILE_JPEG2000_DCINEMA_4K 4
2917#define AV_PROFILE_VP9_0 0
2918#define AV_PROFILE_VP9_1 1
2919#define AV_PROFILE_VP9_2 2
2920#define AV_PROFILE_VP9_3 3
2922#define AV_PROFILE_HEVC_MAIN 1
2923#define AV_PROFILE_HEVC_MAIN_10 2
2924#define AV_PROFILE_HEVC_MAIN_STILL_PICTURE 3
2925#define AV_PROFILE_HEVC_REXT 4
2926#define AV_PROFILE_HEVC_SCC 9
2928#define AV_PROFILE_VVC_MAIN_10 1
2929#define AV_PROFILE_VVC_MAIN_10_444 33
2931#define AV_PROFILE_AV1_MAIN 0
2932#define AV_PROFILE_AV1_HIGH 1
2933#define AV_PROFILE_AV1_PROFESSIONAL 2
2935#define AV_PROFILE_MJPEG_HUFFMAN_BASELINE_DCT 0xc0
2936#define AV_PROFILE_MJPEG_HUFFMAN_EXTENDED_SEQUENTIAL_DCT 0xc1
2937#define AV_PROFILE_MJPEG_HUFFMAN_PROGRESSIVE_DCT 0xc2
2938#define AV_PROFILE_MJPEG_HUFFMAN_LOSSLESS 0xc3
2939#define AV_PROFILE_MJPEG_JPEG_LS 0xf7
2941#define AV_PROFILE_SBC_MSBC 1
2943#define AV_PROFILE_PRORES_PROXY 0
2944#define AV_PROFILE_PRORES_LT 1
2945#define AV_PROFILE_PRORES_STANDARD 2
2946#define AV_PROFILE_PRORES_HQ 3
2947#define AV_PROFILE_PRORES_4444 4
2948#define AV_PROFILE_PRORES_XQ 5
2950#define AV_PROFILE_ARIB_PROFILE_A 0
2951#define AV_PROFILE_ARIB_PROFILE_C 1
2953#define AV_PROFILE_KLVA_SYNC 0
2954#define AV_PROFILE_KLVA_ASYNC 1
2956#define AV_PROFILE_EVC_BASELINE 0
2957#define AV_PROFILE_EVC_MAIN 1
2959#define AV_LEVEL_UNKNOWN -99
3027#define AVCODEC_PACKET_H
3106#define AV_PKT_DATA_QUALITY_FACTOR AV_PKT_DATA_QUALITY_STATS
3116 size_t size,
int flags);
3120 void *data,
size_t size,
int flags);
3166#define AV_PKT_FLAG_KEY 0x0001
3167#define AV_PKT_FLAG_CORRUPT 0x0002
3169#define AV_PKT_FLAG_DISCARD 0x0004
3171#define AV_PKT_FLAG_TRUSTED 0x0008
3173#define AV_PKT_FLAG_DISPOSABLE 0x0010
3201 uint8_t *data,
size_t size);
3230#define AVCODEC_VERSION_H
3232#define LIBAVCODEC_VERSION_MINOR 3
3233#define LIBAVCODEC_VERSION_MICRO 100
3235#define LIBAVCODEC_VERSION_INT AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \
3236 LIBAVCODEC_VERSION_MINOR, \
3237 LIBAVCODEC_VERSION_MICRO)
3238#define LIBAVCODEC_VERSION AV_VERSION(LIBAVCODEC_VERSION_MAJOR, \
3239 LIBAVCODEC_VERSION_MINOR, \
3240 LIBAVCODEC_VERSION_MICRO)
3241#define LIBAVCODEC_BUILD LIBAVCODEC_VERSION_INT
3243#define LIBAVCODEC_IDENT "Lavc" AV_STRINGIFY(LIBAVCODEC_VERSION)
3245#define AVCODEC_CODEC_DESC_H
3262#define AV_CODEC_PROP_INTRA_ONLY (1 << 0)
3264#define AV_CODEC_PROP_LOSSY (1 << 1)
3266#define AV_CODEC_PROP_LOSSLESS (1 << 2)
3268#define AV_CODEC_PROP_REORDER (1 << 3)
3270#define AV_CODEC_PROP_FIELDS (1 << 4)
3272#define AV_CODEC_PROP_BITMAP_SUB (1 << 16)
3274#define AV_CODEC_PROP_TEXT_SUB (1 << 17)
3282#define AVCODEC_CODEC_PAR_H
3353#define AV_INPUT_BUFFER_MIN_SIZE 16384
3362#define AV_CODEC_FLAG_UNALIGNED (1 << 0)
3364#define AV_CODEC_FLAG_QSCALE (1 << 1)
3366#define AV_CODEC_FLAG_4MV (1 << 2)
3368#define AV_CODEC_FLAG_OUTPUT_CORRUPT (1 << 3)
3370#define AV_CODEC_FLAG_QPEL (1 << 4)
3372#define AV_CODEC_FLAG_DROPCHANGED (1 << 5)
3374#define AV_CODEC_FLAG_RECON_FRAME (1 << 6)
3376#define AV_CODEC_FLAG_COPY_OPAQUE (1 << 7)
3378#define AV_CODEC_FLAG_FRAME_DURATION (1 << 8)
3380#define AV_CODEC_FLAG_PASS1 (1 << 9)
3382#define AV_CODEC_FLAG_PASS2 (1 << 10)
3384#define AV_CODEC_FLAG_LOOP_FILTER (1 << 11)
3386#define AV_CODEC_FLAG_GRAY (1 << 13)
3388#define AV_CODEC_FLAG_PSNR (1 << 15)
3390#define AV_CODEC_FLAG_INTERLACED_DCT (1 << 18)
3392#define AV_CODEC_FLAG_LOW_DELAY (1 << 19)
3394#define AV_CODEC_FLAG_GLOBAL_HEADER (1 << 22)
3396#define AV_CODEC_FLAG_BITEXACT (1 << 23)
3398#define AV_CODEC_FLAG_AC_PRED (1 << 24)
3400#define AV_CODEC_FLAG_INTERLACED_ME (1 << 29)
3401#define AV_CODEC_FLAG_CLOSED_GOP (1U << 31)
3403#define AV_CODEC_FLAG2_FAST (1 << 0)
3405#define AV_CODEC_FLAG2_NO_OUTPUT (1 << 2)
3407#define AV_CODEC_FLAG2_LOCAL_HEADER (1 << 3)
3409#define AV_CODEC_FLAG2_CHUNKS (1 << 15)
3411#define AV_CODEC_FLAG2_IGNORE_CROP (1 << 16)
3413#define AV_CODEC_FLAG2_SHOW_ALL (1 << 22)
3415#define AV_CODEC_FLAG2_EXPORT_MVS (1 << 28)
3417#define AV_CODEC_FLAG2_SKIP_MANUAL (1 << 29)
3419#define AV_CODEC_FLAG2_RO_FLUSH_NOOP (1 << 30)
3421#define AV_CODEC_FLAG2_ICC_PROFILES (1U << 31)
3423#define AV_CODEC_EXPORT_DATA_MVS (1 << 0)
3425#define AV_CODEC_EXPORT_DATA_PRFT (1 << 1)
3427#define AV_CODEC_EXPORT_DATA_VIDEO_ENC_PARAMS (1 << 2)
3429#define AV_CODEC_EXPORT_DATA_FILM_GRAIN (1 << 3)
3431#define AV_GET_BUFFER_FLAG_REF (1 << 0)
3433#define AV_GET_ENCODE_BUFFER_FLAG_REF (1 << 0)
3499#define SLICE_FLAG_CODED_ORDER 0x0001
3500#define SLICE_FLAG_ALLOW_FIELD 0x0002
3501#define SLICE_FLAG_ALLOW_PLANE 0x0004
3505 int y,
int type,
int height);
3540#define FF_CMP_SATD 2
3542#define FF_CMP_PSNR 4
3545#define FF_CMP_ZERO 7
3546#define FF_CMP_VSAD 8
3547#define FF_CMP_VSSE 9
3548#define FF_CMP_NSSE 10
3549#define FF_CMP_W53 11
3550#define FF_CMP_W97 12
3551#define FF_CMP_DCTMAX 13
3552#define FF_CMP_DCT264 14
3553#define FF_CMP_MEDIAN_SAD 15
3554#define FF_CMP_CHROMA 256
3569#define FF_MB_DECISION_SIMPLE 0
3570#define FF_MB_DECISION_BITS 1
3571#define FF_MB_DECISION_RD 2
3624#define FF_COMPRESSION_DEFAULT -1
3657#define FF_BUG_AUTODETECT 1
3658#define FF_BUG_XVID_ILACE 4
3659#define FF_BUG_UMP4 8
3660#define FF_BUG_NO_PADDING 16
3661#define FF_BUG_AMV 32
3662#define FF_BUG_QPEL_CHROMA 64
3663#define FF_BUG_STD_QPEL 128
3664#define FF_BUG_QPEL_CHROMA2 256
3665#define FF_BUG_DIRECT_BLOCKSIZE 512
3666#define FF_BUG_EDGE 1024
3667#define FF_BUG_HPEL_CHROMA 2048
3668#define FF_BUG_DC_CLIP 4096
3669#define FF_BUG_MS 8192
3670#define FF_BUG_TRUNCATED 16384
3671#define FF_BUG_IEDGE 32768
3676#define FF_EC_GUESS_MVS 1
3677#define FF_EC_DEBLOCK 2
3678#define FF_EC_FAVOR_INTER 256
3681#define FF_DEBUG_PICT_INFO 1
3682#define FF_DEBUG_RC 2
3683#define FF_DEBUG_BITSTREAM 4
3684#define FF_DEBUG_MB_TYPE 8
3685#define FF_DEBUG_QP 16
3686#define FF_DEBUG_DCT_COEFF 0x00000040
3687#define FF_DEBUG_SKIP 0x00000080
3688#define FF_DEBUG_STARTCODE 0x00000100
3689#define FF_DEBUG_ER 0x00000400
3690#define FF_DEBUG_MMCO 0x00000800
3691#define FF_DEBUG_BUGS 0x00001000
3692#define FF_DEBUG_BUFFERS 0x00008000
3693#define FF_DEBUG_THREADS 0x00010000
3694#define FF_DEBUG_GREEN_MD 0x00800000
3695#define FF_DEBUG_NOMC 0x01000000
3714#define FF_DCT_AUTO 0
3715#define FF_DCT_FASTINT 1
3718#define FF_DCT_ALTIVEC 5
3719#define FF_DCT_FAAN 6
3722#define FF_IDCT_AUTO 0
3723#define FF_IDCT_INT 1
3724#define FF_IDCT_SIMPLE 2
3725#define FF_IDCT_SIMPLEMMX 3
3726#define FF_IDCT_ARM 7
3727#define FF_IDCT_ALTIVEC 8
3728#define FF_IDCT_SIMPLEARM 10
3729#define FF_IDCT_XVID 14
3730#define FF_IDCT_SIMPLEARMV5TE 16
3731#define FF_IDCT_SIMPLEARMV6 17
3732#define FF_IDCT_FAAN 20
3733#define FF_IDCT_SIMPLENEON 22
3734#define FF_IDCT_SIMPLEAUTO 128
3743#define FF_THREAD_FRAME 1
3744#define FF_THREAD_SLICE 2
3754#define FF_PROFILE_UNKNOWN -99
3755#define FF_PROFILE_RESERVED -100
3757#define FF_PROFILE_AAC_MAIN 0
3758#define FF_PROFILE_AAC_LOW 1
3759#define FF_PROFILE_AAC_SSR 2
3760#define FF_PROFILE_AAC_LTP 3
3761#define FF_PROFILE_AAC_HE 4
3762#define FF_PROFILE_AAC_HE_V2 28
3763#define FF_PROFILE_AAC_LD 22
3764#define FF_PROFILE_AAC_ELD 38
3765#define FF_PROFILE_MPEG2_AAC_LOW 128
3766#define FF_PROFILE_MPEG2_AAC_HE 131
3768#define FF_PROFILE_DNXHD 0
3769#define FF_PROFILE_DNXHR_LB 1
3770#define FF_PROFILE_DNXHR_SQ 2
3771#define FF_PROFILE_DNXHR_HQ 3
3772#define FF_PROFILE_DNXHR_HQX 4
3773#define FF_PROFILE_DNXHR_444 5
3775#define FF_PROFILE_DTS 20
3776#define FF_PROFILE_DTS_ES 30
3777#define FF_PROFILE_DTS_96_24 40
3778#define FF_PROFILE_DTS_HD_HRA 50
3779#define FF_PROFILE_DTS_HD_MA 60
3780#define FF_PROFILE_DTS_EXPRESS 70
3781#define FF_PROFILE_DTS_HD_MA_X 61
3782#define FF_PROFILE_DTS_HD_MA_X_IMAX 62
3784#define FF_PROFILE_EAC3_DDP_ATMOS 30
3786#define FF_PROFILE_TRUEHD_ATMOS 30
3788#define FF_PROFILE_MPEG2_422 0
3789#define FF_PROFILE_MPEG2_HIGH 1
3790#define FF_PROFILE_MPEG2_SS 2
3791#define FF_PROFILE_MPEG2_SNR_SCALABLE 3
3792#define FF_PROFILE_MPEG2_MAIN 4
3793#define FF_PROFILE_MPEG2_SIMPLE 5
3795#define FF_PROFILE_H264_CONSTRAINED (1<<9)
3796#define FF_PROFILE_H264_INTRA (1<<11)
3798#define FF_PROFILE_H264_BASELINE 66
3799#define FF_PROFILE_H264_CONSTRAINED_BASELINE (66|FF_PROFILE_H264_CONSTRAINED)
3800#define FF_PROFILE_H264_MAIN 77
3801#define FF_PROFILE_H264_EXTENDED 88
3802#define FF_PROFILE_H264_HIGH 100
3803#define FF_PROFILE_H264_HIGH_10 110
3804#define FF_PROFILE_H264_HIGH_10_INTRA (110|FF_PROFILE_H264_INTRA)
3805#define FF_PROFILE_H264_MULTIVIEW_HIGH 118
3806#define FF_PROFILE_H264_HIGH_422 122
3807#define FF_PROFILE_H264_HIGH_422_INTRA (122|FF_PROFILE_H264_INTRA)
3808#define FF_PROFILE_H264_STEREO_HIGH 128
3809#define FF_PROFILE_H264_HIGH_444 144
3810#define FF_PROFILE_H264_HIGH_444_PREDICTIVE 244
3811#define FF_PROFILE_H264_HIGH_444_INTRA (244|FF_PROFILE_H264_INTRA)
3812#define FF_PROFILE_H264_CAVLC_444 44
3814#define FF_PROFILE_VC1_SIMPLE 0
3815#define FF_PROFILE_VC1_MAIN 1
3816#define FF_PROFILE_VC1_COMPLEX 2
3817#define FF_PROFILE_VC1_ADVANCED 3
3819#define FF_PROFILE_MPEG4_SIMPLE 0
3820#define FF_PROFILE_MPEG4_SIMPLE_SCALABLE 1
3821#define FF_PROFILE_MPEG4_CORE 2
3822#define FF_PROFILE_MPEG4_MAIN 3
3823#define FF_PROFILE_MPEG4_N_BIT 4
3824#define FF_PROFILE_MPEG4_SCALABLE_TEXTURE 5
3825#define FF_PROFILE_MPEG4_SIMPLE_FACE_ANIMATION 6
3826#define FF_PROFILE_MPEG4_BASIC_ANIMATED_TEXTURE 7
3827#define FF_PROFILE_MPEG4_HYBRID 8
3828#define FF_PROFILE_MPEG4_ADVANCED_REAL_TIME 9
3829#define FF_PROFILE_MPEG4_CORE_SCALABLE 10
3830#define FF_PROFILE_MPEG4_ADVANCED_CODING 11
3831#define FF_PROFILE_MPEG4_ADVANCED_CORE 12
3832#define FF_PROFILE_MPEG4_ADVANCED_SCALABLE_TEXTURE 13
3833#define FF_PROFILE_MPEG4_SIMPLE_STUDIO 14
3834#define FF_PROFILE_MPEG4_ADVANCED_SIMPLE 15
3836#define FF_PROFILE_JPEG2000_CSTREAM_RESTRICTION_0 1
3837#define FF_PROFILE_JPEG2000_CSTREAM_RESTRICTION_1 2
3838#define FF_PROFILE_JPEG2000_CSTREAM_NO_RESTRICTION 32768
3839#define FF_PROFILE_JPEG2000_DCINEMA_2K 3
3840#define FF_PROFILE_JPEG2000_DCINEMA_4K 4
3842#define FF_PROFILE_VP9_0 0
3843#define FF_PROFILE_VP9_1 1
3844#define FF_PROFILE_VP9_2 2
3845#define FF_PROFILE_VP9_3 3
3847#define FF_PROFILE_HEVC_MAIN 1
3848#define FF_PROFILE_HEVC_MAIN_10 2
3849#define FF_PROFILE_HEVC_MAIN_STILL_PICTURE 3
3850#define FF_PROFILE_HEVC_REXT 4
3851#define FF_PROFILE_HEVC_SCC 9
3853#define FF_PROFILE_VVC_MAIN_10 1
3854#define FF_PROFILE_VVC_MAIN_10_444 33
3856#define FF_PROFILE_AV1_MAIN 0
3857#define FF_PROFILE_AV1_HIGH 1
3858#define FF_PROFILE_AV1_PROFESSIONAL 2
3860#define FF_PROFILE_MJPEG_HUFFMAN_BASELINE_DCT 0xc0
3861#define FF_PROFILE_MJPEG_HUFFMAN_EXTENDED_SEQUENTIAL_DCT 0xc1
3862#define FF_PROFILE_MJPEG_HUFFMAN_PROGRESSIVE_DCT 0xc2
3863#define FF_PROFILE_MJPEG_HUFFMAN_LOSSLESS 0xc3
3864#define FF_PROFILE_MJPEG_JPEG_LS 0xf7
3866#define FF_PROFILE_SBC_MSBC 1
3868#define FF_PROFILE_PRORES_PROXY 0
3869#define FF_PROFILE_PRORES_LT 1
3870#define FF_PROFILE_PRORES_STANDARD 2
3871#define FF_PROFILE_PRORES_HQ 3
3872#define FF_PROFILE_PRORES_4444 4
3873#define FF_PROFILE_PRORES_XQ 5
3875#define FF_PROFILE_ARIB_PROFILE_A 0
3876#define FF_PROFILE_ARIB_PROFILE_C 1
3878#define FF_PROFILE_KLVA_SYNC 0
3879#define FF_PROFILE_KLVA_ASYNC 1
3881#define FF_PROFILE_EVC_BASELINE 0
3882#define FF_PROFILE_EVC_MAIN 1
3886#define FF_LEVEL_UNKNOWN -99
3889#define FF_CODEC_PROPERTY_LOSSLESS 0x00000001
3890#define FF_CODEC_PROPERTY_CLOSED_CAPTIONS 0x00000002
3891#define FF_CODEC_PROPERTY_FILM_GRAIN 0x00000004
3912#define FF_SUB_CHARENC_MODE_DO_NOTHING -1
3913#define FF_SUB_CHARENC_MODE_AUTOMATIC 0
3914#define FF_SUB_CHARENC_MODE_PRE_DECODER 1
3915#define FF_SUB_CHARENC_MODE_IGNORE 2
3962#define AV_HWACCEL_CODEC_CAP_EXPERIMENTAL 0x0200
3964#define AV_HWACCEL_FLAG_IGNORE_LEVEL (1 << 0)
3966#define AV_HWACCEL_FLAG_ALLOW_HIGH_DEPTH (1 << 1)
3968#define AV_HWACCEL_FLAG_ALLOW_PROFILE_MISMATCH (1 << 2)
3970#define AV_HWACCEL_FLAG_UNSAFE_OUTPUT (1 << 3)
3982#define AV_SUBTITLE_FLAG_FORCED 0x00000001
4048 int *got_sub_ptr,
const AVPacket *avpkt);
4088#define AV_PARSER_PTS_NB 4
4095#define PARSER_FLAG_COMPLETE_FRAMES 0x0001
4096#define PARSER_FLAG_ONCE 0x0002
4098#define PARSER_FLAG_FETCHED_OFFSET 0x0004
4099#define PARSER_FLAG_USE_CODEC_TS 0x1000
4142 const uint8_t **poutbuf,
int *poutbuf_size,
4143 const uint8_t *buf,
int buf_size);
4154 uint8_t **poutbuf,
int *poutbuf_size,
4155 const uint8_t *buf,
int buf_size,
4156 int64_t pts, int64_t dts,
4168 int has_alpha,
int *loss_ptr);
4179 int buf_size,
int align);
4191#define AVFORMAT_AVFORMAT_H
4193#define AVFORMAT_AVIO_H
4195#define AVFORMAT_VERSION_MAJOR_H
4197#define LIBAVFORMAT_VERSION_MAJOR 61
4199#define FF_API_COMPUTE_PKT_FIELDS2 (LIBAVFORMAT_VERSION_MAJOR < 62)
4200#define FF_API_LAVF_SHORTEST (LIBAVFORMAT_VERSION_MAJOR < 62)
4201#define FF_API_ALLOW_FLUSH (LIBAVFORMAT_VERSION_MAJOR < 62)
4202#define FF_API_AVSTREAM_SIDE_DATA (LIBAVFORMAT_VERSION_MAJOR < 62)
4204#define FF_API_GET_DUR_ESTIMATE_METHOD (LIBAVFORMAT_VERSION_MAJOR < 62)
4206#define FF_API_R_FRAME_RATE 1
4208#define AVIO_SEEKABLE_NORMAL (1 << 0)
4210#define AVIO_SEEKABLE_TIME (1 << 1)
4278 int64_t (*
seek)(
void *
opaque, int64_t offset,
int whence);
4293 int64_t timestamp,
int flags);
4328 unsigned char *buffer,
4332 int (*read_packet)(
void *opaque, uint8_t *buf,
int buf_size),
4333 int (*write_packet)(
void *opaque,
const uint8_t *buf,
int buf_size),
4334 int64_t (*seek)(
void *opaque, int64_t offset,
int whence));
4357#define AVSEEK_SIZE 0x10000
4359#define AVSEEK_FORCE 0x20000
4380#define avio_print(s, ...) \
4381 avio_print_string_array(s, (const char*[]){__VA_ARGS__, NULL})
4404#define AVIO_FLAG_READ 1
4405#define AVIO_FLAG_WRITE 2
4406#define AVIO_FLAG_READ_WRITE (AVIO_FLAG_READ|AVIO_FLAG_WRITE)
4408#define AVIO_FLAG_NONBLOCK 8
4410#define AVIO_FLAG_DIRECT 0x8000
4434 int64_t timestamp,
int flags);
4444#define AVFORMAT_VERSION_H
4446#define LIBAVFORMAT_VERSION_MINOR 1
4447#define LIBAVFORMAT_VERSION_MICRO 100
4449#define LIBAVFORMAT_VERSION_INT AV_VERSION_INT(LIBAVFORMAT_VERSION_MAJOR, \
4450 LIBAVFORMAT_VERSION_MINOR, \
4451 LIBAVFORMAT_VERSION_MICRO)
4452#define LIBAVFORMAT_VERSION AV_VERSION(LIBAVFORMAT_VERSION_MAJOR, \
4453 LIBAVFORMAT_VERSION_MINOR, \
4454 LIBAVFORMAT_VERSION_MICRO)
4455#define LIBAVFORMAT_BUILD LIBAVFORMAT_VERSION_INT
4457#define LIBAVFORMAT_IDENT "Lavf" AV_STRINGIFY(LIBAVFORMAT_VERSION)
4475#define AVPROBE_SCORE_RETRY (AVPROBE_SCORE_MAX/4)
4476#define AVPROBE_SCORE_STREAM_RETRY (AVPROBE_SCORE_MAX/4-1)
4478#define AVPROBE_SCORE_EXTENSION 50
4479#define AVPROBE_SCORE_MIME 75
4480#define AVPROBE_SCORE_MAX 100
4482#define AVPROBE_PADDING_SIZE 32
4484#define AVFMT_NOFILE 0x0001
4485#define AVFMT_NEEDNUMBER 0x0002
4487#define AVFMT_EXPERIMENTAL 0x0004
4488#define AVFMT_SHOW_IDS 0x0008
4489#define AVFMT_GLOBALHEADER 0x0040
4490#define AVFMT_NOTIMESTAMPS 0x0080
4491#define AVFMT_GENERIC_INDEX 0x0100
4492#define AVFMT_TS_DISCONT 0x0200
4493#define AVFMT_VARIABLE_FPS 0x0400
4494#define AVFMT_NODIMENSIONS 0x0800
4495#define AVFMT_NOSTREAMS 0x1000
4496#define AVFMT_NOBINSEARCH 0x2000
4497#define AVFMT_NOGENSEARCH 0x4000
4498#define AVFMT_NO_BYTE_SEEK 0x8000
4499#define AVFMT_ALLOW_FLUSH 0x10000
4500#define AVFMT_TS_NONSTRICT 0x20000
4502#define AVFMT_TS_NEGATIVE 0x40000
4504#define AVFMT_SEEK_TO_PTS 0x4000000
4519 const struct AVCodecTag *
const *
codec_tag;
4534 const struct AVCodecTag *
const *
codec_tag;
4555#define AVINDEX_KEYFRAME 0x0001
4556#define AVINDEX_DISCARD_FRAME 0x0002
4563#define AV_DISPOSITION_DEFAULT (1 << 0)
4565#define AV_DISPOSITION_DUB (1 << 1)
4567#define AV_DISPOSITION_ORIGINAL (1 << 2)
4569#define AV_DISPOSITION_COMMENT (1 << 3)
4571#define AV_DISPOSITION_LYRICS (1 << 4)
4573#define AV_DISPOSITION_KARAOKE (1 << 5)
4575#define AV_DISPOSITION_FORCED (1 << 6)
4577#define AV_DISPOSITION_HEARING_IMPAIRED (1 << 7)
4579#define AV_DISPOSITION_VISUAL_IMPAIRED (1 << 8)
4581#define AV_DISPOSITION_CLEAN_EFFECTS (1 << 9)
4583#define AV_DISPOSITION_ATTACHED_PIC (1 << 10)
4585#define AV_DISPOSITION_TIMED_THUMBNAILS (1 << 11)
4587#define AV_DISPOSITION_NON_DIEGETIC (1 << 12)
4589#define AV_DISPOSITION_CAPTIONS (1 << 16)
4591#define AV_DISPOSITION_DESCRIPTIONS (1 << 17)
4593#define AV_DISPOSITION_METADATA (1 << 18)
4595#define AV_DISPOSITION_DEPENDENT (1 << 19)
4597#define AV_DISPOSITION_STILL_IMAGE (1 << 20)
4603#define AV_PTS_WRAP_IGNORE 0
4604#define AV_PTS_WRAP_ADD_OFFSET 1
4605#define AV_PTS_WRAP_SUB_OFFSET -1
4647#define AVSTREAM_EVENT_FLAG_METADATA_UPDATED 0x0001
4649#define AVSTREAM_EVENT_FLAG_NEW_PACKETS (1 << 1)
4692struct AVIAMFAudioElement;
4693struct AVIAMFMixPresentation;
4724#define AV_PROGRAM_RUNNING 1
4746#define AVFMTCTX_NOHEADER 0x0001
4748#define AVFMTCTX_UNSEEKABLE 0x0002
4758 void *data,
size_t data_size);
4806#define AVFMT_FLAG_GENPTS 0x0001
4807#define AVFMT_FLAG_IGNIDX 0x0002
4808#define AVFMT_FLAG_NONBLOCK 0x0004
4809#define AVFMT_FLAG_IGNDTS 0x0008
4810#define AVFMT_FLAG_NOFILLIN 0x0010
4811#define AVFMT_FLAG_NOPARSE 0x0020
4812#define AVFMT_FLAG_NOBUFFER 0x0040
4813#define AVFMT_FLAG_CUSTOM_IO 0x0080
4814#define AVFMT_FLAG_DISCARD_CORRUPT 0x0100
4815#define AVFMT_FLAG_FLUSH_PACKETS 0x0200
4817#define AVFMT_FLAG_BITEXACT 0x0400
4818#define AVFMT_FLAG_SORT_DTS 0x10000
4819#define AVFMT_FLAG_FAST_SEEK 0x80000
4820#define AVFMT_FLAG_SHORTEST 0x100000
4821#define AVFMT_FLAG_AUTO_BSF 0x200000
4852#define FF_FDEBUG_TS 0x0001
4874#define AVFMT_EVENT_FLAG_METADATA_UPDATED 0x0001
4877#define AVFMT_AVOID_NEG_TS_AUTO -1
4878#define AVFMT_AVOID_NEG_TS_DISABLED 0
4879#define AVFMT_AVOID_NEG_TS_MAKE_NON_NEGATIVE 1
4880#define AVFMT_AVOID_NEG_TS_MAKE_ZERO 2
4979 uint8_t *data,
size_t size);
4992 const char *format_name,
const char *
filename);
4999 int is_opened,
int *score_max);
5002 int is_opened,
int *score_ret);
5005 const char *
url,
void *logctx,
5006 unsigned int offset,
unsigned int max_probe_size);
5009 const char *
url,
void *logctx,
5010 unsigned int offset,
unsigned int max_probe_size);
5023 int wanted_stream_nb,
5025 const struct AVCodec **decoder_ret,
5043#define AVSEEK_FLAG_BACKWARD 1
5044#define AVSEEK_FLAG_BYTE 2
5045#define AVSEEK_FLAG_ANY 4
5046#define AVSEEK_FLAG_FRAME 8
5048#define AVSTREAM_INIT_IN_WRITE_HEADER 0
5049#define AVSTREAM_INIT_IN_INIT_OUTPUT 1
5073 const char *mime_type);
5076 const char *
filename,
const char *mime_type,
5080 int64_t *dts, int64_t *wall);
5107 int64_t wanted_timestamp,
5114 char *authorization,
int authorization_size,
5115 char *hostname,
int hostname_size,
5117 char *path,
int path_size,
5125#define AV_FRAME_FILENAME_FLAGS_MULTIPLE 1
5128 const char *path,
int number,
int flags);
5131 const char *path,
int number);
5140 int std_compliance);
5174#define AVUTIL_FIFO_H
5178typedef int AVFifoCB(
void *opaque,
void *buf,
size_t *nb_elems);
5180#define AV_FIFO_FLAG_AUTO_GROW (1 << 0)
5183 unsigned int flags);
5198 void *opaque,
size_t *nb_elems);
5203 void *opaque,
size_t *nb_elems);
5208 size_t *nb_elems,
size_t offset);
struct AVDictionary AVDictionary
static ProjectFileIORegistry::AttributeWriterEntry entry
enum AVChannelOrder order
union AVChannelLayout::@162 u
const struct AVOption * option
int(* query_ranges)(struct AVOptionRanges **, void *obj, const char *key, int flags)
AVClassCategory(* get_category)(void *ctx)
int parent_log_context_offset
int log_level_offset_offset
float rc_max_available_vbv_use
struct AVCodecInternal * internal
int * side_data_prefer_packet
enum AVPixelFormat pix_fmt
AVPacketSideData * coded_side_data
int(* get_encode_buffer)(struct AVCodecContext *s, AVPacket *pkt, int flags)
int(* execute)(struct AVCodecContext *c, int(*func)(struct AVCodecContext *c2, void *arg), void *arg2, int *ret, int count, int size)
const struct AVCodecDescriptor * codec_descriptor
uint64_t error[AV_NUM_DATA_POINTERS]
AVChannelLayout ch_layout
enum AVSampleFormat sample_fmt
enum AVPixelFormat sw_pix_fmt
enum AVColorRange color_range
int strict_std_compliance
enum AVAudioServiceType audio_service_type
enum AVColorPrimaries color_primaries
enum AVMediaType codec_type
AVBufferRef * hw_frames_ctx
AVRational sample_aspect_ratio
int bits_per_coded_sample
uint16_t * chroma_intra_matrix
enum AVFieldOrder field_order
attribute_deprecated AVPacket * pkt
enum AVDiscard skip_loop_filter
int rc_initial_buffer_occupancy
int(* get_buffer2)(struct AVCodecContext *s, AVFrame *frame, int flags)
uint8_t * subtitle_header
enum AVColorSpace colorspace
struct AVHWAccel * hwaccel
const struct AVCodec * codec
enum AVSampleFormat request_sample_fmt
float temporal_cplx_masking
int discard_damaged_percentage
void(* draw_horiz_band)(struct AVCodecContext *s, const AVFrame *src, int offset[AV_NUM_DATA_POINTERS], int y, int type, int height)
attribute_deprecated int ticks_per_frame
enum AVColorTransferCharacteristic color_trc
float rc_min_vbv_overflow_use
AVFrameSideData ** decoded_side_data
enum AVChromaLocation chroma_sample_location
AVBufferRef * hw_device_ctx
unsigned nb_side_data_prefer_packet
int(* execute2)(struct AVCodecContext *c, int(*func)(struct AVCodecContext *c2, void *arg, int jobnr, int threadnr), void *arg2, int *ret, int count)
enum AVPixelFormat(* get_format)(struct AVCodecContext *s, const enum AVPixelFormat *fmt)
float spatial_cplx_masking
enum AVDiscard skip_frame
const struct AVProfile * profiles
const char *const * mime_types
enum AVHWDeviceType device_type
enum AVPixelFormat pix_fmt
const AVChannelLayout * ch_layouts
const int * supported_samplerates
const AVRational * supported_framerates
const char * wrapper_name
const AVClass * priv_class
const AVProfile * profiles
enum AVPixelFormat * pix_fmts
enum AVSampleFormat * sample_fmts
enum AVColorSpace color_space
enum AVFieldOrder field_order
int bits_per_coded_sample
AVChannelLayout ch_layout
enum AVMediaType codec_type
AVRational sample_aspect_ratio
enum AVColorPrimaries color_primaries
enum AVColorTransferCharacteristic color_trc
AVPacketSideData * coded_side_data
enum AVChromaLocation chroma_location
enum AVColorRange color_range
int64_t cur_frame_end[AV_PARSER_PTS_NB]
int64_t cur_frame_offset[AV_PARSER_PTS_NB]
int64_t cur_frame_dts[AV_PARSER_PTS_NB]
enum AVFieldOrder field_order
int64_t cur_frame_pos[AV_PARSER_PTS_NB]
enum AVPictureStructure picture_structure
int output_picture_number
int64_t cur_frame_pts[AV_PARSER_PTS_NB]
int64_t next_frame_offset
struct AVCodecParser * parser
int cur_frame_start_index
int(* parser_init)(AVCodecParserContext *s)
int(* parser_parse)(AVCodecParserContext *s, AVCodecContext *avctx, const uint8_t **poutbuf, int *poutbuf_size, const uint8_t *buf, int buf_size)
void(* parser_close)(AVCodecParserContext *s)
int(* split)(AVCodecContext *avctx, const uint8_t *buf, int buf_size)
int64_t max_interleave_delta
AVStreamGroup ** stream_groups
char * protocol_whitelist
enum AVCodecID audio_codec_id
enum AVCodecID data_codec_id
const struct AVCodec * data_codec
attribute_deprecated int max_analyze_duration
int strict_std_compliance
const struct AVCodec * audio_codec
struct AVOutputFormat * oformat
AVIOInterruptCB interrupt_callback
struct AVInputFormat * iformat
char * protocol_blacklist
int metadata_header_padding
int(* io_open)(struct AVFormatContext *s, AVIOContext **pb, const char *url, int flags, AVDictionary **options)
int use_wallclock_as_timestamps
enum AVDurationEstimationMethod duration_estimation_method
int64_t start_time_realtime
unsigned int max_index_size
enum AVCodecID video_codec_id
av_format_control_message control_message_cb
unsigned int nb_stream_groups
enum AVCodecID subtitle_codec_id
int64_t skip_initial_bytes
const struct AVCodec * subtitle_codec
unsigned int max_picture_buffer
const struct AVCodec * video_codec
int skip_estimate_duration_from_pts
int(* io_close2)(struct AVFormatContext *s, AVIOContext *pb)
unsigned int correct_ts_overflow
int64_t best_effort_timestamp
attribute_deprecated int palette_has_changed
AVBufferRef * private_ref
enum AVChromaLocation chroma_location
AVBufferRef ** extended_buf
attribute_deprecated int top_field_first
enum AVColorPrimaries color_primaries
AVRational sample_aspect_ratio
AVBufferRef * buf[AV_NUM_DATA_POINTERS]
enum AVColorRange color_range
attribute_deprecated int interlaced_frame
AVFrameSideData ** side_data
attribute_deprecated int pkt_size
enum AVColorSpace colorspace
enum AVColorTransferCharacteristic color_trc
int linesize[AV_NUM_DATA_POINTERS]
AVBufferRef * hw_frames_ctx
AVChannelLayout ch_layout
uint8_t * data[AV_NUM_DATA_POINTERS]
enum AVPictureType pict_type
attribute_deprecated int64_t pkt_pos
attribute_deprecated int key_frame
enum AVFrameSideDataType type
enum AVPixelFormat pix_fmt
void(* free)(struct AVHWDeviceContext *ctx)
enum AVPixelFormat * valid_hw_formats
enum AVPixelFormat * valid_sw_formats
enum AVPixelFormat format
AVHWDeviceContext * device_ctx
enum AVPixelFormat sw_format
void(* free)(struct AVHWFramesContext *ctx)
int64_t(* seek)(void *opaque, int64_t offset, int whence)
unsigned long(* update_checksum)(unsigned long checksum, const uint8_t *buf, unsigned int size)
unsigned char * buf_ptr_max
int(* write_packet)(void *opaque, uint8_t *buf, int buf_size)
int ignore_boundary_point
const char * protocol_blacklist
unsigned char * checksum_ptr
int(* read_packet)(void *opaque, uint8_t *buf, int buf_size)
int64_t(* read_seek)(void *opaque, int stream_index, int64_t timestamp, int flags)
int(* write_data_type)(void *opaque, uint8_t *buf, int buf_size, enum AVIODataMarkerType type, int64_t time)
int(* read_pause)(void *opaque, int pause)
const char * protocol_whitelist
int64_t status_change_timestamp
int64_t modification_timestamp
AVPacketSideData * side_data
struct AVPacketList * next
enum AVPacketSideDataType type
unsigned int nb_stream_indexes
int64_t pts_wrap_reference
unsigned int * stream_index
enum AVStreamGroupParamsType type
union AVStreamGroup::@168 params
struct AVIAMFMixPresentation * iamf_mix_presentation
struct AVStreamGroupTileGrid * tile_grid
struct AVIAMFAudioElement * iamf_audio_element
struct AVStreamGroupTileGrid::@167 * offsets
attribute_deprecated AVPacketSideData * side_data
AVRational sample_aspect_ratio
attribute_deprecated int nb_side_data
AVRational avg_frame_rate
AVCodecParameters * codecpar
uint32_t start_display_time
uint32_t end_display_time