X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Flib%2Faudio_mapping.cc;h=b8aa6249f5faf11697331bb15ff6236a1e0b61c9;hb=bb3a9a12116a4b2a5bc1fef38e73853f576a773a;hp=74b33aa358c5e79ae8cbfc4ebef53def0abd9ca5;hpb=9cacbd6bb24d04c1b4d2b1eae313687dda4fe63b;p=dcpomatic.git diff --git a/src/lib/audio_mapping.cc b/src/lib/audio_mapping.cc index 74b33aa35..b8aa6249f 100644 --- a/src/lib/audio_mapping.cc +++ b/src/lib/audio_mapping.cc @@ -288,3 +288,18 @@ AudioMapping::unmap_all () } } } + + +void +AudioMapping::take_from(AudioMapping const& other) +{ + auto input = std::min(input_channels(), other.input_channels()); + auto output = std::min(output_channels(), other.output_channels()); + + for (auto i = 0; i < input; ++i) { + for (auto o = 0; o < output; ++o) { + set(i, o, other.get(i, o)); + } + } +} +