cmdutils.c File Reference
#include <string.h>
#include <stdlib.h>
#include <errno.h>
#include <math.h>
#include "config.h"
#include "libavformat/avformat.h"
#include "libavfilter/avfilter.h"
#include "libavdevice/avdevice.h"
#include "libavresample/avresample.h"
#include "libswscale/swscale.h"
#include "libavutil/avassert.h"
#include "libavutil/avstring.h"
#include "libavutil/mathematics.h"
#include "libavutil/imgutils.h"
#include "libavutil/parseutils.h"
#include "libavutil/pixdesc.h"
#include "libavutil/eval.h"
#include "libavutil/dict.h"
#include "libavutil/opt.h"
#include "cmdutils.h"
#include "version.h"

Go to the source code of this file.

Macros

#define FLAGS   (o->type == AV_OPT_TYPE_FLAGS) ? AV_DICT_APPEND : 0
 
#define GET_ARG(arg)
 
#define INDENT   1
 
#define SHOW_VERSION   2
 
#define SHOW_CONFIG   4
 
#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
 

Functions

void init_opts (void)
 Initialize the cmdutils option system, in particular allocate the *_opts contexts. More...
 
void uninit_opts (void)
 Uninitialize the cmdutils option system, in particular free the *_opts contexts and their contents. More...
 
void log_callback_help (void *ptr, int level, const char *fmt, va_list vl)
 Trivial log callback. More...
 
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. More...
 
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. More...
 
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. More...
 
void show_help_children (const AVClass *class, int flags)
 Show help for all options with given flags in class and all its children. More...
 
static const OptionDeffind_option (const OptionDef *po, const char *name)
 
static void prepare_app_arguments (int *argc_ptr, char ***argv_ptr)
 
static int write_option (void *optctx, const OptionDef *po, const char *opt, const char *arg)
 
int parse_option (void *optctx, const char *opt, const char *arg, const OptionDef *options)
 Parse one given option. More...
 
void parse_options (void *optctx, int argc, char **argv, const OptionDef *options, void(*parse_arg_function)(void *, const char *))
 
int parse_optgroup (void *optctx, OptionGroup *g)
 Parse an options group and write results into optctx. More...
 
int locate_option (int argc, char **argv, const OptionDef *options, const char *optname)
 Return index of option opt in argv or 0 if not found. More...
 
void parse_loglevel (int argc, char **argv, const OptionDef *options)
 Find the '-loglevel' option in the command line args and apply it. More...
 
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. More...
 
static int match_group_separator (const OptionGroupDef *groups, int nb_groups, const char *opt)
 
static void finish_group (OptionParseContext *octx, int group_idx, const char *arg)
 
static void add_opt (OptionParseContext *octx, const OptionDef *opt, const char *key, const char *val)
 
static void init_parse_context (OptionParseContext *octx, const OptionGroupDef *groups, int nb_groups)
 
void uninit_parse_context (OptionParseContext *octx)
 Free all allocated memory in an OptionParseContext. More...
 
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. More...
 
int opt_loglevel (void *optctx, const char *opt, const char *arg)
 Set the libav* libraries log level. More...
 
int opt_timelimit (void *optctx, const char *opt, const char *arg)
 Limit the execution time. More...
 
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. More...
 
static void print_all_libs_info (int flags, int level)
 
void show_banner (void)
 Print the program banner to stderr. More...
 
int show_version (void *optctx, const char *opt, const char *arg)
 Print the version of the program to stdout. More...
 
int show_license (void *optctx, const char *opt, const char *arg)
 Print the license of the program to stdout. More...
 
int show_formats (void *optctx, const char *opt, const char *arg)
 Print a listing containing all the formats supported by the program. More...
 
static void print_codec (const AVCodec *c)
 
static char get_media_type_char (enum AVMediaType type)
 
static const AVCodecnext_codec_for_id (enum AVCodecID id, const AVCodec *prev, int encoder)
 
