Commit 677c804a authored by nu774's avatar nu774 Committed by Luca Barbato

aac: correctly map 7.1ch-wide AAC from FDK AAC encoder

FDK AAC encoder outputs SCE(front)+CPE(front)+CPE(back)+CPE(back) on
MODE_7_1_REAR_SURROUND configuration.
Since decoder couldn't properly map 4 back channels, decoding failed
unless -request_channel_layout 0x8000000000000000 has been specified.
Now we treat first CPE(back) as CPE(side) on channel mapping.
Signed-off-by: 's avatarLuca Barbato <lu_zero@gentoo.org>
parent 252d6200
......@@ -291,6 +291,11 @@ static uint64_t sniff_channel_order(uint8_t (*layout_map)[3], int tags)
if (num_back_channels < 0)
return 0;
if (num_side_channels == 0 && num_back_channels >= 4) {
num_side_channels = 2;
num_back_channels -= 2;
}
i = 0;
if (num_front_channels & 1) {
e2c_vec[i] = (struct elem_to_channel) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment