Browse Source

Export parse_time_or_die from ffmpeg.c to cmdutils.c

Patch by Stefano Sabatini (stefano sabatini-lala poste it)

Originally committed as revision 12647 to svn://svn.ffmpeg.org/ffmpeg/trunk
tags/v0.5
Stefano Sabatini Robert Swain 18 years ago
parent
commit
7542157d8a
3 changed files with 27 additions and 11 deletions
  1. +11
    -0
      cmdutils.c
  2. +16
    -0
      cmdutils.h
  3. +0
    -11
      ffmpeg.c

+ 11
- 0
cmdutils.c View File

@@ -52,6 +52,17 @@ double parse_number_or_die(const char *context, const char *numstr, int type, do
exit(1);
}

int64_t parse_time_or_die(const char *context, const char *timestr, int is_duration)
{
int64_t us = parse_date(timestr, is_duration);
if (us == INT64_MIN) {
fprintf(stderr, "Invalid %s specification for %s: %s\n",
is_duration ? "duration" : "date", context, timestr);
exit(1);
}
return us;
}

void show_help_options(const OptionDef *options, const char *msg, int mask, int value)
{
const OptionDef *po;


+ 16
- 0
cmdutils.h View File

@@ -39,6 +39,22 @@
*/
double parse_number_or_die(const char *context, const char *numstr, int type, double min, double max);

/**
* Parses a string specifying a time and returns its corresponding
* value as a number of microseconds. Exits from the application if
* the string cannot be correctly parsed.
*
* @param context the context of the value to be set (e.g. the
* corresponding commandline option name)
* @param timestr the string to be parsed
* @param is_duration a flag which tells how to interpret \p timestr, if
* not zero \p timestr is interpreted as a duration, otherwise as a
* date
*
* @see av_parse_date()
*/
int64_t parse_time_or_die(const char *context, const char *timestr, int is_duration);

typedef struct {
const char *name;
int flags;


+ 0
- 11
ffmpeg.c View File

@@ -2580,17 +2580,6 @@ static void opt_map_meta_data(const char *arg)
m->in_file = strtol(p, &p, 0);
}

static int64_t parse_time_or_die(const char *context, const char *timestr, int is_duration)
{
int64_t us = parse_date(timestr, is_duration);
if (us == INT64_MIN) {
fprintf(stderr, "Invalid %s specification for %s: %s\n",
is_duration ? "duration" : "date", context, timestr);
exit(1);
}
return us;
}

static int opt_recording_time(const char *opt, const char *arg)
{
recording_time = parse_time_or_die(opt, arg, 1);


Loading…
Cancel
Save