request_channel_layout is a decoder option and it makes no sense to have it in a parser.
This feature was needed in the past when the decoder was allowed to reuse the avctx from the demuxer. Nowadays the decoder receives only the parameters from it, already containing the real channel layout (and the correct request_channel_layout option). After initialization the decoder overwrites the channel layout with the downmixed one that is actually output, so there is no need to preserve this functionality in the parser. Signed Vittorio Giovara <vittorio.giov...@gmail.com> Signed-off-by: Vittorio Giovara <vittorio.giov...@gmail.com> --- libavcodec/aac_ac3_parser.c | 13 ------------- 1 file changed, 13 deletions(-) diff --git a/libavcodec/aac_ac3_parser.c b/libavcodec/aac_ac3_parser.c index 806a826ea0..b1622b534c 100644 --- a/libavcodec/aac_ac3_parser.c +++ b/libavcodec/aac_ac3_parser.c @@ -83,19 +83,6 @@ get_next: if (avctx->codec_id != AV_CODEC_ID_AAC) { avctx->sample_rate = s->sample_rate; - /* (E-)AC-3: allow downmixing to stereo or mono */ - if (s->channels > 1 && - avctx->request_channel_layout == AV_CH_LAYOUT_MONO) { - avctx->channels = 1; - avctx->channel_layout = AV_CH_LAYOUT_MONO; - } else if (s->channels > 2 && - avctx->request_channel_layout == AV_CH_LAYOUT_STEREO) { - avctx->channels = 2; - avctx->channel_layout = AV_CH_LAYOUT_STEREO; - } else { - avctx->channels = s->channels; - avctx->channel_layout = s->channel_layout; - } s1->duration = s->samples; avctx->audio_service_type = s->service_type; } -- 2.12.0 _______________________________________________ libav-devel mailing list libav-devel@libav.org https://lists.libav.org/mailman/listinfo/libav-devel