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
Stefano Sabatini 17 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

@@ -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

@@ -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

@@ -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);