static void print_codecs_for_id (enum AVCodecID id, int encoder)
 
int show_codecs (void *optctx, const char *opt, const char *arg)
 Print a listing containing all the codecs supported by the program. More...
 
static void print_codecs (int encoder)
 
int show_decoders (void *optctx, const char *opt, const char *arg)
 Print a listing containing all the decoders supported by the program. More...
 
int show_encoders (void *optctx, const char *opt, const char *arg)
 Print a listing containing all the encoders supported by the program. More...
 
int show_bsfs (void *optctx, const char *opt, const char *arg)
 Print a listing containing all the bit stream filters supported by the program. More...
 
int show_protocols (void *optctx, const char *opt, const char *arg)
 Print a listing containing all the protocols supported by the program. More...
 
int show_filters (void *optctx, const char *opt, const char *arg)
 Print a listing containing all the filters supported by the program. More...
 
int show_pix_fmts (void *optctx, const char *opt, const char *arg)
 Print a listing containing all the pixel formats supported by the program. More...
 
int show_sample_fmts (void *optctx, const char *opt, const char *arg)
 Print a listing containing all the sample formats supported by the program. More...
 
static void show_help_codec (const char *name, int encoder)
 
static void show_help_demuxer (const char *name)
 
static void show_help_muxer (const char *name)
 
int show_help (void *optctx, const char *opt, const char *arg)
 Generic -h handler common to all avtools. More...
 
int read_yesno (void)
 Return a positive value if a line read from standard input starts with [yY], otherwise return 0. More...
 
int cmdutils_read_file (const char *filename, char **bufptr, size_t *size)
 Read the file with name filename, and put its content in a newly allocated 0-terminated buffer. More...
 
void init_pts_correction (PtsCorrectionContext *ctx)
 Reset the state of the PtsCorrectionContext. More...
 
int64_t guess_correct_pts (PtsCorrectionContext *ctx, int64_t reordered_pts, int64_t dts)
 Attempt to guess proper monotonic timestamps for decoded video frames which might have incorrect times. More...
 
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. More...
 
int check_stream_specifier (AVFormatContext *s, AVStream *st, const char *spec)
 Check if the given stream matches a stream specifier. More...
 
AVDictionaryfilter_codec_opts (AVDictionary *opts, enum AVCodecID codec_id, AVFormatContext *s, AVStream *st, AVCodec *codec)
 Filter out options for given codec. More...
 
AVDictionary ** setup_find_stream_info_opts (AVFormatContext *s, AVDictionary *codec_opts)
 Setup AVCodecContext options for avformat_find_stream_info(). More...
 
voidgrow_array (void *array, int elem_size, int *size, int new_size)
 Realloc array to hold new_size elements of elem_size. More...
 
static int alloc_buffer (FrameBuffer **pool, AVCodecContext *s, FrameBuffer **pbuf)
 
int codec_get_buffer (AVCodecContext *s, AVFrame *frame)
 Get a frame from the pool. More...
 
static void unref_buffer (FrameBuffer *buf)
 
void codec_release_buffer (AVCodecContext *s, AVFrame *frame)
 A callback to be used for AVCodecContext.release_buffer along with codec_get_buffer(). More...
 
void filter_release_buffer (AVFilterBuffer *fb)
 A callback to be used for AVFilterBuffer.free. More...
 
void free_buffer_pool (FrameBuffer **pool)
 Free all the buffers in the pool. More...
 

Variables

struct SwsContextsws_opts
 
AVDictionaryformat_opts
 
AVDictionarycodec_opts
 
static const int this_year = 2014
 
static int warned_cfg = 1
 

Macro Definition Documentation

#define FLAGS   (o->type == AV_OPT_TYPE_FLAGS) ? AV_DICT_APPEND : 0

Definition at line 401 of file cmdutils.c.

Referenced by opt_default().

