[FFmpeg-devel] [PATCH] avfilter/metadata: add intuitive labels for metadata values
Gyan Doshi
ffmpeg at gyani.pro
Fri May 14 13:23:31 EEST 2021
---
doc/filters.texi | 4 ++--
libavfilter/f_metadata.c | 8 ++++++--
2 files changed, 8 insertions(+), 4 deletions(-)
diff --git a/doc/filters.texi b/doc/filters.texi
index ed0ffe91fc..1a8843fe4f 100644
--- a/doc/filters.texi
+++ b/doc/filters.texi
@@ -25296,10 +25296,10 @@ The expression is evaluated through the eval API and can contain the following
constants:
@table @option
- at item VALUE1
+ at item VALUE1, FRAMEVAL
Float representation of @code{value} from metadata key.
- at item VALUE2
+ at item VALUE2, USERVAL
Float representation of @code{value} as supplied by user in @code{value} option.
@end table
diff --git a/libavfilter/f_metadata.c b/libavfilter/f_metadata.c
index 5fec7c3c56..e7c7b00118 100644
--- a/libavfilter/f_metadata.c
+++ b/libavfilter/f_metadata.c
@@ -61,12 +61,16 @@ enum MetadataFunction {
static const char *const var_names[] = {
"VALUE1",
"VALUE2",
+ "FRAMEVAL",
+ "USERVAL",
NULL
};
enum var_name {
VAR_VALUE1,
VAR_VALUE2,
+ VAR_FRAMEVAL,
+ VAR_USERVAL,
VAR_VARS_NB
};
@@ -172,8 +176,8 @@ static int parse_expr(MetadataContext *s, const char *value1, const char *value2
if (sscanf(value1, "%lf", &f1) + sscanf(value2, "%lf", &f2) != 2)
return 0;
- s->var_values[VAR_VALUE1] = f1;
- s->var_values[VAR_VALUE2] = f2;
+ s->var_values[VAR_VALUE1] = s->var_values[VAR_FRAMEVAL] = f1;
+ s->var_values[VAR_VALUE2] = s->var_values[VAR_USERVAL] = f2;
return av_expr_eval(s->expr, s->var_values, NULL);
}
--
2.30.1
More information about the ffmpeg-devel
mailing list