summaryrefslogtreecommitdiff
path: root/src/lib
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib')
-rw-r--r--src/lib/film.cc8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/lib/film.cc b/src/lib/film.cc
index 0b48bf7b1..ed7d4cb51 100644
--- a/src/lib/film.cc
+++ b/src/lib/film.cc
@@ -437,6 +437,14 @@ Film::read_metadata ()
_signed = f.optional_bool_child("Signed").get_value_or (true);
_encrypted = f.bool_child ("Encrypted");
_audio_channels = f.number_child<int> ("AudioChannels");
+ /* We used to allow odd numbers (and zero) channels, but it's just not worth
+ the pain.
+ */
+ if (_audio_channels == 0) {
+ _audio_channels = 2;
+ } else if ((_audio_channels % 2) == 1) {
+ _audio_channels++;
+ }
_sequence_video = f.bool_child ("SequenceVideo");
_three_d = f.bool_child ("ThreeD");
_interop = f.bool_child ("Interop");