#define GET_ARG (   arg)
Value:
do { \
arg = argv[optindex++]; \
if (!arg) { \
av_log(NULL, AV_LOG_ERROR, "Missing argument for option '%s'.\n", opt);\
return AVERROR(EINVAL); \
} \
} while (0)
void av_log(void *avcl, int level, const char *fmt,...)
Definition: log.c:146
return
NULL
Definition: eval.c:52
if(!(ptr_align%ac->ptr_align)&&samples_align >=aligned_len)

Referenced by split_commandline().

#define INDENT   1

Definition at line 719 of file cmdutils.c.

Referenced by show_banner().

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

Definition at line 902 of file cmdutils.c.

Referenced by print_codec().

#define PRINT_LIB_INFO (   libname,
  LIBNAME,
  flags,
  level 
)
Value:
if (CONFIG_##LIBNAME) { \
const char *indent = flags & INDENT? " " : ""; \
unsigned int version = libname##_version(); \
"%slib%-10s %2d.%3d.%2d / %2d.%3d.%2d\n", \
indent, #libname, \
LIB##LIBNAME##_VERSION_MAJOR, \
LIB##LIBNAME##_VERSION_MINOR, \
LIB##LIBNAME##_VERSION_MICRO, \
version >> 16, version >> 8 & 0xff, version & 0xff); \
} \
const char *cfg = libname##_configuration(); \
if (strcmp(LIBAV_CONFIGURATION, cfg)) { \
"%sWARNING: library configuration mismatch\n", \
indent); \
} \
av_log(NULL, level, "%s%-11s configuration: %s\n", \
indent, #libname, cfg); \
} \
} \
} \
#define INDENT
Definition: cmdutils.c:719
static int warned_cfg
Definition: cmdutils.c:717
static int flags
Definition: log.c:42
void av_log(void *avcl, int level, const char *fmt,...)
Definition: log.c:146
#define LIBAV_CONFIGURATION
Definition: config.h:4
NULL
Definition: eval.c:52
version
Definition: ffv1enc.c:1069
#define SHOW_VERSION
Definition: cmdutils.c:720
uint8_t level
Definition: svq3.c:125
#define SHOW_CONFIG
Definition: cmdutils.c:721
if(!(ptr_align%ac->ptr_align)&&samples_align >=aligned_len)

Definition at line 723 of file cmdutils.c.

Referenced by print_all_libs_info().

#define SHOW_CONFIG   4

Definition at line 721 of file cmdutils.c.

Referenced by show_banner().

#define SHOW_VERSION   2

Definition at line 720 of file cmdutils.c.

Referenced by show_banner(), and show_version().

#define sws_isSupportedInput (   x)    0
#define sws_isSupportedOutput (   x)    0

Function Documentation

static void add_opt ( OptionParseContext octx,
const OptionDef opt,
const char *  key,
const char *  val 
)
static

Definition at line 497 of file cmdutils.c.

Referenced by split_commandline().

static int alloc_buffer ( FrameBuffer **  pool,
AVCodecContext s,
FrameBuffer **  pbuf 
)
static

Definition at line 1539 of file cmdutils.c.

Referenced by codec_get_buffer().

int check_stream_specifier ( AVFormatContext s,
AVStream st,
const char *  spec 
)

Check if the given stream matches a stream specifier.

Parameters
sCorresponding format context.
stStream from s to be checked.
specA stream specifier of the [v|a|s|d]:[<stream index>] form.
Returns
1 if the stream matches, 0 if it doesn't, <0 on error

Definition at line 1388 of file cmdutils.c.

Referenced by copy_metadata(), filter_codec_opts(), init_input_filter(), open_input_file(), open_output_file(), and opt_map().

int cmdutils_read_file ( const char *  filename,
char **  bufptr,
size_t *  size 
)

Read the file with name filename, and put its content in a newly allocated 0-terminated buffer.

Parameters
filenamefile to read from
bufptrlocation where pointer to buffer is returned
sizelocation where size of buffer is returned
Returns
0 in case of success, a negative value corresponding to an AVERROR error code in case of failure.

