FFmpegKit iOS / macOS / tvOS API 6.0
Loading...
Searching...
No Matches
Macros | Enumerations | Functions | Variables
fftools_opt_common.c File Reference

Go to the source code of this file.

Macros

#define INDENT   1
 
#define SHOW_VERSION   2
 
#define SHOW_CONFIG   4
 
#define SHOW_COPYRIGHT   8
 
#define PRINT_LIB_INFO(libname, LIBNAME, flags, level)
 
#define PRINT_CODEC_SUPPORTED(codec, field, type, list_name, term, get_name)
 
#define sws_isSupportedInput(x)   0
 
#define sws_isSupportedOutput(x)   0
 

Enumerations

enum  show_muxdemuxers { SHOW_DEFAULT , SHOW_DEMUXERS , SHOW_MUXERS }
 

Functions

void ffmpegkit_log_callback_function (void *ptr, int level, const char *format, va_list vargs)
 
int show_license (void *optctx, const char *opt, const char *arg)
 
static void print_all_libs_info (int flags, int level)
 
static void print_program_info (int flags, int level)
 
static void print_buildconf (int flags, int level)
 
void show_banner (int argc, char **argv, const OptionDef *options)
 
int show_version (void *optctx, const char *opt, const char *arg)
 
int show_buildconf (void *optctx, const char *opt, const char *arg)
 
static void print_codec (const AVCodec *c)
 
static const AVCodec * next_codec_for_id (enum AVCodecID id, void **iter, int encoder)
 
static void show_help_codec (const char *name, int encoder)
 
static void show_help_demuxer (const char *name)
 
static void show_help_protocol (const char *name)
 
static void show_help_muxer (const char *name)
 
static void show_help_bsf (const char *name)
 
int show_help (void *optctx, const char *opt, const char *arg)
 
static void print_codecs_for_id (enum AVCodecID id, int encoder)
 
static int compare_codec_desc (const void *a, const void *b)
 
static unsigned get_codecs_sorted (const AVCodecDescriptor ***rcodecs)
 
static char get_media_type_char (enum AVMediaType type)
 
int show_codecs (void *optctx, const char *opt, const char *arg)
 
static void print_codecs (int encoder)
 
int show_decoders (void *optctx, const char *opt, const char *arg)
 
int show_encoders (void *optctx, const char *opt, const char *arg)
 
int show_bsfs (void *optctx, const char *opt, const char *arg)
 
int show_filters (void *optctx, const char *opt, const char *arg)
 
static int is_device (const AVClass *avclass)
 
static int show_formats_devices (void *optctx, const char *opt, const char *arg, int device_only, int muxdemuxers)
 
int show_formats (void *optctx, const char *opt, const char *arg)
 
int show_muxers (void *optctx, const char *opt, const char *arg)
 
int show_demuxers (void *optctx, const char *opt, const char *arg)
 
int show_devices (void *optctx, const char *opt, const char *arg)
 
int show_protocols (void *optctx, const char *opt, const char *arg)
 
int show_colors (void *optctx, const char *opt, const char *arg)
 
int show_pix_fmts (void *optctx, const char *opt, const char *arg)
 
int show_layouts (void *optctx, const char *opt, const char *arg)
 
int show_sample_fmts (void *optctx, const char *opt, const char *arg)
 
int show_dispositions (void *optctx, const char *opt, const char *arg)
 
int opt_cpuflags (void *optctx, const char *opt, const char *arg)
 
int opt_cpucount (void *optctx, const char *opt, const char *arg)
 
static void expand_filename_template (AVBPrint *bp, const char *template, struct tm *tm)
 
static void log_callback_report (void *ptr, int level, const char *fmt, va_list vl)
 
int init_report (const char *env, FILE **file)
 
int opt_report (void *optctx, const char *opt, const char *arg)
 
int opt_max_alloc (void *optctx, const char *opt, const char *arg)
 
int opt_loglevel (void *optctx, const char *opt, const char *arg)
 

Variables

static __thread FILE * report_file = NULL
 
static __thread int report_file_level = AV_LOG_DEBUG
 
void(* report_callback )(int, float, float, int64_t, double, double, double)
 
__thread char * program_name
 
__thread int warned_cfg = 0
 

Macro Definition Documentation

◆ INDENT

#define INDENT   1

Definition at line 177 of file fftools_opt_common.c.

◆ PRINT_CODEC_SUPPORTED

