X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=cmdutils.c;h=8333994993853d480030194ec8287bbe791cc82d;hb=59b377ac86589e3c11a613e9a520a7ca76935ea4;hp=292a290750ac441253ff5baca681059294070cd9;hpb=63d026b1bf6d5cb7d93b97f650631188b7dd5424;p=ffmpeg diff --git a/cmdutils.c b/cmdutils.c index 292a290750a..83339949938 100644 --- a/cmdutils.c +++ b/cmdutils.c @@ -31,6 +31,7 @@ #include "cmdutils.h" #include "avstring.h" #include "version.h" +#include "network.h" #undef exit @@ -52,6 +53,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; @@ -159,16 +171,19 @@ void print_error(const char *filename, int err) fprintf(stderr, "%s: Unknown format\n", filename); break; case AVERROR(EIO): - fprintf(stderr, "%s: I/O error occured\n" + fprintf(stderr, "%s: I/O error occurred\n" "Usually that means that input file is truncated and/or corrupted.\n", filename); break; case AVERROR(ENOMEM): - fprintf(stderr, "%s: memory allocation error occured\n", filename); + fprintf(stderr, "%s: memory allocation error occurred\n", filename); break; case AVERROR(ENOENT): fprintf(stderr, "%s: no such file or directory\n", filename); break; + case AVERROR(FF_NETERROR(EPROTONOSUPPORT)): + fprintf(stderr, "%s: Unsupported network protocol\n", filename); + break; default: fprintf(stderr, "%s: Error while opening file\n", filename); break;