[FFmpeg-devel] [PATCH 11/25] avfilter/af_headphone: Avoid duplicating string needlessly
Andreas Rheinhardt
andreas.rheinhardt at gmail.com
Wed Sep 9 00:18:42 EEST 2020
The string given by an AVOption that contains the channel assignment
is used only once; ergo it doesn't matter that parsing the string via
av_strtok() is destructive. There is no need to make a copy.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt at gmail.com>
---
libavfilter/af_headphone.c | 9 ++-------
1 file changed, 2 insertions(+), 7 deletions(-)
diff --git a/libavfilter/af_headphone.c b/libavfilter/af_headphone.c
index 32939af854..967f8ed5a6 100644
--- a/libavfilter/af_headphone.c
+++ b/libavfilter/af_headphone.c
@@ -100,16 +100,13 @@ static int parse_channel_name(const char *arg, uint64_t *rchannel)
static void parse_map(AVFilterContext *ctx)
{
HeadphoneContext *s = ctx->priv;
- char *arg, *tokenizer, *p, *args = av_strdup(s->map);
+ char *arg, *tokenizer, *p;
uint64_t used_channels = 0;
- if (!args)
- return;
- p = args;
-
s->lfe_channel = -1;
s->nb_inputs = 1;
+ p = s->map;
while ((arg = av_strtok(p, "|", &tokenizer))) {
uint64_t out_channel;
@@ -133,8 +130,6 @@ static void parse_map(AVFilterContext *ctx)
s->nb_inputs = 2;
else
s->nb_inputs = s->nb_irs + 1;
-
- av_free(args);
}
typedef struct ThreadData {
--
2.20.1
More information about the ffmpeg-devel
mailing list