FFmpegKit iOS / macOS / tvOS API 5.1
|
Go to the source code of this file.
Data Structures | |
struct | SpecifierOpt |
struct | OptionDef |
struct | Option |
struct | OptionGroupDef |
struct | OptionGroup |
struct | OptionGroupList |
struct | OptionParseContext |
Macros | |
#define | AV_LOG_STDERR -16 |
#define | HAS_ARG 0x0001 |
#define | OPT_BOOL 0x0002 |
#define | OPT_EXPERT 0x0004 |
#define | OPT_STRING 0x0008 |
#define | OPT_VIDEO 0x0010 |
#define | OPT_AUDIO 0x0020 |
#define | OPT_INT 0x0080 |
#define | OPT_FLOAT 0x0100 |
#define | OPT_SUBTITLE 0x0200 |
#define | OPT_INT64 0x0400 |
#define | OPT_EXIT 0x0800 |
#define | OPT_DATA 0x1000 |
#define | OPT_PERFILE |
#define | OPT_OFFSET 0x4000 /* option is specified as an offset in a passed optctx */ |
#define | OPT_SPEC |
#define | OPT_TIME 0x10000 |
#define | OPT_DOUBLE 0x20000 |
#define | OPT_INPUT 0x40000 |
#define | OPT_OUTPUT 0x80000 |
#define | GROW_ARRAY(array, nb_elems) array = grow_array(array, sizeof(*array), &nb_elems, nb_elems + 1) |
#define | ALLOC_ARRAY_ELEM(array, nb_elems) allocate_array_elem(&array, sizeof(*array[0]), &nb_elems) |
#define | GET_PIX_FMT_NAME(pix_fmt) const char *name = av_get_pix_fmt_name(pix_fmt); |
#define | GET_CODEC_NAME(id) const char *name = avcodec_descriptor_get(id)->name; |
#define | GET_SAMPLE_FMT_NAME(sample_fmt) const char *name = av_get_sample_fmt_name(sample_fmt) |
#define | GET_SAMPLE_RATE_NAME(rate) |
Typedefs | |
typedef struct SpecifierOpt | SpecifierOpt |
typedef struct OptionDef | OptionDef |
typedef struct Option | Option |
typedef struct OptionGroupDef | OptionGroupDef |
typedef struct OptionGroup | OptionGroup |
typedef struct OptionGroupList | OptionGroupList |
typedef struct OptionParseContext | OptionParseContext |
Functions | |
void | register_exit (void(*cb)(int ret)) |
void | exit_program (int ret) av_noreturn |
void | init_dynload (void) |
void | uninit_opts (void) |
void | log_callback_help (void *ptr, int level, const char *fmt, va_list vl) |
int | opt_default (void *optctx, const char *opt, const char *arg) |
int | opt_timelimit (void *optctx, const char *opt, const char *arg) |
double | parse_number_or_die (const char *context, const char *numstr, int type, double min, double max) |
int64_t | parse_time_or_die (const char *context, const char *timestr, int is_duration) |
void | show_help_options (const OptionDef *options, const char *msg, int req_flags, int rej_flags, int alt_flags) |
void | show_help_children (const AVClass *clazz, int flags) |
void | show_help_default_ffmpeg (const char *opt, const char *arg) |
void | show_help_default_ffprobe (const char *opt, const char *arg) |
int | show_help (void *optctx, const char *opt, const char *arg) |
void | parse_options (void *optctx, int argc, char **argv, const OptionDef *options, void(*parse_arg_function)(void *optctx, const char *)) |
int | parse_option (void *optctx, const char *opt, const char *arg, const OptionDef *options) |
int | parse_optgroup (void *optctx, OptionGroup *g) |
int | split_commandline (OptionParseContext *octx, int argc, char *argv[], const OptionDef *options, const OptionGroupDef *groups, int nb_groups) |
void | uninit_parse_context (OptionParseContext *octx) |
void | parse_loglevel (int argc, char **argv, const OptionDef *options) |
int | locate_option (int argc, char **argv, const OptionDef *options, const char *optname) |
int | check_stream_specifier (AVFormatContext *s, AVStream *st, const char *spec) |
AVDictionary * | filter_codec_opts (AVDictionary *opts, enum AVCodecID codec_id, AVFormatContext *s, AVStream *st, const AVCodec *codec) |
AVDictionary ** | setup_find_stream_info_opts (AVFormatContext *s, AVDictionary *codec_opts) |
void | print_error (const char *filename, int err) |
void | show_banner (int argc, char **argv, const OptionDef *options) |
int | read_yesno (void) |
FILE * | get_preset_file (char *filename, size_t filename_size, const char *preset_name, int is_path, const char *codec_name) |
void * | grow_array (void *array, int elem_size, int *size, int new_size) |
void * | allocate_array_elem (void *array, size_t elem_size, int *nb_elems) |
double | get_rotation (int32_t *displaymatrix) |
Variables | |
__thread char * | program_name |
__thread int | program_birth_year |
__thread AVDictionary * | sws_dict |
__thread AVDictionary * | swr_opts |
__thread AVDictionary * | format_opts |
__thread AVDictionary * | codec_opts |
__thread int | hide_banner |
__thread int | find_stream_info |
#define ALLOC_ARRAY_ELEM | ( | array, | |
nb_elems | |||
) | allocate_array_elem(&array, sizeof(*array[0]), &nb_elems) |
Definition at line 482 of file fftools_cmdutils.h.
#define AV_LOG_STDERR -16 |
Defines logs printed to stderr by ffmpeg. They are not filtered and always redirected.
Definition at line 75 of file fftools_cmdutils.h.
#define GET_CODEC_NAME | ( | id | ) | const char *name = avcodec_descriptor_get(id)->name; |
Definition at line 488 of file fftools_cmdutils.h.
#define GET_PIX_FMT_NAME | ( | pix_fmt | ) | const char *name = av_get_pix_fmt_name(pix_fmt); |
Definition at line 485 of file fftools_cmdutils.h.
#define GET_SAMPLE_FMT_NAME | ( | sample_fmt | ) | const char *name = av_get_sample_fmt_name(sample_fmt) |
Definition at line 491 of file fftools_cmdutils.h.
#define GET_SAMPLE_RATE_NAME | ( | rate | ) |
Definition at line 494 of file fftools_cmdutils.h.
#define GROW_ARRAY | ( | array, | |
nb_elems | |||
) | array = grow_array(array, sizeof(*array), &nb_elems, nb_elems + 1) |
Definition at line 479 of file fftools_cmdutils.h.
#define HAS_ARG 0x0001 |
Definition at line 179 of file fftools_cmdutils.h.
#define OPT_AUDIO 0x0020 |
Definition at line 184 of file fftools_cmdutils.h.
#define OPT_BOOL 0x0002 |
Definition at line 180 of file fftools_cmdutils.h.
#define OPT_DATA 0x1000 |
Definition at line 190 of file fftools_cmdutils.h.
#define OPT_DOUBLE 0x20000 |
Definition at line 195 of file fftools_cmdutils.h.
#define OPT_EXIT 0x0800 |
Definition at line 189 of file fftools_cmdutils.h.
#define OPT_EXPERT 0x0004 |
Definition at line 181 of file fftools_cmdutils.h.
#define OPT_FLOAT 0x0100 |
Definition at line 186 of file fftools_cmdutils.h.
#define OPT_INPUT 0x40000 |
Definition at line 196 of file fftools_cmdutils.h.
#define OPT_INT 0x0080 |
Definition at line 185 of file fftools_cmdutils.h.
#define OPT_INT64 0x0400 |
Definition at line 188 of file fftools_cmdutils.h.
#define OPT_OFFSET 0x4000 /* option is specified as an offset in a passed optctx */ |
Definition at line 192 of file fftools_cmdutils.h.
#define OPT_OUTPUT 0x80000 |
Definition at line 197 of file fftools_cmdutils.h.
#define OPT_PERFILE |
Definition at line 191 of file fftools_cmdutils.h.
#define OPT_SPEC |
Definition at line 193 of file fftools_cmdutils.h.
#define OPT_STRING 0x0008 |
Definition at line 182 of file fftools_cmdutils.h.
#define OPT_SUBTITLE 0x0200 |
Definition at line 187 of file fftools_cmdutils.h.
#define OPT_TIME 0x10000 |
Definition at line 194 of file fftools_cmdutils.h.
#define OPT_VIDEO 0x0010 |
Definition at line 183 of file fftools_cmdutils.h.
An option extracted from the commandline. Cannot use AVDictionary because of options like -map which can be used multiple times.
typedef struct OptionGroup OptionGroup |
typedef struct OptionGroupDef OptionGroupDef |
typedef struct OptionGroupList OptionGroupList |
A list of option groups that all have the same group type (e.g. input files or output files)
typedef struct OptionParseContext OptionParseContext |
typedef struct SpecifierOpt SpecifierOpt |
void * allocate_array_elem | ( | void * | array, |
size_t | elem_size, | ||
int * | nb_elems | ||
) |
Atomically add a new element to an array of pointers, i.e. allocate a new entry, reallocate the array of pointers and make the new last member of this array point to the newly allocated buffer. Calls exit() on failure.
array | array of pointers to reallocate |
elem_size | size of the new element to allocate |
nb_elems | pointer to the number of elements of the array array; *nb_elems will be incremented by one by this function. |
Definition at line 1042 of file fftools_cmdutils.c.
int check_stream_specifier | ( | AVFormatContext * | s, |
AVStream * | st, | ||
const char * | spec | ||
) |
Check if the given stream matches a stream specifier.
s | Corresponding format context. |
st | Stream from s to be checked. |
spec | A stream specifier of the [v|a|s|d]:[<stream index>] form. |
Definition at line 937 of file fftools_cmdutils.c.
void exit_program | ( | int | ret | ) |
Wraps exit with a program-specific cleanup routine.
Definition at line 132 of file fftools_cmdutils.c.
AVDictionary * filter_codec_opts | ( | AVDictionary * | opts, |
enum AVCodecID | codec_id, | ||
AVFormatContext * | s, | ||
AVStream * | st, | ||
const AVCodec * | codec | ||
) |
Filter out options for given codec.
Create a new options dictionary containing only the options from opts which apply to the codec with ID codec_id.
opts | dictionary to place options in |
codec_id | ID of the codec that should be filtered for |
s | Corresponding format context. |
st | A stream from s for which the options should be filtered. |
codec | The particular codec for which the options should be filtered. If null, the default one is looked up according to the codec id. |
Definition at line 945 of file fftools_cmdutils.c.
FILE * get_preset_file | ( | char * | filename, |
size_t | filename_size, | ||
const char * | preset_name, | ||
int | is_path, | ||
const char * | codec_name | ||
) |
Get a file corresponding to a preset file.
If is_path is non-zero, look for the file in the path preset_name. Otherwise search for a file named arg.ffpreset in the directories $FFMPEG_DATADIR (if set), $HOME/.ffmpeg, and in the datadir defined at configuration time or in a "ffpresets" folder along the executable on win32, in that order. If no such file is found and codec_name is defined, then search for a file named codec_name-preset_name.avpreset in the above-mentioned directories.
filename | buffer where the name of the found filename is written |
filename_size | size in bytes of the filename buffer |
preset_name | name of the preset to search |
is_path | tell if preset_name is a filename path |
codec_name | name of the codec for which to look for the preset, may be NULL |
Definition at line 865 of file fftools_cmdutils.c.
double get_rotation | ( | int32_t * | displaymatrix | ) |
Definition at line 1054 of file fftools_cmdutils.c.
Realloc array to hold new_size elements of elem_size. Calls exit() on failure.
array | array to reallocate |
elem_size | size in bytes of each element |
size | new element count will be written here |
new_size | number of elements to place in reallocated array |
Definition at line 1023 of file fftools_cmdutils.c.
void init_dynload | ( | void | ) |
Initialize dynamic library loading
Definition at line 116 of file fftools_cmdutils.c.
Return index of option opt in argv or 0 if not found.
Definition at line 455 of file fftools_cmdutils.c.
void log_callback_help | ( | void * | ptr, |
int | level, | ||
const char * | fmt, | ||
va_list | vl | ||
) |
Trivial log callback. Only suitable for opt_help and similar since it lacks prefix handling.
int opt_default | ( | void * | optctx, |
const char * | opt, | ||
const char * | arg | ||
) |
Fallback for options that are not explicitly handled, these will be parsed through AVOptions.
Definition at line 556 of file fftools_cmdutils.c.
int opt_timelimit | ( | void * | optctx, |
const char * | opt, | ||
const char * | arg | ||
) |
Limit the execution time.
Definition at line 3662 of file fftools_ffmpeg_opt.c.
Find the '-loglevel' option in the command line args and apply it.
Definition at line 514 of file fftools_cmdutils.c.
double parse_number_or_die | ( | const char * | context, |
const char * | numstr, | ||
int | type, | ||
double | min, | ||
double | max | ||
) |
Parse a string and return its corresponding value as a double. Exit from the application if the string cannot be correctly parsed or the corresponding value is invalid.
context | the context of the value to be set (e.g. the corresponding command line option name) |
numstr | the string to be parsed |
type | the type (OPT_INT64 or OPT_FLOAT) as which the string should be parsed |
min | the minimum valid accepted value |
max | the maximum valid accepted value |
Definition at line 143 of file fftools_cmdutils.c.
int parse_optgroup | ( | void * | optctx, |
OptionGroup * | g | ||
) |
Parse an options group and write results into optctx.
optctx | an app-specific options context. NULL for global options group |
g | option group |
Definition at line 422 of file fftools_cmdutils.c.
Parse one given option.
Definition at line 348 of file fftools_cmdutils.c.
void parse_options | ( | void * | optctx, |
int | argc, | ||
char ** | argv, | ||
const OptionDef * | options, | ||
void(*)(void *optctx, const char *) | parse_arg_function | ||
) |
Parse the command line arguments.
optctx | an opaque options context |
argc | number of command line arguments |
argv | values of command line arguments |
options | Array with the definitions required to interpret every option of the form: -option_name [argument] |
parse_arg_function | Name of the function called to process every argument without a leading option name flag. NULL if such arguments do not have to be processed. |
int64_t parse_time_or_die | ( | const char * | context, |
const char * | timestr, | ||
int | is_duration | ||
) |
Parse a string specifying a time and return its corresponding value as a number of microseconds. Exit from the application if the string cannot be correctly parsed.
context | the context of the value to be set (e.g. the corresponding command line option name) |
timestr | the string to be parsed |
is_duration | a flag which tells how to interpret timestr, if not zero timestr is interpreted as a duration, otherwise as a date |
Definition at line 164 of file fftools_cmdutils.c.
void print_error | ( | const char * | filename, |
int | err | ||
) |
Print an error message to stderr, indicating filename and a human readable description of the error code err.
If strerror_r() is not available the use of this function in a multithreaded application may be unsafe.
Definition at line 844 of file fftools_cmdutils.c.
int read_yesno | ( | void | ) |
Return a positive value if a line read from standard input starts with [yY], otherwise return 0.
Definition at line 854 of file fftools_cmdutils.c.
void register_exit | ( | void(*)(int ret) | cb | ) |
Register a program-specific cleanup routine.
Definition at line 127 of file fftools_cmdutils.c.
AVDictionary ** setup_find_stream_info_opts | ( | AVFormatContext * | s, |
AVDictionary * | codec_opts | ||
) |
Setup AVCodecContext options for avformat_find_stream_info().
Create an array of dictionaries, one dictionary for each stream contained in s. Each dictionary will contain the options from codec_opts which can be applied to the corresponding stream codec context.
Definition at line 1003 of file fftools_cmdutils.c.
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 255 of file fftools_opt_common.c.
int show_help | ( | void * | optctx, |
const char * | opt, | ||
const char * | arg | ||
) |
Generic -h handler common to all fftools.
Definition at line 590 of file fftools_opt_common.c.
void show_help_children | ( | const AVClass * | clazz, |
int | flags | ||
) |
Show help for all options with given flags in class and all its children.
Definition at line 205 of file fftools_cmdutils.c.
void show_help_default_ffmpeg | ( | const char * | opt, |
const char * | arg | ||
) |
Per-fftool specific help handler. Implemented in each fftool, called by show_help().
Definition at line 3461 of file fftools_ffmpeg_opt.c.
void show_help_default_ffprobe | ( | const char * | opt, |
const char * | arg | ||
) |
Definition at line 3755 of file fftools_ffprobe.c.
void show_help_options | ( | const OptionDef * | options, |
const char * | msg, | ||
int | req_flags, | ||
int | rej_flags, | ||
int | alt_flags | ||
) |
Print help for all options matching specified flags.
options | a list of options |
msg | title of this group. Only printed if at least one option matches. |
req_flags | print only options which have all those flags set. |
rej_flags | don't print options which have any of those flags set. |
alt_flags | print only options that have at least one of those flags set |
Definition at line 176 of file fftools_cmdutils.c.
int split_commandline | ( | OptionParseContext * | octx, |
int | argc, | ||
char * | argv[], | ||
const OptionDef * | options, | ||
const OptionGroupDef * | groups, | ||
int | nb_groups | ||
) |
Split the commandline into an intermediate form convenient for further processing.
The commandline is assumed to be composed of options which either belong to a group (those with OPT_SPEC, OPT_OFFSET or OPT_PERFILE) or are global (everything else).
A group (defined by an OptionGroupDef struct) is a sequence of options terminated by either a group separator option (e.g. -i) or a parameter that is not an option (doesn't start with -). A group without a separator option must always be first in the supplied groups list.
All options within the same group are stored in one OptionGroup struct in an OptionGroupList, all groups with the same group definition are stored in one OptionGroupList in OptionParseContext.groups. The order of group lists is the same as the order of group definitions.
Definition at line 733 of file fftools_cmdutils.c.
void uninit_opts | ( | void | ) |
Uninitialize the cmdutils option system, in particular free the *_opts contexts and their contents.
Definition at line 108 of file fftools_cmdutils.c.
void uninit_parse_context | ( | OptionParseContext * | octx | ) |
Free all allocated memory in an OptionParseContext.
Definition at line 708 of file fftools_cmdutils.c.
__thread AVDictionary * codec_opts |
Definition at line 89 of file fftools_cmdutils.h.
|
extern |
Definition at line 222 of file fftools_ffmpeg_opt.c.
|
extern |
Definition at line 103 of file fftools_cmdutils.c.
|
extern |
Definition at line 105 of file fftools_cmdutils.c.
|
extern |
program birth year, defined by the program for show_banner()
Definition at line 99 of file fftools_cmdutils.c.
|
extern |
program name, defined by the program for show_version().
Definition at line 98 of file fftools_cmdutils.c.
|
extern |
Definition at line 102 of file fftools_cmdutils.c.
|
extern |
Definition at line 101 of file fftools_cmdutils.c.