[FFmpeg-devel] [PATCH] avfilter/f_metadata: rename "string" into "same_str"
Tobias Rapp
t.rapp at noa-archive.com
Thu Feb 11 15:49:51 CET 2016
On 11.02.2016 15:39, Tobias Rapp wrote:
> Rename function option value "string" into "same_str". Remove obsolete
> "length" option.
>
> Signed-off-by: Tobias Rapp <t.rapp at noa-archive.com>
> ---
> libavfilter/f_metadata.c | 32 +++++++++++++++-----------------
> 1 file changed, 15 insertions(+), 17 deletions(-)
>
> diff --git a/libavfilter/f_metadata.c b/libavfilter/f_metadata.c
> index ae0208e..7cf286e 100644
> --- a/libavfilter/f_metadata.c
> +++ b/libavfilter/f_metadata.c
> @@ -48,7 +48,7 @@ enum MetadataMode {
> };
>
> enum MetadataFunction {
> - METADATAF_STRING,
> + METADATAF_SAME_STR,
> METADATAF_STARTS_WITH,
> METADATAF_LESS,
> METADATAF_EQUAL,
> @@ -75,7 +75,6 @@ typedef struct MetadataContext {
> int mode;
> char *key;
> char *value;
> - int length;
> int function;
>
> char *expr_str;
> @@ -86,7 +85,7 @@ typedef struct MetadataContext {
> char *file_str;
>
> int (*compare)(struct MetadataContext *s,
> - const char *value1, const char *value2, size_t length);
> + const char *value1, const char *value2);
> void (*print)(AVFilterContext *ctx, const char *msg, ...) av_printf_format(2, 3);
> } MetadataContext;
>
> @@ -102,29 +101,28 @@ static const AVOption filt_name##_options[] = { \
> { "key", "set metadata key", OFFSET(key), AV_OPT_TYPE_STRING, {.str = NULL }, 0, 0, FLAGS }, \
> { "value", "set metadata value", OFFSET(value), AV_OPT_TYPE_STRING, {.str = NULL }, 0, 0, FLAGS }, \
> { "function", "function for comparing values", OFFSET(function), AV_OPT_TYPE_INT, {.i64 = 0 }, 0, METADATAF_NB-1, FLAGS, "function" }, \
> - { "string", NULL, 0, AV_OPT_TYPE_CONST, {.i64 = METADATAF_STRING }, 0, 3, FLAGS, "function" }, \
> + { "same_str", NULL, 0, AV_OPT_TYPE_CONST, {.i64 = METADATAF_SAME_STR }, 0, 3, FLAGS, "function" }, \
> { "starts_with", NULL, 0, AV_OPT_TYPE_CONST, {.i64 = METADATAF_STARTS_WITH }, 0, 0, FLAGS, "function" }, \
> { "less", NULL, 0, AV_OPT_TYPE_CONST, {.i64 = METADATAF_LESS }, 0, 3, FLAGS, "function" }, \
> { "equal", NULL, 0, AV_OPT_TYPE_CONST, {.i64 = METADATAF_EQUAL }, 0, 3, FLAGS, "function" }, \
> { "greater", NULL, 0, AV_OPT_TYPE_CONST, {.i64 = METADATAF_GREATER }, 0, 3, FLAGS, "function" }, \
> { "expr", NULL, 0, AV_OPT_TYPE_CONST, {.i64 = METADATAF_EXPR }, 0, 3, FLAGS, "function" }, \
> { "expr", "set expression for expr function", OFFSET(expr_str), AV_OPT_TYPE_STRING, {.str = NULL }, 0, 0, FLAGS }, \
> - { "length", "compare up to N chars for string function", OFFSET(length), AV_OPT_TYPE_INT, {.i64 = INT_MAX }, 1, INT_MAX, FLAGS }, \
> { "file", "set file where to print metadata information", OFFSET(file_str), AV_OPT_TYPE_STRING, {.str=NULL}, 0, 0, FLAGS }, \
> { NULL } \
> }
>
> -static int string(MetadataContext *s, const char *value1, const char *value2, size_t length)
> +static int same_str(MetadataContext *s, const char *value1, const char *value2)
> {
> - return !strncmp(value1, value2, length);
> + return !strcmp(value1, value2);
> }
>
> -static int starts_with(MetadataContext *s, const char *value1, const char *value2, size_t length)
> +static int starts_with(MetadataContext *s, const char *value1, const char *value2)
> {
> return !strncmp(value1, value2, strlen(value2));
> }
>
> -static int equal(MetadataContext *s, const char *value1, const char *value2, size_t length)
> +static int equal(MetadataContext *s, const char *value1, const char *value2)
> {
> float f1, f2;
>
> @@ -134,7 +132,7 @@ static int equal(MetadataContext *s, const char *value1, const char *value2, siz
> return fabsf(f1 - f2) < FLT_EPSILON;
> }
>
> -static int less(MetadataContext *s, const char *value1, const char *value2, size_t length)
> +static int less(MetadataContext *s, const char *value1, const char *value2)
> {
> float f1, f2;
>
> @@ -144,7 +142,7 @@ static int less(MetadataContext *s, const char *value1, const char *value2, size
> return (f1 - f2) < FLT_EPSILON;
> }
>
> -static int greater(MetadataContext *s, const char *value1, const char *value2, size_t length)
> +static int greater(MetadataContext *s, const char *value1, const char *value2)
> {
> float f1, f2;
>
> @@ -154,7 +152,7 @@ static int greater(MetadataContext *s, const char *value1, const char *value2, s
> return (f2 - f1) < FLT_EPSILON;
> }
>
> -static int parse_expr(MetadataContext *s, const char *value1, const char *value2, size_t length)
> +static int parse_expr(MetadataContext *s, const char *value1, const char *value2)
> {
> double f1, f2;
>
> @@ -205,8 +203,8 @@ static av_cold int init(AVFilterContext *ctx)
> }
>
> switch (s->function) {
> - case METADATAF_STRING:
> - s->compare = string;
> + case METADATAF_SAME_STR:
> + s->compare = same_str;
> break;
> case METADATAF_STARTS_WITH:
> s->compare = starts_with;
> @@ -289,7 +287,7 @@ static int filter_frame(AVFilterLink *inlink, AVFrame *frame)
> if (!s->value && e && e->value) {
> return ff_filter_frame(outlink, frame);
> } else if (s->value && e && e->value &&
> - s->compare(s, e->value, s->value, s->length)) {
> + s->compare(s, e->value, s->value)) {
> return ff_filter_frame(outlink, frame);
> }
> break;
> @@ -314,14 +312,14 @@ static int filter_frame(AVFilterLink *inlink, AVFrame *frame)
> while ((e = av_dict_get(metadata, "", e, AV_DICT_IGNORE_SUFFIX)) != NULL) {
> s->print(ctx, "%s=%s\n", e->key, e->value);
> }
> - } else if (e && e->value && (!s->value || (e->value && s->compare(s, e->value, s->value, s->length)))) {
> + } else if (e && e->value && (!s->value || (e->value && s->compare(s, e->value, s->value)))) {
> s->print(ctx, "frame %"PRId64" pts %"PRId64"\n", inlink->frame_count, frame->pts);
> s->print(ctx, "%s=%s\n", s->key, e->value);
> }
> return ff_filter_frame(outlink, frame);
> break;
> case METADATA_DELETE:
> - if (e && e->value && s->value && s->compare(s, e->value, s->value, s->length)) {
> + if (e && e->value && s->value && s->compare(s, e->value, s->value)) {
> av_dict_set(&metadata, s->key, NULL, 0);
> } else if (e && e->value) {
> av_dict_set(&metadata, s->key, NULL, 0);
>
Please ignore this patch, forgot to update the documentation.
Regards,
Tobias
--
NOA GmbH Tel: +43-1-5452700
Johannagasse 42/4 Fax: +43-1-545270014
A - 1050 Wien Www: http://www.noa-archive.com
More information about the ffmpeg-devel
mailing list