summaryrefslogtreecommitdiff
path: root/libavfilter/af_pan.c
diff options
context:
space:
mode:
Diffstat (limited to 'libavfilter/af_pan.c')
-rw-r--r--libavfilter/af_pan.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/libavfilter/af_pan.c b/libavfilter/af_pan.c
index 1b78515b55..36395e995c 100644
--- a/libavfilter/af_pan.c
+++ b/libavfilter/af_pan.c
@@ -286,10 +286,14 @@ static int config_props(AVFilterLink *link)
0, ctx);
if (!pan->swr)
return AVERROR(ENOMEM);
- if (!link->channel_layout)
- av_opt_set_int(pan->swr, "ich", link->channels, 0);
- if (!pan->out_channel_layout)
- av_opt_set_int(pan->swr, "och", pan->nb_output_channels, 0);
+ if (!link->channel_layout) {
+ if (av_opt_set_int(pan->swr, "ich", link->channels, 0) < 0)
+ return AVERROR(EINVAL);
+ }
+ if (!pan->out_channel_layout) {
+ if (av_opt_set_int(pan->swr, "och", pan->nb_output_channels, 0) < 0)
+ return AVERROR(EINVAL);
+ }
// gains are pure, init the channel mapping
if (pan->pure_gains) {