avfilter/buffersrc: never override channel count in av_buffersrc_add_frame_flags
Overriding unknown layouts with the negotiated layout is OK, but the number of channels should match with what was negotiated. Signed-off-by: Marton Balint <cus@passwd.hu>
This commit is contained in:
parent
359b6a7f8a
commit
4721b9f15f
@ -215,7 +215,7 @@ int attribute_align_arg av_buffersrc_add_frame_flags(AVFilterContext *ctx, AVFra
|
||||
break;
|
||||
case AVMEDIA_TYPE_AUDIO:
|
||||
/* For layouts unknown on input but known on link after negotiation. */
|
||||
if (frame->ch_layout.order == AV_CHANNEL_ORDER_UNSPEC) {
|
||||
if (frame->ch_layout.order == AV_CHANNEL_ORDER_UNSPEC && frame->ch_layout.nb_channels == s->ch_layout.nb_channels) {
|
||||
ret = av_channel_layout_copy(&frame->ch_layout, &s->ch_layout);
|
||||
if (ret < 0)
|
||||
return ret;
|
||||
|
Loading…
Reference in New Issue
Block a user