#define PRINT_CODEC_SUPPORTED (   codec,
  field,
  type,
  list_name,
  term,
  get_name 
)
Value:
if (codec->field) { \
const type *p = codec->field; \
\
av_log(NULL, AV_LOG_ERROR, " Supported " list_name ":"); \
while (*p != term) { \
get_name(*p); \
av_log(NULL, AV_LOG_ERROR, " %s", name); \
p++; \
} \
av_log(NULL, AV_LOG_ERROR, "\n"); \
} \

Definition at line 288 of file fftools_opt_common.c.

◆ PRINT_LIB_INFO

#define PRINT_LIB_INFO (   libname,
  LIBNAME,
  flags,
  level 
)
Value:
if (CONFIG_##LIBNAME) { \
const char *indent = flags & INDENT? " " : ""; \
if (flags & SHOW_VERSION) { \
unsigned int version = libname##_version(); \
av_log(NULL, level, \
"%slib%-11s %2d.%3d.%3d / %2d.%3d.%3d\n", \
indent, #libname, \
LIB##LIBNAME##_VERSION_MAJOR, \
LIB##LIBNAME##_VERSION_MINOR, \
LIB##LIBNAME##_VERSION_MICRO, \
AV_VERSION_MAJOR(version), AV_VERSION_MINOR(version),\
AV_VERSION_MICRO(version)); \
} \
if (flags & SHOW_CONFIG) { \
const char *cfg = libname##_configuration(); \
if (strcmp(FFMPEG_CONFIGURATION, cfg)) { \
if (!warned_cfg) { \
av_log(NULL, level, \
"%sWARNING: library configuration mismatch\n", \
indent); \
warned_cfg = 1; \
} \
av_log(NULL, level, "%s%-11s configuration: %s\n", \
indent, #libname, cfg); \
} \
} \
} \
#define SHOW_CONFIG
#define SHOW_VERSION
#define INDENT
__thread int warned_cfg

Definition at line 182 of file fftools_opt_common.c.

◆ SHOW_CONFIG

#define SHOW_CONFIG   4

Definition at line 179 of file fftools_opt_common.c.

◆ SHOW_COPYRIGHT

#define SHOW_COPYRIGHT   8

Definition at line 180 of file fftools_opt_common.c.

◆ SHOW_VERSION

#define SHOW_VERSION   2

Definition at line 178 of file fftools_opt_common.c.

◆ sws_isSupportedInput

#define sws_isSupportedInput (   x)    0

◆ sws_isSupportedOutput

#define sws_isSupportedOutput (   x)    0

Enumeration Type Documentation

◆ show_muxdemuxers

Enumerator
SHOW_DEFAULT 
SHOW_DEMUXERS 
SHOW_MUXERS 

Definition at line 88 of file fftools_opt_common.c.

Function Documentation

◆ compare_codec_desc()

static int compare_codec_desc ( const void *  a,
const void *  b 
)
static

Definition at line 655 of file fftools_opt_common.c.

◆ expand_filename_template()

static void expand_filename_template ( AVBPrint *  bp,
const char *  template,
struct tm *  tm 
)
static

Definition at line 1114 of file fftools_opt_common.c.

◆ ffmpegkit_log_callback_function()

void ffmpegkit_log_callback_function ( void *  ptr,
int  level,
const char *  format,
va_list  vargs 
)

Callback function for FFmpeg/FFprobe logs.

Parameters
ptrpointer to AVClass struct
levellog level
formatformat string
vargsarguments

Definition at line 435 of file FFmpegKitConfig.m.

◆ get_codecs_sorted()

static unsigned get_codecs_sorted ( const AVCodecDescriptor ***  rcodecs)
static

Definition at line 664 of file fftools_opt_common.c.

◆ get_media_type_char()

static char get_media_type_char ( enum AVMediaType  type)
static

Definition at line 685 of file fftools_opt_common.c.

◆ init_report()

int init_report ( const char *  env,
FILE **  file 
)

Definition at line 1162 of file fftools_opt_common.c.

◆ is_device()

static int is_device ( const AVClass *  avclass)
static

Definition at line 867 of file fftools_opt_common.c.

◆ log_callback_report()

static void log_callback_report ( void *  ptr,
int  level,
const char *  fmt,
va_list  vl 
)
static

Definition at line 1142 of file fftools_opt_common.c.

◆ next_codec_for_id()

static const AVCodec * next_codec_for_id ( enum AVCodecID  id,
void **  iter,
int  encoder 
)
static

Definition at line 405 of file fftools_opt_common.c.

◆ opt_cpucount()

int opt_cpucount ( void *  optctx,
const char *  opt,
const char *  arg 
)

Override the cpucount.

Definition at line 1088 of file fftools_opt_common.c.

◆ opt_cpuflags()

int opt_cpuflags ( void *  optctx,
const char *  opt,
const char *  arg 
)

Override the cpuflags.

Definition at line 1076 of file fftools_opt_common.c.

◆ opt_loglevel()

int opt_loglevel ( void *  optctx,
const char *  opt,
const char *  arg 
)

Set the libav* libraries log level.

Definition at line 1263 of file fftools_opt_common.c.

◆ opt_max_alloc()

int opt_max_alloc ( void *  optctx,
const char *  opt,
const char *  arg 
)

Definition at line 1249 of file fftools_opt_common.c.

◆ opt_report()

int opt_report ( void *  optctx,
const char *  opt,
const char *  arg 
)

Definition at line 1244 of file fftools_opt_common.c.

◆ print_all_libs_info()

static void print_all_libs_info ( int  flags,
int  level 
)
static

Definition at line 211 of file fftools_opt_common.c.

◆ print_buildconf()

static void print_buildconf ( int  flags,
int  level 
)
static

Definition at line 236 of file fftools_opt_common.c.

◆ print_codec()

static void print_codec ( const AVCodec *  c)
static

Definition at line 301 of file fftools_opt_common.c.

◆ print_codecs()

static void print_codecs ( int  encoder)
static

Definition at line 755 of file fftools_opt_common.c.

◆ print_codecs_for_id()

static void print_codecs_for_id ( enum AVCodecID  id,
int  encoder 
)
static

Definition at line 642 of file fftools_opt_common.c.

◆ print_program_info()

static void print_program_info ( int  flags,
int  level 
)
static

Definition at line 222 of file fftools_opt_common.c.

◆ show_banner()

void show_banner ( int  argc,
char **  argv,
const OptionDef options 
)

Print the program banner to stderr. The banner contents depend on the current version of the repository and of the libav* libraries used by the program.

Definition at line 262 of file fftools_opt_common.c.

◆ show_bsfs()

int show_bsfs ( void *  optctx,
const char *  opt,
const char *  arg 
)

Print a listing containing all the bit stream filters supported by the program. This option processing function does not utilize the arguments.

Definition at line 806 of file fftools_opt_common.c.

◆ show_buildconf()

int show_buildconf ( void *  optctx,
const char *  opt,
const char *  arg 
)

Print the build configuration of the program to stdout. The contents depend on the definition of FFMPEG_CONFIGURATION. This option processing function does not utilize the arguments.

Definition at line 281 of file fftools_opt_common.c.

◆ show_codecs()

int show_codecs ( void *  optctx,
const char *  opt,
const char *  arg 
)

Print a listing containing all the codecs supported by the program. This option processing function does not utilize the arguments.

Definition at line 697 of file fftools_opt_common.c.

◆ show_colors()

int show_colors ( void *  optctx,
const char *  opt,
const char *  arg 
)

Print a listing containing all the color names and values recognized by the program.

Definition at line 972 of file fftools_opt_common.c.

◆ show_decoders()

int show_decoders ( void *  optctx,
const char *  opt,
const char *  arg 
)

Print a listing containing all the decoders supported by the program.

Definition at line 794 of file fftools_opt_common.c.

◆ show_demuxers()

int show_demuxers ( void *  optctx,
const char *  opt,
const char *  arg 
)

Print a listing containing all the demuxer supported by the program (including devices). This option processing function does not utilize the arguments.

Definition at line 947 of file fftools_opt_common.c.

◆ show_devices()

int show_devices ( void *  optctx,
const char *  opt,
const char *  arg 
)

Print a listing containing all the devices supported by the program. This option processing function does not utilize the arguments.

Definition at line 952 of file fftools_opt_common.c.

◆ show_dispositions()

int show_dispositions ( void *  optctx,
const char *  opt,
const char *  arg 
)

Print a listing containing all supported stream dispositions.

Definition at line 1066 of file fftools_opt_common.c.

◆ show_encoders()

int show_encoders ( void *  optctx,
const char *  opt,
const char *  arg 
)

Print a listing containing all the encoders supported by the program.

Definition at line 800 of file fftools_opt_common.c.

◆ show_filters()

int show_filters ( void *  optctx,
const char *  opt,
const char *  arg 
)

Print a listing containing all the filters supported by the program. This option processing function does not utilize the arguments.

Definition at line 818 of file fftools_opt_common.c.

◆ show_formats()

int show_formats ( void *  optctx,
const char *  opt,
const char *  arg 
)

Print a listing containing all the formats supported by the program (including devices). This option processing function does not utilize the arguments.

Definition at line 937 of file fftools_opt_common.c.

◆ show_formats_devices()

static int show_formats_devices ( void *  optctx,
const char *  opt,
const char *  arg,
int  device_only,
int  muxdemuxers 
)
static

Definition at line 874 of file fftools_opt_common.c.

◆ show_help()

int show_help ( void *  optctx,
const char *  opt,
const char *  arg 
)

Generic -h handler common to all fftools.

Definition at line 597 of file fftools_opt_common.c.

◆ show_help_bsf()

static void show_help_bsf ( const char *  name)
static

Definition at line 578 of file fftools_opt_common.c.

◆ show_help_codec()

static void show_help_codec ( const char *  name,
int  encoder 
)
static

Definition at line 417 of file fftools_opt_common.c.

◆ show_help_demuxer()

static void show_help_demuxer ( const char *  name)
static

Definition at line 453 of file fftools_opt_common.c.

◆ show_help_muxer()

static void show_help_muxer ( const char *  name)
static

Definition at line 489 of file fftools_opt_common.c.

◆ show_help_protocol()

static void show_help_protocol ( const char *  name)
static

Definition at line 471 of file fftools_opt_common.c.

◆ show_layouts()

int show_layouts ( void *  optctx,
const char *  opt,
const char *  arg 
)

Print a listing containing all the standard channel layouts supported by the program. This option processing function does not utilize the arguments.

Definition at line 1024 of file fftools_opt_common.c.

◆ show_license()

int show_license ( void *  optctx,
const char *  opt,
const char *  arg 
)

Print the license of the program to stdout. The license depends on the license of the libraries compiled into the program. This option processing function does not utilize the arguments.

Definition at line 101 of file fftools_opt_common.c.

◆ show_muxers()

int show_muxers ( void *  optctx,
const char *  opt,
const char *  arg 
)

Print a listing containing all the muxers supported by the program (including devices). This option processing function does not utilize the arguments.

Definition at line 942 of file fftools_opt_common.c.

◆ show_pix_fmts()

int show_pix_fmts ( void *  optctx,
const char *  opt,
const char *  arg 
)

Print a listing containing all the pixel formats supported by the program. This option processing function does not utilize the arguments.

Definition at line 986 of file fftools_opt_common.c.

◆ show_protocols()

int show_protocols ( void *  optctx,
const char *  opt,
const char *  arg 
)

Print a listing containing all the protocols supported by the program. This option processing function does not utilize the arguments.

Definition at line 957 of file fftools_opt_common.c.

◆ show_sample_fmts()

int show_sample_fmts ( void *  optctx,
const char *  opt,
const char *  arg 
)

Print a listing containing all the sample formats supported by the program.

Definition at line 1057 of file fftools_opt_common.c.

◆ show_version()

int show_version ( void *  optctx,
const char *  opt,
const char *  arg 
)

Print the version of the program to stdout. The version message depends on the current versions of the repository and of the libav* libraries. This option processing function does not utilize the arguments.

Definition at line 273 of file fftools_opt_common.c.

Variable Documentation

◆ program_name

__thread char* program_name
extern

program name, defined by the program for show_version().

Definition at line 105 of file fftools_cmdutils.c.

◆ report_callback

void(* report_callback) (int, float, float, int64_t, double, double, double) ( int  ,
float  ,
float  ,
int64_t  ,
double  ,
double  ,
double   
)
extern

Definition at line 221 of file fftools_ffmpeg.c.

◆ report_file

__thread FILE* report_file = NULL
static

Definition at line 94 of file fftools_opt_common.c.

◆ report_file_level

__thread int report_file_level = AV_LOG_DEBUG
static

Definition at line 95 of file fftools_opt_common.c.

◆ warned_cfg

__thread int warned_cfg = 0

Definition at line 175 of file fftools_opt_common.c.