Definition at line 1290 of file cmdutils.c.

Referenced by transcode_init().

int codec_get_buffer ( AVCodecContext s,
AVFrame frame 
)

Get a frame from the pool.

This is intended to be used as a callback for AVCodecContext.get_buffer.

Parameters
scodec context. s->opaque must be a pointer to the head of the buffer pool.
frameframe->opaque will be set to point to the FrameBuffer containing the frame data.

Definition at line 1597 of file cmdutils.c.

Referenced by init_input_stream().

void codec_release_buffer ( AVCodecContext s,
AVFrame frame 
)

A callback to be used for AVCodecContext.release_buffer along with codec_get_buffer().

Definition at line 1642 of file cmdutils.c.

Referenced by init_input_stream().

AVDictionary* filter_codec_opts ( AVDictionary opts,
enum AVCodecID  codec_id,
AVFormatContext s,
AVStream st,
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.

Parameters
optsdictionary to place options in
codec_idID of the codec that should be filtered for
sCorresponding format context.
stA stream from s for which the options should be filtered.
codecThe particular codec for which the options should be filtered. If null, the default one is looked up according to the codec id.
Returns
a pointer to the created dictionary

Definition at line 1442 of file cmdutils.c.

Referenced by add_input_streams(), new_output_stream(), setup_find_stream_info_opts(), and stream_component_open().

void filter_release_buffer ( AVFilterBuffer fb)

A callback to be used for AVFilterBuffer.free.

Parameters
fbbuffer to free. fb->priv must be a pointer to the FrameBuffer containing the buffer data.

Definition at line 1653 of file cmdutils.c.

Referenced by decode_video(), and video_thread().

static const OptionDef* find_option ( const OptionDef po,
const char *  name 
)
static

Definition at line 156 of file cmdutils.c.

Referenced by locate_option(), parse_option(), and split_commandline().

static void finish_group ( OptionParseContext octx,
int  group_idx,
const char *  arg 
)
static

Definition at line 466 of file cmdutils.c.

Referenced by split_commandline().

void free_buffer_pool ( FrameBuffer **  pool)

Free all the buffers in the pool.

This must be called after all the buffers have been released.

Definition at line 1660 of file cmdutils.c.

Referenced by exit_program(), and stream_component_close().

static char get_media_type_char ( enum AVMediaType  type)
static

Definition at line 961 of file cmdutils.c.

Referenced by print_codecs(), and show_codecs().

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.avpreset in the directories $AVCONV_DATADIR (if set), $HOME/.avconv, and in the datadir defined at configuration time, 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.

Parameters
filenamebuffer where the name of the found filename is written
filename_sizesize in bytes of the filename buffer
preset_namename of the preset to search
is_pathtell if preset_name is a filename path
codec_namename of the codec for which to look for the preset, may be NULL

Definition at line 1355 of file cmdutils.c.

Referenced by avserver_opt_preset().

void* grow_array ( void array,
int  elem_size,
int *  size,
int  new_size 
)

Realloc array to hold new_size elements of elem_size.

Calls exit() on failure.

Parameters
arrayarray to reallocate
elem_sizesize in bytes of each element
sizenew element count will be written here
new_sizenumber of elements to place in reallocated array
Returns
reallocated array

Definition at line 1520 of file cmdutils.c.

Referenced by opt_streamid(), and write_option().

int64_t guess_correct_pts ( PtsCorrectionContext ctx,
int64_t  pts,
int64_t  dts 
)

Attempt to guess proper monotonic timestamps for decoded video frames which might have incorrect times.

Input timestamps may wrap around, in which case the output will as well.

Parameters
ctxthe PtsCorrectionContext carrying stream pts information
ptsthe pts field of the decoded AVPacket, as passed through AVCodecContext.reordered_opaque
dtsthe dts field of the decoded AVPacket
Returns
one of the input values, may be AV_NOPTS_VALUE

Definition at line 1333 of file cmdutils.c.

Referenced by decode_video(), and get_video_frame().

void init_opts ( void  )

Initialize the cmdutils option system, in particular allocate the *_opts contexts.

Definition at line 61 of file cmdutils.c.

Referenced by finish_group(), init_parse_context(), and main().

static void init_parse_context ( OptionParseContext octx,
const OptionGroupDef groups,
int  nb_groups 
)
static

Definition at line 509 of file cmdutils.c.

Referenced by split_commandline().

void init_pts_correction ( PtsCorrectionContext ctx)

Reset the state of the PtsCorrectionContext.

Definition at line 1327 of file cmdutils.c.

Referenced by get_video_frame(), and init_input_stream().

int locate_option ( int  argc,
char **  argv,
const OptionDef options,
const char *  optname 
)

Return index of option opt in argv or 0 if not found.

Definition at line 366 of file cmdutils.c.

Referenced by parse_loglevel().

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

Trivial log callback.

Only suitable for show_help and similar since it lacks prefix handling.

Definition at line 79 of file cmdutils.c.

Referenced by show_help(), show_help_default(), and show_version().

static int match_group_separator ( const OptionGroupDef groups,
int  nb_groups,
const char *  opt 
)
static

Definition at line 446 of file cmdutils.c.

Referenced by split_commandline().

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

Definition at line 971 of file cmdutils.c.

Referenced by print_codecs(), print_codecs_for_id(), show_codecs(), and show_help_codec().

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 402 of file cmdutils.c.

Referenced by opt_channel_layout(), opt_target(), and split_commandline().

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

Set the libav* libraries log level.

Definition at line 657 of file cmdutils.c.

Referenced by parse_loglevel().

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

Limit the execution time.

Definition at line 692 of file cmdutils.c.

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

Find the '-loglevel' option in the command line args and apply it.

Definition at line 392 of file cmdutils.c.

Referenced by main().

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.

Parameters
contextthe context of the value to be set (e.g. the corresponding command line option name)
numstrthe string to be parsed
typethe type (OPT_INT64 or OPT_FLOAT) as which the string should be parsed
minthe minimum valid accepted value
maxthe maximum valid accepted value

Definition at line 84 of file cmdutils.c.

Referenced by opt_debug(), opt_height(), opt_streamid(), opt_timelimit(), opt_vismv(), opt_vsync(), opt_width(), and write_option().

int parse_optgroup ( void optctx,
OptionGroup g 
)

Parse an options group and write results into optctx.

Parameters
optctxan app-specific options context. NULL for global options group

Definition at line 343 of file cmdutils.c.

Referenced by avconv_parse_options(), and open_files().

int parse_option ( void optctx,
const char *  opt,
const char *  arg,
const OptionDef options 
)
void parse_options ( void optctx,
int  argc,
char **  argv,
const OptionDef options,
void(*)(void *, const char *)  parse_arg_function 
)

Definition at line 312 of file cmdutils.c.

Referenced by main().

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.

Parameters
contextthe context of the value to be set (e.g. the corresponding command line option name)
timestrthe string to be parsed
is_durationa flag which tells how to interpret timestr, if not zero timestr is interpreted as a duration, otherwise as a date
See Also
parse_date()

Definition at line 105 of file cmdutils.c.

Referenced by opt_duration(), opt_seek(), parse_forced_key_frames(), and write_option().

static void prepare_app_arguments ( int *  argc_ptr,
char ***  argv_ptr 
)
inlinestatic

Definition at line 225 of file cmdutils.c.

Referenced by parse_options(), and split_commandline().

static void print_all_libs_info ( int  flags,
int  level 
)
static

Definition at line 751 of file cmdutils.c.

Referenced by show_banner(), and show_version().

static void print_codec ( const AVCodec c)
static

Definition at line 915 of file cmdutils.c.

Referenced by show_help_codec().

static void print_codecs ( int  encoder)
static

Definition at line 1042 of file cmdutils.c.

Referenced by show_decoders(), and show_encoders().

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

Definition at line 982 of file cmdutils.c.

Referenced by show_codecs().

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.

See Also
av_strerror()

Definition at line 705 of file cmdutils.c.

Referenced by decode_thread(), open_input_file(), open_output_file(), process_input(), and write_frame().

int read_yesno ( void  )

Return a positive value if a line read from standard input starts with [yY], otherwise return 0.

Definition at line 1279 of file cmdutils.c.

Referenced by assert_file_overwrite().

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.

Returns
pointer to the created array of dictionaries, NULL if it cannot be created

Definition at line 1500 of file cmdutils.c.

Referenced by decode_thread(), and open_input_file().

void show_banner ( void  )

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 762 of file cmdutils.c.

Referenced by main().

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

Print a listing containing all the bit stream filters supported by the program.

Definition at line 1085 of file cmdutils.c.

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

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

Definition at line 994 of file cmdutils.c.

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 1073 of file cmdutils.c.

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 1079 of file cmdutils.c.

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

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

Definition at line 1111 of file cmdutils.c.

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

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

Definition at line 854 of file cmdutils.c.

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

Generic -h handler common to all avtools.

Definition at line 1251 of file cmdutils.c.

void show_help_children ( const AVClass class,
int  flags 
)

Show help for all options with given flags in class and all its children.

Definition at line 146 of file cmdutils.c.

Referenced by print_codec(), show_help_children(), show_help_default(), show_help_demuxer(), and show_help_muxer().

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

Definition at line 1165 of file cmdutils.c.

Referenced by show_help().

static void show_help_demuxer ( const char *  name)
static

Definition at line 1200 of file cmdutils.c.

Referenced by show_help().

static void show_help_muxer ( const char *  name)
static

Definition at line 1218 of file cmdutils.c.

Referenced by show_help().

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.

Parameters
optionsa list of options
msgtitle of this group. Only printed if at least one option matches.
req_flagsprint only options which have all those flags set.
rej_flagsdon't print options which have any of those flags set.
alt_flagsprint only options that have at least one of those flags set

Definition at line 117 of file cmdutils.c.

Referenced by show_help_default().

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.

Definition at line 783 of file cmdutils.c.

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

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

Definition at line 1123 of file cmdutils.c.

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

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

Definition at line 1096 of file cmdutils.c.

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 1156 of file cmdutils.c.

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.

Definition at line 774 of file 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 556 of file cmdutils.c.

Referenced by avconv_parse_options().

void uninit_opts ( void  )

Uninitialize the cmdutils option system, in particular free the *_opts contexts and their contents.

Definition at line 69 of file cmdutils.c.

Referenced by do_exit(), exit_program(), and uninit_parse_context().

void uninit_parse_context ( OptionParseContext octx)

Free all allocated memory in an OptionParseContext.

Definition at line 531 of file cmdutils.c.

Referenced by avconv_parse_options().

static void unref_buffer ( FrameBuffer buf)
static

Definition at line 1630 of file cmdutils.c.

Referenced by codec_release_buffer(), and filter_release_buffer().

static int write_option ( void optctx,
const OptionDef po,
const char *  opt,
const char *  arg 
)
static

Definition at line 231 of file cmdutils.c.

Referenced by parse_optgroup(), and parse_option().

Variable Documentation

AVDictionary * codec_opts

Definition at line 57 of file cmdutils.c.

Referenced by decode_thread(), finish_group(), and stream_component_open().

AVDictionary* format_opts

Definition at line 57 of file cmdutils.c.

Referenced by decode_thread(), finish_group(), main(), and open_input_file().

struct SwsContext* sws_opts

Definition at line 56 of file cmdutils.c.

Referenced by finish_group(), and queue_picture().

const int this_year = 2014
static

Definition at line 59 of file cmdutils.c.

Referenced by show_banner().

int warned_cfg = 1
static

Definition at line 717 of file cmdutils.c.