mirror of https://git.ffmpeg.org/ffmpeg.git
avfilter/af_surround: Check output format
Fixes: CID1516994 Out-of-bounds access Fixes: CID1516996 Out-of-bounds access Fixes: CID1516999 Out-of-bounds access Sponsored-by: Sovereign Tech Fund Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
This commit is contained in:
parent
43b62b7e0c
commit
22ee55a1da
|
@ -1123,6 +1123,31 @@ static av_cold int init(AVFilterContext *ctx)
|
||||||
s->create_lfe = av_channel_layout_index_from_channel(&s->out_ch_layout,
|
s->create_lfe = av_channel_layout_index_from_channel(&s->out_ch_layout,
|
||||||
AV_CHAN_LOW_FREQUENCY) >= 0;
|
AV_CHAN_LOW_FREQUENCY) >= 0;
|
||||||
|
|
||||||
|
switch (out_channel_layout) {
|
||||||
|
case AV_CH_LAYOUT_MONO:
|
||||||
|
case AV_CH_LAYOUT_STEREO:
|
||||||
|
case AV_CH_LAYOUT_2POINT1:
|
||||||
|
case AV_CH_LAYOUT_2_1:
|
||||||
|
case AV_CH_LAYOUT_2_2:
|
||||||
|
case AV_CH_LAYOUT_SURROUND:
|
||||||
|
case AV_CH_LAYOUT_3POINT1:
|
||||||
|
case AV_CH_LAYOUT_QUAD:
|
||||||
|
case AV_CH_LAYOUT_4POINT0:
|
||||||
|
case AV_CH_LAYOUT_4POINT1:
|
||||||
|
case AV_CH_LAYOUT_5POINT0:
|
||||||
|
case AV_CH_LAYOUT_5POINT1:
|
||||||
|
case AV_CH_LAYOUT_5POINT0_BACK:
|
||||||
|
case AV_CH_LAYOUT_5POINT1_BACK:
|
||||||
|
case AV_CH_LAYOUT_6POINT0:
|
||||||
|
case AV_CH_LAYOUT_6POINT1:
|
||||||
|
case AV_CH_LAYOUT_7POINT0:
|
||||||
|
case AV_CH_LAYOUT_7POINT1:
|
||||||
|
case AV_CH_LAYOUT_OCTAGONAL:
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
goto fail;
|
||||||
|
}
|
||||||
|
|
||||||
switch (in_channel_layout) {
|
switch (in_channel_layout) {
|
||||||
case AV_CH_LAYOUT_STEREO:
|
case AV_CH_LAYOUT_STEREO:
|
||||||
s->filter = filter_stereo;
|
s->filter = filter_stereo;
|
||||||
|
|
Loading…
Reference in New Issue