From: Carl Hetherington Date: Sun, 15 Jan 2023 20:49:39 +0000 (+0100) Subject: Use MCASoundField::STEREO (20) for stereo DCPs. X-Git-Tag: v2.16.41~2 X-Git-Url: https://git.carlh.net/gitweb/?p=dcpomatic.git;a=commitdiff_plain;h=469b5c52512d16bf1dade0f010bb028816d640f5 Use MCASoundField::STEREO (20) for stereo DCPs. --- diff --git a/cscript b/cscript index fd2e97ae5..a4c3606f7 100644 --- a/cscript +++ b/cscript @@ -457,7 +457,7 @@ def dependencies(target, options): # Use distro-provided FFmpeg on Arch deps = [] - deps.append(('libdcp', 'v1.8.52')) + deps.append(('libdcp', 'v1.8.53')) deps.append(('libsub', 'v1.6.42')) deps.append(('leqm-nrt', '93ae9e6')) deps.append(('rtaudio', 'f619b76')) diff --git a/src/lib/writer.cc b/src/lib/writer.cc index 2e732c280..f7665a7a7 100644 --- a/src/lib/writer.cc +++ b/src/lib/writer.cc @@ -657,14 +657,17 @@ Writer::finish (boost::filesystem::path output_dcp) cpl->set_sign_language_video_language (*film()->sign_language_video_language()); } - auto ac = film()->mapped_audio_channels(); - dcp::MCASoundField field = ( - find(ac.begin(), ac.end(), static_cast(dcp::Channel::BSL)) != ac.end() || - find(ac.begin(), ac.end(), static_cast(dcp::Channel::BSR)) != ac.end() - ) ? dcp::MCASoundField::SEVEN_POINT_ONE : dcp::MCASoundField::FIVE_POINT_ONE; + dcp::MCASoundField field; + if (film()->audio_channels() == 2) { + field = dcp::MCASoundField::STEREO; + } else if (film()->audio_channels() <= 6) { + field = dcp::MCASoundField::FIVE_POINT_ONE; + } else { + field = dcp::MCASoundField::SEVEN_POINT_ONE; + } dcp::MainSoundConfiguration msc (field, film()->audio_channels()); - for (auto i: ac) { + for (auto i: film()->mapped_audio_channels()) { if (static_cast(i) < film()->audio_channels()) { msc.set_mapping (i, static_cast(i)); }