summaryrefslogtreecommitdiff
path: root/libavfilter/formats.c
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2012-05-17 02:37:13 +0200
committerMichael Niedermayer <michaelni@gmx.at>2012-05-17 02:55:57 +0200
commit3448404a707b6e236a2ffa7b0453b3300de41b7b (patch)
tree31f311affbbb1102e058925fbce7be62ab152df9 /libavfilter/formats.c
parent6579bc439b98501efe14f9043f9582c4161a5209 (diff)
libavfilter: add ff_parse_time_base()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavfilter/formats.c')
-rw-r--r--libavfilter/formats.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/libavfilter/formats.c b/libavfilter/formats.c
index 3534d64ca7..5564d03249 100644
--- a/libavfilter/formats.c
+++ b/libavfilter/formats.c
@@ -21,6 +21,7 @@
#include "libavutil/eval.h"
#include "libavutil/pixdesc.h"
+#include "libavutil/parseutils.h"
#include "libavutil/audioconvert.h"
#include "avfilter.h"
#include "internal.h"
@@ -493,6 +494,17 @@ int ff_parse_sample_format(int *ret, const char *arg, void *log_ctx)
return 0;
}
+int ff_parse_time_base(AVRational *ret, const char *arg, void *log_ctx)
+{
+ AVRational r;
+ if(av_parse_ratio(&r, arg, INT_MAX, 0, log_ctx) < 0 ||r.num<=0 ||r.den<=0) {
+ av_log(log_ctx, AV_LOG_ERROR, "Invalid time base '%s'\n", arg);
+ return AVERROR(EINVAL);
+ }
+ *ret = r;
+ return 0;
+}
+
int ff_parse_sample_rate(int *ret, const char *arg, void *log_ctx)
{
char *tail;