mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-12-23 12:43:46 +02:00
swresample/rematrix: treat 22.2 as 5.1 (back) when mixing
Only this sub-set of channels actually follows the bit mask order in the official 22.2 channel mapping. Additionally, the 5.1 channels are there for backwards compatibility with the previous system. This enables the utilization of 22.2 content until a proper down/up matrix is added into swresample.
This commit is contained in:
parent
2fd8add1ba
commit
f5390a9f86
@ -141,6 +141,16 @@ av_cold int swr_build_matrix(uint64_t in_ch_layout_param, uint64_t out_ch_layout
|
||||
)
|
||||
in_ch_layout = AV_CH_LAYOUT_STEREO;
|
||||
|
||||
if (in_ch_layout == AV_CH_LAYOUT_22POINT2 &&
|
||||
out_ch_layout != AV_CH_LAYOUT_22POINT2) {
|
||||
in_ch_layout = AV_CH_LAYOUT_5POINT1_BACK;
|
||||
av_get_channel_layout_string(buf, sizeof(buf), -1, in_ch_layout);
|
||||
av_log(log_context, AV_LOG_WARNING,
|
||||
"Full-on remixing from 22.2 has not yet been implemented! "
|
||||
"Processing the input as '%s'\n",
|
||||
buf);
|
||||
}
|
||||
|
||||
if(!sane_layout(in_ch_layout)){
|
||||
av_get_channel_layout_string(buf, sizeof(buf), -1, in_ch_layout_param);
|
||||
av_log(log_context, AV_LOG_ERROR, "Input channel layout '%s' is not supported\n", buf);
|
||||
|
Loading…
Reference in New Issue
Block a user