X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;ds=sidebyside;f=cmdutils.h;h=6fff47ddebcddea21199c512279df7a2c9957376;hb=154486f9adc621e620dacd76d78c30a02cc1dcd3;hp=a20b779f1a02f3db712add66ccc7be095fad9c56;hpb=182cbe433aea20b0d9627d40de7c75713ec736db;p=ffmpeg diff --git a/cmdutils.h b/cmdutils.h index a20b779f1a0..6fff47ddebc 100644 --- a/cmdutils.h +++ b/cmdutils.h @@ -83,14 +83,15 @@ int opt_timelimit(const char *opt, const char *arg); * parsed or the corresponding value is invalid. * * @param context the context of the value to be set (e.g. the - * corresponding commandline option name) + * corresponding command line option name) * @param numstr the string to be parsed * @param type the type (OPT_INT64 or OPT_FLOAT) as which the * string should be parsed * @param min the minimum valid accepted value * @param max the maximum valid accepted value */ -double parse_number_or_die(const char *context, const char *numstr, int type, double min, double max); +double parse_number_or_die(const char *context, const char *numstr, int type, + double min, double max); /** * Parse a string specifying a time and return its corresponding @@ -98,7 +99,7 @@ double parse_number_or_die(const char *context, const char *numstr, int type, do * the string cannot be correctly parsed. * * @param context the context of the value to be set (e.g. the - * corresponding commandline option name) + * corresponding command line option name) * @param timestr the string to be parsed * @param is_duration a flag which tells how to interpret timestr, if * not zero timestr is interpreted as a duration, otherwise as a @@ -106,7 +107,8 @@ double parse_number_or_die(const char *context, const char *numstr, int type, do * * @see parse_date() */ -int64_t parse_time_or_die(const char *context, const char *timestr, int is_duration); +int64_t parse_time_or_die(const char *context, const char *timestr, + int is_duration); typedef struct SpecifierOpt { char *specifier; /**< stream/chapter/program/... specifier */ @@ -152,7 +154,14 @@ typedef struct { const char *argname; } OptionDef; -void show_help_options(const OptionDef *options, const char *msg, int mask, int value); +void show_help_options(const OptionDef *options, const char *msg, int mask, + int value); + +/** + * Show help for all options with given flags in class and all its + * children. + */ +void show_help_children(const AVClass *class, int flags); /** * Parse the command line arguments. @@ -172,19 +181,26 @@ void parse_options(void *optctx, int argc, char **argv, const OptionDef *options * * @return on success 1 if arg was consumed, 0 otherwise; negative number on error */ -int parse_option(void *optctx, const char *opt, const char *arg, const OptionDef *options); +int parse_option(void *optctx, const char *opt, const char *arg, + const OptionDef *options); /** - * Find the '-loglevel' option in the commandline args and apply it. + * Find the '-loglevel' option in the command line args and apply it. */ void parse_loglevel(int argc, char **argv, const OptionDef *options); +/** + * Return index of option opt in argv or 0 if not found. + */ +int locate_option(int argc, char **argv, const OptionDef *options, + const char *optname); + /** * Check if the given stream matches a stream specifier. * * @param s Corresponding format context. * @param st Stream from s to be checked. - * @param spec A stream specifier of the [v|a|s|d]:[] form. + * @param spec A stream specifier of the [v|a|s|d]:[\] form. * * @return 1 if the stream matches, 0 if it doesn't, <0 on error */ @@ -200,7 +216,8 @@ int check_stream_specifier(AVFormatContext *s, AVStream *st, const char *spec); * @param st A stream from s for which the options should be filtered. * @return a pointer to the created dictionary */ -AVDictionary *filter_codec_opts(AVDictionary *opts, enum CodecID codec_id, AVFormatContext *s, AVStream *st); +AVDictionary *filter_codec_opts(AVDictionary *opts, enum CodecID codec_id, + AVFormatContext *s, AVStream *st); /** * Setup AVCodecContext options for avformat_find_stream_info(). @@ -213,7 +230,8 @@ AVDictionary *filter_codec_opts(AVDictionary *opts, enum CodecID codec_id, AVFor * @return pointer to the created array of dictionaries, NULL if it * cannot be created */ -AVDictionary **setup_find_stream_info_opts(AVFormatContext *s, AVDictionary *codec_opts); +AVDictionary **setup_find_stream_info_opts(AVFormatContext *s, + AVDictionary *codec_opts); /** * Print an error message to stderr, indicating filename and a human @@ -303,7 +321,7 @@ int read_yesno(void); * @return 0 in case of success, a negative value corresponding to an * AVERROR error code in case of failure. */ -int read_file(const char *filename, char **bufptr, size_t *size); +int cmdutils_read_file(const char *filename, char **bufptr, size_t *size); typedef struct { int64_t num_faulty_pts; /// Number of incorrect PTS values so far @@ -333,11 +351,11 @@ int64_t guess_correct_pts(PtsCorrectionContext *ctx, int64_t pts, int64_t dts); * 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 + * 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.ffpreset in the above-mentioned directories. + * codec_name-preset_name.avpreset in the above-mentioned directories. * * @param filename buffer where the name of the found filename is written * @param filename_size size in bytes of the filename buffer @@ -349,21 +367,6 @@ int64_t guess_correct_pts(PtsCorrectionContext *ctx, int64_t pts, int64_t dts); FILE *get_preset_file(char *filename, size_t filename_size, const char *preset_name, int is_path, const char *codec_name); -typedef struct { - enum PixelFormat pix_fmt; -} FFSinkContext; - -extern AVFilter ffsink; - -/** - * Extract a frame from sink. - * - * @return a negative error in case of failure, 1 if one frame has - * been extracted successfully. - */ -int get_filtered_video_frame(AVFilterContext *sink, AVFrame *frame, - AVFilterBufferRef **picref, AVRational *pts_tb); - /** * Do all the necessary cleanup and abort. * This function is implemented in the avtools, not cmdutils.