summaryrefslogtreecommitdiff
path: root/libavfilter
diff options
context:
space:
mode:
authorRostislav Pehlivanov <atomnuker@gmail.com>2017-02-21 06:51:46 +0000
committerRostislav Pehlivanov <atomnuker@gmail.com>2017-02-21 16:25:47 +0000
commit42959044ac7dc40d5593cca2386d26257a615e5b (patch)
tree61c20ed07dda7ac4a9fe496f7e670c0652bded62 /libavfilter
parent0c0aef1caf0cb5dd3b294f9fff923175036bd985 (diff)
lavfi/buffersrc: fix directly setting channel layout
When setting the channel layout directly using AVBufferSrcParameters the channel layout was correctly set however the init function still expected the old string format to set the number of channels (when it hadn't already been specified). Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
Diffstat (limited to 'libavfilter')
-rw-r--r--libavfilter/buffersrc.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/libavfilter/buffersrc.c b/libavfilter/buffersrc.c
index 77fd174219..3f80d5f413 100644
--- a/libavfilter/buffersrc.c
+++ b/libavfilter/buffersrc.c
@@ -341,14 +341,16 @@ static av_cold int init_audio(AVFilterContext *ctx)
return AVERROR(EINVAL);
}
- if (s->channel_layout_str) {
+ if (s->channel_layout_str || s->channel_layout) {
int n;
- s->channel_layout = av_get_channel_layout(s->channel_layout_str);
if (!s->channel_layout) {
- av_log(ctx, AV_LOG_ERROR, "Invalid channel layout %s.\n",
- s->channel_layout_str);
- return AVERROR(EINVAL);
+ s->channel_layout = av_get_channel_layout(s->channel_layout_str);
+ if (!s->channel_layout) {
+ av_log(ctx, AV_LOG_ERROR, "Invalid channel layout %s.\n",
+ s->channel_layout_str);
+ return AVERROR(EINVAL);
+ }
}
n = av_get_channel_layout_nb_channels(s->channel_layout);
if (s->channels) {