16#define AVCODEC_AVCODEC_H
18#define AVUTIL_SAMPLEFMT_H
20#define AVUTIL_AVUTIL_H
42#define FF_LAMBDA_SHIFT 7
43#define FF_LAMBDA_SCALE (1<<FF_LAMBDA_SHIFT)
44#define FF_QP2LAMBDA 118
45#define FF_LAMBDA_MAX (256*128-1)
47#define FF_QUALITY_SCALE FF_LAMBDA_SCALE
49#define AV_NOPTS_VALUE ((int64_t)UINT64_C(0x8000000000000000))
51#define AV_TIME_BASE 1000000
53#define AV_TIME_BASE_Q (AVRational){1, AV_TIME_BASE}
68#define AVUTIL_COMMON_H
70#define AVUTIL_ATTRIBUTES_H
72# define AV_GCC_VERSION_AT_LEAST(x,y) 0
73# define AV_GCC_VERSION_AT_MOST(x,y) 0
75# define av_always_inline inline
77# define av_extern_inline inline
79# define av_warn_unused_result
91# define attribute_deprecated
93# define AV_NOWARN_DEPRECATED(code) code
101# define av_uninit(x) x
103# define av_builtin_constant_p(x) 0
104# define av_printf_format(fmtpos, attrpos)
108#define AVUTIL_MACROS_H
110#define AV_STRINGIFY(s) AV_TOSTRING(s)
111#define AV_TOSTRING(s) #s
113#define AV_GLUE(a, b) a ## b
114#define AV_JOIN(a, b) AV_GLUE(a, b)
116#define AV_PRAGMA(s) _Pragma(#s)
118#define FFALIGN(x, a) (((x)+(a)-1)&~((a)-1))
120#define AVUTIL_VERSION_H
122#define AV_VERSION_INT(a, b, c) ((a)<<16 | (b)<<8 | (c))
123#define AV_VERSION_DOT(a, b, c) a ##.## b ##.## c
124#define AV_VERSION(a, b, c) AV_VERSION_DOT(a, b, c)
126#define AV_VERSION_MAJOR(a) ((a) >> 16)
127#define AV_VERSION_MINOR(a) (((a) & 0x00FF00) >> 8)
128#define AV_VERSION_MICRO(a) ((a) & 0xFF)
130#define LIBAVUTIL_VERSION_MAJOR 56
131#define LIBAVUTIL_VERSION_MINOR 31
132#define LIBAVUTIL_VERSION_MICRO 100
134#define LIBAVUTIL_VERSION_INT AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \
135 LIBAVUTIL_VERSION_MINOR, \
136 LIBAVUTIL_VERSION_MICRO)
137#define LIBAVUTIL_VERSION AV_VERSION(LIBAVUTIL_VERSION_MAJOR, \
138 LIBAVUTIL_VERSION_MINOR, \
139 LIBAVUTIL_VERSION_MICRO)
140#define LIBAVUTIL_BUILD LIBAVUTIL_VERSION_INT
142#define LIBAVUTIL_IDENT "Lavu" AV_STRINGIFY(LIBAVUTIL_VERSION)
144#define FF_API_VAAPI (LIBAVUTIL_VERSION_MAJOR < 57)
145#define FF_API_FRAME_QP (LIBAVUTIL_VERSION_MAJOR < 57)
146#define FF_API_PLUS1_MINUS1 (LIBAVUTIL_VERSION_MAJOR < 57)
147#define FF_API_ERROR_FRAME (LIBAVUTIL_VERSION_MAJOR < 57)
148#define FF_API_PKT_PTS (LIBAVUTIL_VERSION_MAJOR < 57)
149#define FF_API_CRYPTO_SIZE_T (LIBAVUTIL_VERSION_MAJOR < 57)
150#define FF_API_FRAME_GET_SET (LIBAVUTIL_VERSION_MAJOR < 57)
151#define FF_API_PSEUDOPAL (LIBAVUTIL_VERSION_MAJOR < 57)
153# define AV_NE(be, le) (le)
155#define RSHIFT(a,b) ((a) > 0 ? ((a) + ((1<<(b))>>1))>>(b) : ((a) + ((1<<(b))>>1)-1)>>(b))
157#define ROUNDED_DIV(a,b) (((a)>0 ? (a) + ((b)>>1) : (a) - ((b)>>1))/(b))
159#define AV_CEIL_RSHIFT(a,b) (!av_builtin_constant_p(b) ? -((-(a)) >> (b)) \
160 : ((a) + (1<<(b)) - 1) >> (b))
162#define FF_CEIL_RSHIFT AV_CEIL_RSHIFT
164#define FFUDIV(a,b) (((a)>0 ?(a):(a)-(b)+1) / (b))
165#define FFUMOD(a,b) ((a)-(b)*FFUDIV(a,b))
167#define FFABS(a) ((a) >= 0 ? (a) : (-(a)))
168#define FFSIGN(a) ((a) > 0 ? 1 : -1)
170#define FFNABS(a) ((a) <= 0 ? (a) : (-(a)))
172#define FFDIFFSIGN(x,y) (((x)>(y)) - ((x)<(y)))
174#define FFMAX(a,b) ((a) > (b) ? (a) : (b))
175#define FFMAX3(a,b,c) FFMAX(FFMAX(a,b),c)
176#define FFMIN(a,b) ((a) > (b) ? (b) : (a))
177#define FFMIN3(a,b,c) FFMIN(FFMIN(a,b),c)
179#define FFSWAP(type,a,b) do{type SWAP_tmp= b; b= a; a= SWAP_tmp;}while(0)
180#define FF_ARRAY_ELEMS(a) (sizeof(a) / sizeof((a)[0]))
182# define av_ceil_log2 av_ceil_log2_c
183# define av_clip av_clip_c
184# define av_clip64 av_clip64_c
185# define av_clip_uint8 av_clip_uint8_c
186# define av_clip_int8 av_clip_int8_c
187# define av_clip_uint16 av_clip_uint16_c
188# define av_clip_int16 av_clip_int16_c
189# define av_clipl_int32 av_clipl_int32_c
190# define av_clip_intp2 av_clip_intp2_c
191# define av_clip_uintp2 av_clip_uintp2_c
192# define av_mod_uintp2 av_mod_uintp2_c
193# define av_sat_add32 av_sat_add32_c
194# define av_sat_dadd32 av_sat_dadd32_c
195# define av_sat_sub32 av_sat_sub32_c
196# define av_sat_dsub32 av_sat_dsub32_c
197# define av_clipf av_clipf_c
198# define av_clipd av_clipd_c
199# define av_popcount av_popcount_c
200# define av_popcount64 av_popcount64_c
201# define av_parity av_parity_c
209 if (a < amin)
return amin;
210 else if (a > amax)
return amax;
216 if (a < amin)
return amin;
217 else if (a > amax)
return amax;
223 if (a&(~0xFF))
return (~a)>>31;
229 if ((a+0x80U) & ~0xFF)
return (a>>31) ^ 0x7F;
235 if (a&(~0xFFFF))
return (~a)>>31;
241 if ((a+0x8000U) & ~0xFFFF)
return (a>>31) ^ 0x7FFF;
247 if ((a+0x80000000u) & ~UINT64_C(0xFFFFFFFF))
return (int32_t)((a>>63) ^ 0x7FFFFFFF);
248 else return (int32_t)a;
253 if (((
unsigned)a + (1 << p)) & ~((2 << p) - 1))
254 return (a >> 31) ^ ((1 << p) - 1);
261 if (a & ~((1<<p) - 1))
return (~a) >> 31 & ((1<<p) - 1);
267 return a & ((1 << p) - 1);
292 if (a < amin)
return amin;
293 else if (a > amax)
return amax;
299 if (a < amin)
return amin;
300 else if (a > amax)
return amax;
311 x -= (x >> 1) & 0x55555555;
312 x = (x & 0x33333333) + ((x >> 2) & 0x33333333);
313 x = (x + (x >> 4)) & 0x0F0F0F0F;
315 return (x + (x >> 16)) & 0x3F;
328#define MKTAG(a,b,c,d) ((a) | ((b) << 8) | ((c) << 16) | ((unsigned)(d) << 24))
329#define MKBETAG(a,b,c,d) ((d) | ((c) << 8) | ((b) << 16) | ((unsigned)(a) << 24))
331#define GET_UTF8(val, GET_BYTE, ERROR)\
334 uint32_t top = (val & 128) >> 1;\
335 if ((val & 0xc0) == 0x80 || val >= 0xFE)\
338 int tmp= (GET_BYTE) - 128;\
341 val= (val<<6) + tmp;\
344 val &= (top << 1) - 1;\
347#define GET_UTF16(val, GET_16BIT, ERROR)\
350 unsigned int hi = val - 0xD800;\
352 val = GET_16BIT - 0xDC00;\
353 if (val > 0x3FFU || hi > 0x3FFU)\
355 val += (hi<<10) + 0x10000;\
359#define PUT_UTF8(val, tmp, PUT_BYTE)\
367 bytes = (av_log2(in) + 4) / 5;\
368 shift = (bytes - 1) * 6;\
369 tmp = (256 - (256 >> bytes)) | (in >> shift);\
371 while (shift >= 6) {\
373 tmp = 0x80 | ((in >> shift) & 0x3f);\
379#define PUT_UTF16(val, tmp, PUT_16BIT)\
386 tmp = 0xD800 | ((in - 0x10000) >> 10);\
388 tmp = 0xDC00 | ((in - 0x10000) & 0x3FF);\
395#define AVUTIL_ERROR_H
397#define AVERROR(e) (e)
398#define AVUNERROR(e) (e)
400#define FFERRTAG(a, b, c, d) (-(int)MKTAG(a, b, c, d))
402#define AVERROR_BSF_NOT_FOUND FFERRTAG(0xF8,'B','S','F')
403#define AVERROR_BUG FFERRTAG( 'B','U','G','!')
404#define AVERROR_BUFFER_TOO_SMALL FFERRTAG( 'B','U','F','S')
405#define AVERROR_DECODER_NOT_FOUND FFERRTAG(0xF8,'D','E','C')
406#define AVERROR_DEMUXER_NOT_FOUND FFERRTAG(0xF8,'D','E','M')
407#define AVERROR_ENCODER_NOT_FOUND FFERRTAG(0xF8,'E','N','C')
408#define AVERROR_EOF FFERRTAG( 'E','O','F',' ')
409#define AVERROR_EXIT FFERRTAG( 'E','X','I','T')
410#define AVERROR_EXTERNAL FFERRTAG( 'E','X','T',' ')
411#define AVERROR_FILTER_NOT_FOUND FFERRTAG(0xF8,'F','I','L')
412#define AVERROR_INVALIDDATA FFERRTAG( 'I','N','D','A')
413#define AVERROR_MUXER_NOT_FOUND FFERRTAG(0xF8,'M','U','X')
414#define AVERROR_OPTION_NOT_FOUND FFERRTAG(0xF8,'O','P','T')
415#define AVERROR_PATCHWELCOME FFERRTAG( 'P','A','W','E')
416#define AVERROR_PROTOCOL_NOT_FOUND FFERRTAG(0xF8,'P','R','O')
418#define AVERROR_STREAM_NOT_FOUND FFERRTAG(0xF8,'S','T','R')
420#define AVERROR_BUG2 FFERRTAG( 'B','U','G',' ')
421#define AVERROR_UNKNOWN FFERRTAG( 'U','N','K','N')
422#define AVERROR_EXPERIMENTAL (-0x2bb2afa8)
423#define AVERROR_INPUT_CHANGED (-0x636e6701)
424#define AVERROR_OUTPUT_CHANGED (-0x636e6702)
426#define AVERROR_HTTP_BAD_REQUEST FFERRTAG(0xF8,'4','0','0')
427#define AVERROR_HTTP_UNAUTHORIZED FFERRTAG(0xF8,'4','0','1')
428#define AVERROR_HTTP_FORBIDDEN FFERRTAG(0xF8,'4','0','3')
429#define AVERROR_HTTP_NOT_FOUND FFERRTAG(0xF8,'4','0','4')
430#define AVERROR_HTTP_OTHER_4XX FFERRTAG(0xF8,'4','X','X')
431#define AVERROR_HTTP_SERVER_ERROR FFERRTAG(0xF8,'5','X','X')
433#define AV_ERROR_MAX_STRING_SIZE 64
443#define av_err2str(errnum) \
444 av_make_error_string((char[AV_ERROR_MAX_STRING_SIZE]){0}, AV_ERROR_MAX_STRING_SIZE, errnum)
446 #define DECLARE_ALIGNED(n,t,v) t v
447 #define DECLARE_ASM_ALIGNED(n,t,v) t v
448 #define DECLARE_ASM_CONST(n,t,v) static const t v
450 #define av_malloc_attrib
452 #define av_alloc_size(...)
499 const uint8_t *elem_data);
505 if ((a | b) >= ((
size_t)1 << (
sizeof(
size_t) * 4)) && a && t / a != b)
513#define AVUTIL_RATIONAL_H
527 const int64_t tmp= a.
num * (int64_t)b.
den - b.
num * (int64_t)a.
den;
529 if(tmp)
return (
int)((tmp ^ a.
den ^ b.
den)>>63)|1;
530 else if(b.
den && a.
den)
return 0;
531 else if(a.
num && b.
num)
return (a.
num>>31) - (b.
num>>31);
536 return a.
num / (double) a.
den;
539int av_reduce(
int *dst_num,
int *dst_den, int64_t num, int64_t den, int64_t max);
563#define AVUTIL_MATHEMATICS_H
565#define AVUTIL_INTFLOAT_H
605#define M_E 2.7182818284590452354
606#define M_LN2 0.69314718055994530942
607#define M_LN10 2.30258509299404568402
608#define M_LOG2_10 3.32192809488736234787
609#define M_PHI 1.61803398874989484820
610#define M_PI 3.14159265358979323846
611#define M_PI_2 1.57079632679489661923
612#define M_SQRT1_2 0.70710678118654752440
613#define M_SQRT2 1.41421356237309504880
614#define NAN av_int2float(0x7fc00000)
615#define INFINITY av_int2float(0x7f800000)
669#define AV_IS_INPUT_DEVICE(category) \
670 (((category) == AV_CLASS_CATEGORY_DEVICE_VIDEO_INPUT) || \
671 ((category) == AV_CLASS_CATEGORY_DEVICE_AUDIO_INPUT) || \
672 ((category) == AV_CLASS_CATEGORY_DEVICE_INPUT))
674#define AV_IS_OUTPUT_DEVICE(category) \
675 (((category) == AV_CLASS_CATEGORY_DEVICE_VIDEO_OUTPUT) || \
676 ((category) == AV_CLASS_CATEGORY_DEVICE_AUDIO_OUTPUT) || \
677 ((category) == AV_CLASS_CATEGORY_DEVICE_OUTPUT))
679struct AVOptionRanges;
685 const char* (*item_name)(
void* ctx);
687 const struct AVOption *
option;
695 void* (*child_next)(
void *obj,
void *prev);
697 const struct AVClass* (*child_class_next)(
const struct AVClass *prev);
703 int (*
query_ranges)(
struct AVOptionRanges **,
void *obj,
const char *
key,
int flags);
706#define AV_LOG_QUIET -8
708#define AV_LOG_PANIC 0
710#define AV_LOG_FATAL 8
712#define AV_LOG_ERROR 16
714#define AV_LOG_WARNING 24
716#define AV_LOG_INFO 32
718#define AV_LOG_VERBOSE 40
720#define AV_LOG_DEBUG 48
722#define AV_LOG_TRACE 56
724#define AV_LOG_MAX_OFFSET (AV_LOG_TRACE - AV_LOG_QUIET)
726#define AV_LOG_C(x) ((x) << 8)
730void av_vlog(
void *avcl,
int level, const
char *fmt, va_list vl);
745 char *line,
int line_size,
int *print_prefix);
748 char *line,
int line_size,
int *print_prefix);
750#define AV_LOG_SKIP_REPEATED 1
752#define AV_LOG_PRINT_LEVEL 2
757#define AVUTIL_PIXFMT_H
759#define AVPALETTE_SIZE 1024
760#define AVPALETTE_COUNT 256
1007# define AV_PIX_FMT_NE(be, le) AV_PIX_FMT_##le
1009#define AV_PIX_FMT_RGB32 AV_PIX_FMT_NE(ARGB, BGRA)
1010#define AV_PIX_FMT_RGB32_1 AV_PIX_FMT_NE(RGBA, ABGR)
1011#define AV_PIX_FMT_BGR32 AV_PIX_FMT_NE(ABGR, RGBA)
1012#define AV_PIX_FMT_BGR32_1 AV_PIX_FMT_NE(BGRA, ARGB)
1013#define AV_PIX_FMT_0RGB32 AV_PIX_FMT_NE(0RGB, BGR0)
1014#define AV_PIX_FMT_0BGR32 AV_PIX_FMT_NE(0BGR, RGB0)
1016#define AV_PIX_FMT_GRAY9 AV_PIX_FMT_NE(GRAY9BE, GRAY9LE)
1017#define AV_PIX_FMT_GRAY10 AV_PIX_FMT_NE(GRAY10BE, GRAY10LE)
1018#define AV_PIX_FMT_GRAY12 AV_PIX_FMT_NE(GRAY12BE, GRAY12LE)
1019#define AV_PIX_FMT_GRAY14 AV_PIX_FMT_NE(GRAY14BE, GRAY14LE)
1020#define AV_PIX_FMT_GRAY16 AV_PIX_FMT_NE(GRAY16BE, GRAY16LE)
1021#define AV_PIX_FMT_YA16 AV_PIX_FMT_NE(YA16BE, YA16LE)
1022#define AV_PIX_FMT_RGB48 AV_PIX_FMT_NE(RGB48BE, RGB48LE)
1023#define AV_PIX_FMT_RGB565 AV_PIX_FMT_NE(RGB565BE, RGB565LE)
1024#define AV_PIX_FMT_RGB555 AV_PIX_FMT_NE(RGB555BE, RGB555LE)
1025#define AV_PIX_FMT_RGB444 AV_PIX_FMT_NE(RGB444BE, RGB444LE)
1026#define AV_PIX_FMT_RGBA64 AV_PIX_FMT_NE(RGBA64BE, RGBA64LE)
1027#define AV_PIX_FMT_BGR48 AV_PIX_FMT_NE(BGR48BE, BGR48LE)
1028#define AV_PIX_FMT_BGR565 AV_PIX_FMT_NE(BGR565BE, BGR565LE)
1029#define AV_PIX_FMT_BGR555 AV_PIX_FMT_NE(BGR555BE, BGR555LE)
1030#define AV_PIX_FMT_BGR444 AV_PIX_FMT_NE(BGR444BE, BGR444LE)
1031#define AV_PIX_FMT_BGRA64 AV_PIX_FMT_NE(BGRA64BE, BGRA64LE)
1033#define AV_PIX_FMT_YUV420P9 AV_PIX_FMT_NE(YUV420P9BE , YUV420P9LE)
1034#define AV_PIX_FMT_YUV422P9 AV_PIX_FMT_NE(YUV422P9BE , YUV422P9LE)
1035#define AV_PIX_FMT_YUV444P9 AV_PIX_FMT_NE(YUV444P9BE , YUV444P9LE)
1036#define AV_PIX_FMT_YUV420P10 AV_PIX_FMT_NE(YUV420P10BE, YUV420P10LE)
1037#define AV_PIX_FMT_YUV422P10 AV_PIX_FMT_NE(YUV422P10BE, YUV422P10LE)
1038#define AV_PIX_FMT_YUV440P10 AV_PIX_FMT_NE(YUV440P10BE, YUV440P10LE)
1039#define AV_PIX_FMT_YUV444P10 AV_PIX_FMT_NE(YUV444P10BE, YUV444P10LE)
1040#define AV_PIX_FMT_YUV420P12 AV_PIX_FMT_NE(YUV420P12BE, YUV420P12LE)
1041#define AV_PIX_FMT_YUV422P12 AV_PIX_FMT_NE(YUV422P12BE, YUV422P12LE)
1042#define AV_PIX_FMT_YUV440P12 AV_PIX_FMT_NE(YUV440P12BE, YUV440P12LE)
1043#define AV_PIX_FMT_YUV444P12 AV_PIX_FMT_NE(YUV444P12BE, YUV444P12LE)
1044#define AV_PIX_FMT_YUV420P14 AV_PIX_FMT_NE(YUV420P14BE, YUV420P14LE)
1045#define AV_PIX_FMT_YUV422P14 AV_PIX_FMT_NE(YUV422P14BE, YUV422P14LE)
1046#define AV_PIX_FMT_YUV444P14 AV_PIX_FMT_NE(YUV444P14BE, YUV444P14LE)
1047#define AV_PIX_FMT_YUV420P16 AV_PIX_FMT_NE(YUV420P16BE, YUV420P16LE)
1048#define AV_PIX_FMT_YUV422P16 AV_PIX_FMT_NE(YUV422P16BE, YUV422P16LE)
1049#define AV_PIX_FMT_YUV444P16 AV_PIX_FMT_NE(YUV444P16BE, YUV444P16LE)
1051#define AV_PIX_FMT_GBRP9 AV_PIX_FMT_NE(GBRP9BE , GBRP9LE)
1052#define AV_PIX_FMT_GBRP10 AV_PIX_FMT_NE(GBRP10BE, GBRP10LE)
1053#define AV_PIX_FMT_GBRP12 AV_PIX_FMT_NE(GBRP12BE, GBRP12LE)
1054#define AV_PIX_FMT_GBRP14 AV_PIX_FMT_NE(GBRP14BE, GBRP14LE)
1055#define AV_PIX_FMT_GBRP16 AV_PIX_FMT_NE(GBRP16BE, GBRP16LE)
1056#define AV_PIX_FMT_GBRAP10 AV_PIX_FMT_NE(GBRAP10BE, GBRAP10LE)
1057#define AV_PIX_FMT_GBRAP12 AV_PIX_FMT_NE(GBRAP12BE, GBRAP12LE)
1058#define AV_PIX_FMT_GBRAP16 AV_PIX_FMT_NE(GBRAP16BE, GBRAP16LE)
1060#define AV_PIX_FMT_BAYER_BGGR16 AV_PIX_FMT_NE(BAYER_BGGR16BE, BAYER_BGGR16LE)
1061#define AV_PIX_FMT_BAYER_RGGB16 AV_PIX_FMT_NE(BAYER_RGGB16BE, BAYER_RGGB16LE)
1062#define AV_PIX_FMT_BAYER_GBRG16 AV_PIX_FMT_NE(BAYER_GBRG16BE, BAYER_GBRG16LE)
1063#define AV_PIX_FMT_BAYER_GRBG16 AV_PIX_FMT_NE(BAYER_GRBG16BE, BAYER_GRBG16LE)
1065#define AV_PIX_FMT_GBRPF32 AV_PIX_FMT_NE(GBRPF32BE, GBRPF32LE)
1066#define AV_PIX_FMT_GBRAPF32 AV_PIX_FMT_NE(GBRAPF32BE, GBRAPF32LE)
1068#define AV_PIX_FMT_GRAYF32 AV_PIX_FMT_NE(GRAYF32BE, GRAYF32LE)
1070#define AV_PIX_FMT_YUVA420P9 AV_PIX_FMT_NE(YUVA420P9BE , YUVA420P9LE)
1071#define AV_PIX_FMT_YUVA422P9 AV_PIX_FMT_NE(YUVA422P9BE , YUVA422P9LE)
1072#define AV_PIX_FMT_YUVA444P9 AV_PIX_FMT_NE(YUVA444P9BE , YUVA444P9LE)
1073#define AV_PIX_FMT_YUVA420P10 AV_PIX_FMT_NE(YUVA420P10BE, YUVA420P10LE)
1074#define AV_PIX_FMT_YUVA422P10 AV_PIX_FMT_NE(YUVA422P10BE, YUVA422P10LE)
1075#define AV_PIX_FMT_YUVA444P10 AV_PIX_FMT_NE(YUVA444P10BE, YUVA444P10LE)
1076#define AV_PIX_FMT_YUVA422P12 AV_PIX_FMT_NE(YUVA422P12BE, YUVA422P12LE)
1077#define AV_PIX_FMT_YUVA444P12 AV_PIX_FMT_NE(YUVA444P12BE, YUVA444P12LE)
1078#define AV_PIX_FMT_YUVA420P16 AV_PIX_FMT_NE(YUVA420P16BE, YUVA420P16LE)
1079#define AV_PIX_FMT_YUVA422P16 AV_PIX_FMT_NE(YUVA422P16BE, YUVA422P16LE)
1080#define AV_PIX_FMT_YUVA444P16 AV_PIX_FMT_NE(YUVA444P16BE, YUVA444P16LE)
1082#define AV_PIX_FMT_XYZ12 AV_PIX_FMT_NE(XYZ12BE, XYZ12LE)
1083#define AV_PIX_FMT_NV20 AV_PIX_FMT_NE(NV20BE, NV20LE)
1084#define AV_PIX_FMT_AYUV64 AV_PIX_FMT_NE(AYUV64BE, AYUV64LE)
1085#define AV_PIX_FMT_P010 AV_PIX_FMT_NE(P010BE, P010LE)
1086#define AV_PIX_FMT_P016 AV_PIX_FMT_NE(P016BE, P016LE)
1173 return (
void *)(intptr_t)(p ? p : x);
1177 const void *list, uint64_t term)
av_pure;
1179#define av_int_list_length(list, term) \
1180 av_int_list_length_for_size(sizeof(*(list)), list, term)
1186#define AV_FOURCC_MAX_STRING_SIZE 32
1188#define av_fourcc2str(fourcc) av_fourcc_make_string((char[AV_FOURCC_MAX_STRING_SIZE]){0}, fourcc)
1232 int nb_channels,
int nb_samples,
1242 int src_offset,
int nb_samples,
int nb_channels,
1248#define AVUTIL_BUFFER_H
1264#define AV_BUFFER_FLAG_READONLY (1 << 0)
1267 void (*
free)(
void *opaque, uint8_t *data),
1268 void *opaque,
int flags);
1292 void (*pool_free)(
void *opaque));
1300#define AV_CPU_FLAG_FORCE 0x80000000
1302#define AV_CPU_FLAG_MMX 0x0001
1303#define AV_CPU_FLAG_MMXEXT 0x0002
1304#define AV_CPU_FLAG_MMX2 0x0002
1305#define AV_CPU_FLAG_3DNOW 0x0004
1306#define AV_CPU_FLAG_SSE 0x0008
1307#define AV_CPU_FLAG_SSE2 0x0010
1308#define AV_CPU_FLAG_SSE2SLOW 0x40000000
1310#define AV_CPU_FLAG_3DNOWEXT 0x0020
1311#define AV_CPU_FLAG_SSE3 0x0040
1312#define AV_CPU_FLAG_SSE3SLOW 0x20000000
1314#define AV_CPU_FLAG_SSSE3 0x0080
1315#define AV_CPU_FLAG_SSSE3SLOW 0x4000000
1316#define AV_CPU_FLAG_ATOM 0x10000000
1317#define AV_CPU_FLAG_SSE4 0x0100
1318#define AV_CPU_FLAG_SSE42 0x0200
1319#define AV_CPU_FLAG_AESNI 0x80000
1320#define AV_CPU_FLAG_AVX 0x4000
1321#define AV_CPU_FLAG_AVXSLOW 0x8000000
1322#define AV_CPU_FLAG_XOP 0x0400
1323#define AV_CPU_FLAG_FMA4 0x0800
1324#define AV_CPU_FLAG_CMOV 0x1000
1325#define AV_CPU_FLAG_AVX2 0x8000
1326#define AV_CPU_FLAG_FMA3 0x10000
1327#define AV_CPU_FLAG_BMI1 0x20000
1328#define AV_CPU_FLAG_BMI2 0x40000
1329#define AV_CPU_FLAG_AVX512 0x100000
1331#define AV_CPU_FLAG_ALTIVEC 0x0001
1332#define AV_CPU_FLAG_VSX 0x0002
1333#define AV_CPU_FLAG_POWER8 0x0004
1335#define AV_CPU_FLAG_ARMV5TE (1 << 0)
1336#define AV_CPU_FLAG_ARMV6 (1 << 1)
1337#define AV_CPU_FLAG_ARMV6T2 (1 << 2)
1338#define AV_CPU_FLAG_VFP (1 << 3)
1339#define AV_CPU_FLAG_VFPV3 (1 << 4)
1340#define AV_CPU_FLAG_NEON (1 << 5)
1341#define AV_CPU_FLAG_ARMV8 (1 << 6)
1342#define AV_CPU_FLAG_VFP_VM (1 << 7)
1343#define AV_CPU_FLAG_SETEND (1 <<16)
1360#define AVUTIL_CHANNEL_LAYOUT_H
1362#define AV_CH_FRONT_LEFT 0x00000001
1363#define AV_CH_FRONT_RIGHT 0x00000002
1364#define AV_CH_FRONT_CENTER 0x00000004
1365#define AV_CH_LOW_FREQUENCY 0x00000008
1366#define AV_CH_BACK_LEFT 0x00000010
1367#define AV_CH_BACK_RIGHT 0x00000020
1368#define AV_CH_FRONT_LEFT_OF_CENTER 0x00000040
1369#define AV_CH_FRONT_RIGHT_OF_CENTER 0x00000080
1370#define AV_CH_BACK_CENTER 0x00000100
1371#define AV_CH_SIDE_LEFT 0x00000200
1372#define AV_CH_SIDE_RIGHT 0x00000400
1373#define AV_CH_TOP_CENTER 0x00000800
1374#define AV_CH_TOP_FRONT_LEFT 0x00001000
1375#define AV_CH_TOP_FRONT_CENTER 0x00002000
1376#define AV_CH_TOP_FRONT_RIGHT 0x00004000
1377#define AV_CH_TOP_BACK_LEFT 0x00008000
1378#define AV_CH_TOP_BACK_CENTER 0x00010000
1379#define AV_CH_TOP_BACK_RIGHT 0x00020000
1380#define AV_CH_STEREO_LEFT 0x20000000
1381#define AV_CH_STEREO_RIGHT 0x40000000
1382#define AV_CH_WIDE_LEFT 0x0000000080000000ULL
1383#define AV_CH_WIDE_RIGHT 0x0000000100000000ULL
1384#define AV_CH_SURROUND_DIRECT_LEFT 0x0000000200000000ULL
1385#define AV_CH_SURROUND_DIRECT_RIGHT 0x0000000400000000ULL
1386#define AV_CH_LOW_FREQUENCY_2 0x0000000800000000ULL
1388#define AV_CH_LAYOUT_NATIVE 0x8000000000000000ULL
1390#define AV_CH_LAYOUT_MONO (AV_CH_FRONT_CENTER)
1391#define AV_CH_LAYOUT_STEREO (AV_CH_FRONT_LEFT|AV_CH_FRONT_RIGHT)
1392#define AV_CH_LAYOUT_2POINT1 (AV_CH_LAYOUT_STEREO|AV_CH_LOW_FREQUENCY)
1393#define AV_CH_LAYOUT_2_1 (AV_CH_LAYOUT_STEREO|AV_CH_BACK_CENTER)
1394#define AV_CH_LAYOUT_SURROUND (AV_CH_LAYOUT_STEREO|AV_CH_FRONT_CENTER)
1395#define AV_CH_LAYOUT_3POINT1 (AV_CH_LAYOUT_SURROUND|AV_CH_LOW_FREQUENCY)
1396#define AV_CH_LAYOUT_4POINT0 (AV_CH_LAYOUT_SURROUND|AV_CH_BACK_CENTER)
1397#define AV_CH_LAYOUT_4POINT1 (AV_CH_LAYOUT_4POINT0|AV_CH_LOW_FREQUENCY)
1398#define AV_CH_LAYOUT_2_2 (AV_CH_LAYOUT_STEREO|AV_CH_SIDE_LEFT|AV_CH_SIDE_RIGHT)
1399#define AV_CH_LAYOUT_QUAD (AV_CH_LAYOUT_STEREO|AV_CH_BACK_LEFT|AV_CH_BACK_RIGHT)
1400#define AV_CH_LAYOUT_5POINT0 (AV_CH_LAYOUT_SURROUND|AV_CH_SIDE_LEFT|AV_CH_SIDE_RIGHT)
1401#define AV_CH_LAYOUT_5POINT1 (AV_CH_LAYOUT_5POINT0|AV_CH_LOW_FREQUENCY)
1402#define AV_CH_LAYOUT_5POINT0_BACK (AV_CH_LAYOUT_SURROUND|AV_CH_BACK_LEFT|AV_CH_BACK_RIGHT)
1403#define AV_CH_LAYOUT_5POINT1_BACK (AV_CH_LAYOUT_5POINT0_BACK|AV_CH_LOW_FREQUENCY)
1404#define AV_CH_LAYOUT_6POINT0 (AV_CH_LAYOUT_5POINT0|AV_CH_BACK_CENTER)
1405#define AV_CH_LAYOUT_6POINT0_FRONT (AV_CH_LAYOUT_2_2|AV_CH_FRONT_LEFT_OF_CENTER|AV_CH_FRONT_RIGHT_OF_CENTER)
1406#define AV_CH_LAYOUT_HEXAGONAL (AV_CH_LAYOUT_5POINT0_BACK|AV_CH_BACK_CENTER)
1407#define AV_CH_LAYOUT_6POINT1 (AV_CH_LAYOUT_5POINT1|AV_CH_BACK_CENTER)
1408#define AV_CH_LAYOUT_6POINT1_BACK (AV_CH_LAYOUT_5POINT1_BACK|AV_CH_BACK_CENTER)
1409#define AV_CH_LAYOUT_6POINT1_FRONT (AV_CH_LAYOUT_6POINT0_FRONT|AV_CH_LOW_FREQUENCY)
1410#define AV_CH_LAYOUT_7POINT0 (AV_CH_LAYOUT_5POINT0|AV_CH_BACK_LEFT|AV_CH_BACK_RIGHT)
1411#define AV_CH_LAYOUT_7POINT0_FRONT (AV_CH_LAYOUT_5POINT0|AV_CH_FRONT_LEFT_OF_CENTER|AV_CH_FRONT_RIGHT_OF_CENTER)
1412#define AV_CH_LAYOUT_7POINT1 (AV_CH_LAYOUT_5POINT1|AV_CH_BACK_LEFT|AV_CH_BACK_RIGHT)
1413#define AV_CH_LAYOUT_7POINT1_WIDE (AV_CH_LAYOUT_5POINT1|AV_CH_FRONT_LEFT_OF_CENTER|AV_CH_FRONT_RIGHT_OF_CENTER)
1414#define AV_CH_LAYOUT_7POINT1_WIDE_BACK (AV_CH_LAYOUT_5POINT1_BACK|AV_CH_FRONT_LEFT_OF_CENTER|AV_CH_FRONT_RIGHT_OF_CENTER)
1415#define AV_CH_LAYOUT_OCTAGONAL (AV_CH_LAYOUT_5POINT0|AV_CH_BACK_LEFT|AV_CH_BACK_CENTER|AV_CH_BACK_RIGHT)
1416#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)
1417#define AV_CH_LAYOUT_STEREO_DOWNMIX (AV_CH_STEREO_LEFT|AV_CH_STEREO_RIGHT)
1456#define AVUTIL_DICT_H
1458#define AV_DICT_MATCH_CASE 1
1459#define AV_DICT_IGNORE_SUFFIX 2
1461#define AV_DICT_DONT_STRDUP_KEY 4
1463#define AV_DICT_DONT_STRDUP_VAL 8
1465#define AV_DICT_DONT_OVERWRITE 16
1466#define AV_DICT_APPEND 32
1468#define AV_DICT_MULTIKEY 64
1487 const char *key_val_sep,
const char *pairs_sep,
1495 const char key_val_sep,
const char pairs_sep);
1497#define AVUTIL_FRAME_H
1575#define AV_NUM_DATA_POINTERS 8
1636#define AV_FRAME_FLAG_CORRUPT (1 << 0)
1638#define AV_FRAME_FLAG_DISCARD (1 << 2)
1661#define FF_DECODE_ERROR_INVALID_BITSTREAM 1
1662#define FF_DECODE_ERROR_MISSING_REFERENCE 2
1663#define FF_DECODE_ERROR_CONCEALMENT_ACTIVE 4
1664#define FF_DECODE_ERROR_DECODE_SLICES 8
1791#define AVUTIL_HWCONTEXT_H
1905 const void *hwconfig);
1928#define AVCODEC_VERSION_H
1930#define LIBAVCODEC_VERSION_MAJOR 58
1931#define LIBAVCODEC_VERSION_MINOR 54
1932#define LIBAVCODEC_VERSION_MICRO 100
1934#define LIBAVCODEC_VERSION_INT AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \
1935 LIBAVCODEC_VERSION_MINOR, \
1936 LIBAVCODEC_VERSION_MICRO)
1937#define LIBAVCODEC_VERSION AV_VERSION(LIBAVCODEC_VERSION_MAJOR, \
1938 LIBAVCODEC_VERSION_MINOR, \
1939 LIBAVCODEC_VERSION_MICRO)
1940#define LIBAVCODEC_BUILD LIBAVCODEC_VERSION_INT
1942#define LIBAVCODEC_IDENT "Lavc" AV_STRINGIFY(LIBAVCODEC_VERSION)
1944#define FF_API_LOWRES (LIBAVCODEC_VERSION_MAJOR < 59)
1945#define FF_API_DEBUG_MV (LIBAVCODEC_VERSION_MAJOR < 58)
1946#define FF_API_AVCTX_TIMEBASE (LIBAVCODEC_VERSION_MAJOR < 59)
1947#define FF_API_CODED_FRAME (LIBAVCODEC_VERSION_MAJOR < 59)
1948#define FF_API_SIDEDATA_ONLY_PKT (LIBAVCODEC_VERSION_MAJOR < 59)
1949#define FF_API_VDPAU_PROFILE (LIBAVCODEC_VERSION_MAJOR < 59)
1950#define FF_API_CONVERGENCE_DURATION (LIBAVCODEC_VERSION_MAJOR < 59)
1951#define FF_API_AVPICTURE (LIBAVCODEC_VERSION_MAJOR < 59)
1952#define FF_API_AVPACKET_OLD_API (LIBAVCODEC_VERSION_MAJOR < 59)
1953#define FF_API_RTP_CALLBACK (LIBAVCODEC_VERSION_MAJOR < 59)
1954#define FF_API_VBV_DELAY (LIBAVCODEC_VERSION_MAJOR < 59)
1955#define FF_API_CODER_TYPE (LIBAVCODEC_VERSION_MAJOR < 59)
1956#define FF_API_STAT_BITS (LIBAVCODEC_VERSION_MAJOR < 59)
1957#define FF_API_PRIVATE_OPT (LIBAVCODEC_VERSION_MAJOR < 59)
1958#define FF_API_ASS_TIMING (LIBAVCODEC_VERSION_MAJOR < 59)
1959#define FF_API_OLD_BSF (LIBAVCODEC_VERSION_MAJOR < 59)
1960#define FF_API_COPY_CONTEXT (LIBAVCODEC_VERSION_MAJOR < 59)
1961#define FF_API_GET_CONTEXT_DEFAULTS (LIBAVCODEC_VERSION_MAJOR < 59)
1962#define FF_API_NVENC_OLD_NAME (LIBAVCODEC_VERSION_MAJOR < 59)
1963#define FF_API_STRUCT_VAAPI_CONTEXT (LIBAVCODEC_VERSION_MAJOR < 59)
1964#define FF_API_MERGE_SD_API (LIBAVCODEC_VERSION_MAJOR < 59)
1965#define FF_API_TAG_STRING (LIBAVCODEC_VERSION_MAJOR < 59)
1966#define FF_API_GETCHROMA (LIBAVCODEC_VERSION_MAJOR < 59)
1967#define FF_API_CODEC_GET_SET (LIBAVCODEC_VERSION_MAJOR < 59)
1968#define FF_API_USER_VISIBLE_AVHWACCEL (LIBAVCODEC_VERSION_MAJOR < 59)
1969#define FF_API_LOCKMGR (LIBAVCODEC_VERSION_MAJOR < 59)
1970#define FF_API_NEXT (LIBAVCODEC_VERSION_MAJOR < 59)
1971#define FF_API_UNSANITIZED_BITRATES (LIBAVCODEC_VERSION_MAJOR < 59)
2112#define AV_CODEC_ID_IFF_BYTERUN1 AV_CODEC_ID_IFF_ILBM
2150#define AV_CODEC_ID_H265 AV_CODEC_ID_HEVC
2474#define AV_CODEC_PROP_INTRA_ONLY (1 << 0)
2476#define AV_CODEC_PROP_LOSSY (1 << 1)
2478#define AV_CODEC_PROP_LOSSLESS (1 << 2)
2480#define AV_CODEC_PROP_REORDER (1 << 3)
2482#define AV_CODEC_PROP_BITMAP_SUB (1 << 16)
2484#define AV_CODEC_PROP_TEXT_SUB (1 << 17)
2486#define AV_INPUT_BUFFER_PADDING_SIZE 64
2488#define AV_INPUT_BUFFER_MIN_SIZE 16384
2521#define AV_CODEC_FLAG_UNALIGNED (1 << 0)
2523#define AV_CODEC_FLAG_QSCALE (1 << 1)
2525#define AV_CODEC_FLAG_4MV (1 << 2)
2527#define AV_CODEC_FLAG_OUTPUT_CORRUPT (1 << 3)
2529#define AV_CODEC_FLAG_QPEL (1 << 4)
2531#define AV_CODEC_FLAG_DROPCHANGED (1 << 5)
2533#define AV_CODEC_FLAG_PASS1 (1 << 9)
2535#define AV_CODEC_FLAG_PASS2 (1 << 10)
2537#define AV_CODEC_FLAG_LOOP_FILTER (1 << 11)
2539#define AV_CODEC_FLAG_GRAY (1 << 13)
2541#define AV_CODEC_FLAG_PSNR (1 << 15)
2543#define AV_CODEC_FLAG_TRUNCATED (1 << 16)
2545#define AV_CODEC_FLAG_INTERLACED_DCT (1 << 18)
2547#define AV_CODEC_FLAG_LOW_DELAY (1 << 19)
2549#define AV_CODEC_FLAG_GLOBAL_HEADER (1 << 22)
2551#define AV_CODEC_FLAG_BITEXACT (1 << 23)
2553#define AV_CODEC_FLAG_AC_PRED (1 << 24)
2555#define AV_CODEC_FLAG_INTERLACED_ME (1 << 29)
2556#define AV_CODEC_FLAG_CLOSED_GOP (1U << 31)
2558#define AV_CODEC_FLAG2_FAST (1 << 0)
2560#define AV_CODEC_FLAG2_NO_OUTPUT (1 << 2)
2562#define AV_CODEC_FLAG2_LOCAL_HEADER (1 << 3)
2564#define AV_CODEC_FLAG2_DROP_FRAME_TIMECODE (1 << 13)
2566#define AV_CODEC_FLAG2_CHUNKS (1 << 15)
2568#define AV_CODEC_FLAG2_IGNORE_CROP (1 << 16)
2570#define AV_CODEC_FLAG2_SHOW_ALL (1 << 22)
2572#define AV_CODEC_FLAG2_EXPORT_MVS (1 << 28)
2574#define AV_CODEC_FLAG2_SKIP_MANUAL (1 << 29)
2576#define AV_CODEC_FLAG2_RO_FLUSH_NOOP (1 << 30)
2578#define AV_CODEC_CAP_DRAW_HORIZ_BAND (1 << 0)
2580#define AV_CODEC_CAP_DR1 (1 << 1)
2581#define AV_CODEC_CAP_TRUNCATED (1 << 3)
2583#define AV_CODEC_CAP_DELAY (1 << 5)
2585#define AV_CODEC_CAP_SMALL_LAST_FRAME (1 << 6)
2587#define AV_CODEC_CAP_SUBFRAMES (1 << 8)
2589#define AV_CODEC_CAP_EXPERIMENTAL (1 << 9)
2591#define AV_CODEC_CAP_CHANNEL_CONF (1 << 10)
2593#define AV_CODEC_CAP_FRAME_THREADS (1 << 12)
2595#define AV_CODEC_CAP_SLICE_THREADS (1 << 13)
2597#define AV_CODEC_CAP_PARAM_CHANGE (1 << 14)
2599#define AV_CODEC_CAP_AUTO_THREADS (1 << 15)
2601#define AV_CODEC_CAP_VARIABLE_FRAME_SIZE (1 << 16)
2603#define AV_CODEC_CAP_AVOID_PROBING (1 << 17)
2605#define AV_CODEC_CAP_INTRA_ONLY 0x40000000
2607#define AV_CODEC_CAP_LOSSLESS 0x80000000
2609#define AV_CODEC_CAP_HARDWARE (1 << 18)
2611#define AV_CODEC_CAP_HYBRID (1 << 19)
2613#define AV_CODEC_CAP_ENCODER_REORDERED_OPAQUE (1 << 20)
2638#define AV_GET_BUFFER_FLAG_REF (1 << 0)
2699#define AV_PKT_DATA_QUALITY_FACTOR AV_PKT_DATA_QUALITY_STATS
2730#define AV_PKT_FLAG_KEY 0x0001
2731#define AV_PKT_FLAG_CORRUPT 0x0002
2733#define AV_PKT_FLAG_DISCARD 0x0004
2735#define AV_PKT_FLAG_TRUSTED 0x0008
2737#define AV_PKT_FLAG_DISPOSABLE 0x0010
2746struct AVCodecInternal;
2781#define FF_COMPRESSION_DEFAULT -1
2806 int y,
int type,
int height);
2842#define FF_PRED_LEFT 0
2843#define FF_PRED_PLANE 1
2844#define FF_PRED_MEDIAN 2
2859#define FF_CMP_SATD 2
2861#define FF_CMP_PSNR 4
2864#define FF_CMP_ZERO 7
2865#define FF_CMP_VSAD 8
2866#define FF_CMP_VSSE 9
2867#define FF_CMP_NSSE 10
2868#define FF_CMP_W53 11
2869#define FF_CMP_W97 12
2870#define FF_CMP_DCTMAX 13
2871#define FF_CMP_DCT264 14
2872#define FF_CMP_MEDIAN_SAD 15
2873#define FF_CMP_CHROMA 256
2891#define SLICE_FLAG_CODED_ORDER 0x0001
2892#define SLICE_FLAG_ALLOW_FIELD 0x0002
2893#define SLICE_FLAG_ALLOW_PLANE 0x0004
2896#define FF_MB_DECISION_SIMPLE 0
2897#define FF_MB_DECISION_BITS 1
2898#define FF_MB_DECISION_RD 2
3004#define FF_CODER_TYPE_VLC 0
3005#define FF_CODER_TYPE_AC 1
3006#define FF_CODER_TYPE_RAW 2
3007#define FF_CODER_TYPE_RLE 3
3069#define FF_BUG_AUTODETECT 1
3070#define FF_BUG_XVID_ILACE 4
3071#define FF_BUG_UMP4 8
3072#define FF_BUG_NO_PADDING 16
3073#define FF_BUG_AMV 32
3074#define FF_BUG_QPEL_CHROMA 64
3075#define FF_BUG_STD_QPEL 128
3076#define FF_BUG_QPEL_CHROMA2 256
3077#define FF_BUG_DIRECT_BLOCKSIZE 512
3078#define FF_BUG_EDGE 1024
3079#define FF_BUG_HPEL_CHROMA 2048
3080#define FF_BUG_DC_CLIP 4096
3081#define FF_BUG_MS 8192
3082#define FF_BUG_TRUNCATED 16384
3083#define FF_BUG_IEDGE 32768
3086#define FF_COMPLIANCE_VERY_STRICT 2
3087#define FF_COMPLIANCE_STRICT 1
3088#define FF_COMPLIANCE_NORMAL 0
3089#define FF_COMPLIANCE_UNOFFICIAL -1
3090#define FF_COMPLIANCE_EXPERIMENTAL -2
3093#define FF_EC_GUESS_MVS 1
3094#define FF_EC_DEBLOCK 2
3095#define FF_EC_FAVOR_INTER 256
3098#define FF_DEBUG_PICT_INFO 1
3099#define FF_DEBUG_RC 2
3100#define FF_DEBUG_BITSTREAM 4
3101#define FF_DEBUG_MB_TYPE 8
3102#define FF_DEBUG_QP 16
3104#define FF_DEBUG_MV 32
3105#define FF_DEBUG_DCT_COEFF 0x00000040
3106#define FF_DEBUG_SKIP 0x00000080
3107#define FF_DEBUG_STARTCODE 0x00000100
3108#define FF_DEBUG_ER 0x00000400
3109#define FF_DEBUG_MMCO 0x00000800
3110#define FF_DEBUG_BUGS 0x00001000
3111#define FF_DEBUG_VIS_QP 0x00002000
3112#define FF_DEBUG_VIS_MB_TYPE 0x00004000
3113#define FF_DEBUG_BUFFERS 0x00008000
3114#define FF_DEBUG_THREADS 0x00010000
3115#define FF_DEBUG_GREEN_MD 0x00800000
3116#define FF_DEBUG_NOMC 0x01000000
3119#define FF_DEBUG_VIS_MV_P_FOR 0x00000001
3120#define FF_DEBUG_VIS_MV_B_FOR 0x00000002
3121#define FF_DEBUG_VIS_MV_B_BACK 0x00000004
3125#define AV_EF_CRCCHECK (1<<0)
3126#define AV_EF_BITSTREAM (1<<1)
3127#define AV_EF_BUFFER (1<<2)
3128#define AV_EF_EXPLODE (1<<3)
3130#define AV_EF_IGNORE_ERR (1<<15)
3131#define AV_EF_CAREFUL (1<<16)
3132#define AV_EF_COMPLIANT (1<<17)
3133#define AV_EF_AGGRESSIVE (1<<18)
3144#define FF_DCT_AUTO 0
3145#define FF_DCT_FASTINT 1
3148#define FF_DCT_ALTIVEC 5
3149#define FF_DCT_FAAN 6
3152#define FF_IDCT_AUTO 0
3153#define FF_IDCT_INT 1
3154#define FF_IDCT_SIMPLE 2
3155#define FF_IDCT_SIMPLEMMX 3
3156#define FF_IDCT_ARM 7
3157#define FF_IDCT_ALTIVEC 8
3158#define FF_IDCT_SIMPLEARM 10
3159#define FF_IDCT_XVID 14
3160#define FF_IDCT_SIMPLEARMV5TE 16
3161#define FF_IDCT_SIMPLEARMV6 17
3162#define FF_IDCT_FAAN 20
3163#define FF_IDCT_SIMPLENEON 22
3164#define FF_IDCT_NONE 24
3165#define FF_IDCT_SIMPLEAUTO 128
3178#define FF_THREAD_FRAME 1
3179#define FF_THREAD_SLICE 2
3192#define FF_PROFILE_UNKNOWN -99
3193#define FF_PROFILE_RESERVED -100
3195#define FF_PROFILE_AAC_MAIN 0
3196#define FF_PROFILE_AAC_LOW 1
3197#define FF_PROFILE_AAC_SSR 2
3198#define FF_PROFILE_AAC_LTP 3
3199#define FF_PROFILE_AAC_HE 4
3200#define FF_PROFILE_AAC_HE_V2 28
3201#define FF_PROFILE_AAC_LD 22
3202#define FF_PROFILE_AAC_ELD 38
3203#define FF_PROFILE_MPEG2_AAC_LOW 128
3204#define FF_PROFILE_MPEG2_AAC_HE 131
3206#define FF_PROFILE_DNXHD 0
3207#define FF_PROFILE_DNXHR_LB 1
3208#define FF_PROFILE_DNXHR_SQ 2
3209#define FF_PROFILE_DNXHR_HQ 3
3210#define FF_PROFILE_DNXHR_HQX 4
3211#define FF_PROFILE_DNXHR_444 5
3213#define FF_PROFILE_DTS 20
3214#define FF_PROFILE_DTS_ES 30
3215#define FF_PROFILE_DTS_96_24 40
3216#define FF_PROFILE_DTS_HD_HRA 50
3217#define FF_PROFILE_DTS_HD_MA 60
3218#define FF_PROFILE_DTS_EXPRESS 70
3220#define FF_PROFILE_MPEG2_422 0
3221#define FF_PROFILE_MPEG2_HIGH 1
3222#define FF_PROFILE_MPEG2_SS 2
3223#define FF_PROFILE_MPEG2_SNR_SCALABLE 3
3224#define FF_PROFILE_MPEG2_MAIN 4
3225#define FF_PROFILE_MPEG2_SIMPLE 5
3227#define FF_PROFILE_H264_CONSTRAINED (1<<9)
3228#define FF_PROFILE_H264_INTRA (1<<11)
3230#define FF_PROFILE_H264_BASELINE 66
3231#define FF_PROFILE_H264_CONSTRAINED_BASELINE (66|FF_PROFILE_H264_CONSTRAINED)
3232#define FF_PROFILE_H264_MAIN 77
3233#define FF_PROFILE_H264_EXTENDED 88
3234#define FF_PROFILE_H264_HIGH 100
3235#define FF_PROFILE_H264_HIGH_10 110
3236#define FF_PROFILE_H264_HIGH_10_INTRA (110|FF_PROFILE_H264_INTRA)
3237#define FF_PROFILE_H264_MULTIVIEW_HIGH 118
3238#define FF_PROFILE_H264_HIGH_422 122
3239#define FF_PROFILE_H264_HIGH_422_INTRA (122|FF_PROFILE_H264_INTRA)
3240#define FF_PROFILE_H264_STEREO_HIGH 128
3241#define FF_PROFILE_H264_HIGH_444 144
3242#define FF_PROFILE_H264_HIGH_444_PREDICTIVE 244
3243#define FF_PROFILE_H264_HIGH_444_INTRA (244|FF_PROFILE_H264_INTRA)
3244#define FF_PROFILE_H264_CAVLC_444 44
3246#define FF_PROFILE_VC1_SIMPLE 0
3247#define FF_PROFILE_VC1_MAIN 1
3248#define FF_PROFILE_VC1_COMPLEX 2
3249#define FF_PROFILE_VC1_ADVANCED 3
3251#define FF_PROFILE_MPEG4_SIMPLE 0
3252#define FF_PROFILE_MPEG4_SIMPLE_SCALABLE 1
3253#define FF_PROFILE_MPEG4_CORE 2
3254#define FF_PROFILE_MPEG4_MAIN 3
3255#define FF_PROFILE_MPEG4_N_BIT 4
3256#define FF_PROFILE_MPEG4_SCALABLE_TEXTURE 5
3257#define FF_PROFILE_MPEG4_SIMPLE_FACE_ANIMATION 6
3258#define FF_PROFILE_MPEG4_BASIC_ANIMATED_TEXTURE 7
3259#define FF_PROFILE_MPEG4_HYBRID 8
3260#define FF_PROFILE_MPEG4_ADVANCED_REAL_TIME 9
3261#define FF_PROFILE_MPEG4_CORE_SCALABLE 10
3262#define FF_PROFILE_MPEG4_ADVANCED_CODING 11
3263#define FF_PROFILE_MPEG4_ADVANCED_CORE 12
3264#define FF_PROFILE_MPEG4_ADVANCED_SCALABLE_TEXTURE 13
3265#define FF_PROFILE_MPEG4_SIMPLE_STUDIO 14
3266#define FF_PROFILE_MPEG4_ADVANCED_SIMPLE 15
3268#define FF_PROFILE_JPEG2000_CSTREAM_RESTRICTION_0 1
3269#define FF_PROFILE_JPEG2000_CSTREAM_RESTRICTION_1 2
3270#define FF_PROFILE_JPEG2000_CSTREAM_NO_RESTRICTION 32768
3271#define FF_PROFILE_JPEG2000_DCINEMA_2K 3
3272#define FF_PROFILE_JPEG2000_DCINEMA_4K 4
3274#define FF_PROFILE_VP9_0 0
3275#define FF_PROFILE_VP9_1 1
3276#define FF_PROFILE_VP9_2 2
3277#define FF_PROFILE_VP9_3 3
3279#define FF_PROFILE_HEVC_MAIN 1
3280#define FF_PROFILE_HEVC_MAIN_10 2
3281#define FF_PROFILE_HEVC_MAIN_STILL_PICTURE 3
3282#define FF_PROFILE_HEVC_REXT 4
3284#define FF_PROFILE_AV1_MAIN 0
3285#define FF_PROFILE_AV1_HIGH 1
3286#define FF_PROFILE_AV1_PROFESSIONAL 2
3288#define FF_PROFILE_MJPEG_HUFFMAN_BASELINE_DCT 0xc0
3289#define FF_PROFILE_MJPEG_HUFFMAN_EXTENDED_SEQUENTIAL_DCT 0xc1
3290#define FF_PROFILE_MJPEG_HUFFMAN_PROGRESSIVE_DCT 0xc2
3291#define FF_PROFILE_MJPEG_HUFFMAN_LOSSLESS 0xc3
3292#define FF_PROFILE_MJPEG_JPEG_LS 0xf7
3294#define FF_PROFILE_SBC_MSBC 1
3296#define FF_PROFILE_PRORES_PROXY 0
3297#define FF_PROFILE_PRORES_LT 1
3298#define FF_PROFILE_PRORES_STANDARD 2
3299#define FF_PROFILE_PRORES_HQ 3
3300#define FF_PROFILE_PRORES_4444 4
3301#define FF_PROFILE_PRORES_XQ 5
3303#define FF_PROFILE_ARIB_PROFILE_A 0
3304#define FF_PROFILE_ARIB_PROFILE_C 1
3307#define FF_LEVEL_UNKNOWN -99
3342#define FF_SUB_CHARENC_MODE_DO_NOTHING -1
3343#define FF_SUB_CHARENC_MODE_AUTOMATIC 0
3344#define FF_SUB_CHARENC_MODE_PRE_DECODER 1
3345#define FF_SUB_CHARENC_MODE_IGNORE 2
3358#define FF_CODEC_PROPERTY_LOSSLESS 0x00000001
3359#define FF_CODEC_PROPERTY_CLOSED_CAPTIONS 0x00000002
3367#define FF_SUB_TEXT_FMT_ASS 0
3368#define FF_SUB_TEXT_FMT_ASS_WITH_TIMINGS 1
3478 int *got_packet_ptr);
3499struct MpegEncContext;
3527 void (*
decode_mb)(
struct MpegEncContext *s);
3540#define AV_HWACCEL_CODEC_CAP_EXPERIMENTAL 0x0200
3542#define AV_HWACCEL_FLAG_IGNORE_LEVEL (1 << 0)
3544#define AV_HWACCEL_FLAG_ALLOW_HIGH_DEPTH (1 << 1)
3546#define AV_HWACCEL_FLAG_ALLOW_PROFILE_MISMATCH (1 << 2)
3565#define AV_SUBTITLE_FLAG_FORCED 0x00000001
3735 uint8_t *data,
size_t size);
3788 int *got_frame_ptr,
const AVPacket *avpkt);
3792 int *got_picture_ptr,
3837#define AV_PARSER_PTS_NB 4
3844#define PARSER_FLAG_COMPLETE_FRAMES 0x0001
3845#define PARSER_FLAG_ONCE 0x0002
3847#define PARSER_FLAG_FETCHED_OFFSET 0x0004
3848#define PARSER_FLAG_USE_CODEC_TS 0x1000
3894 const uint8_t **poutbuf,
int *poutbuf_size,
3895 const uint8_t *buf,
int buf_size);
3912 uint8_t **poutbuf,
int *poutbuf_size,
3913 const uint8_t *buf,
int buf_size,
3914 int64_t pts, int64_t dts,
3919 uint8_t **poutbuf,
int *poutbuf_size,
3920 const uint8_t *buf,
int buf_size,
int keyframe);
3929 const AVFrame *frame,
int *got_packet_ptr);
3933 const AVFrame *frame,
int *got_packet_ptr);