Bug 1431221 - P2. Have mac AAC decoder use proper output layout. r=padenot draft
authorJean-Yves Avenard <jyavenard@mozilla.com>
Mon, 22 Jan 2018 15:13:05 +0100
changeset 771684 7641dd7313d1b547c55b1a5800c5d8a382b1f4b8
parent 771683 7991d8de60c1b9c73ffac12a4294a94727aa06aa
child 771685 9ffa38de6dd1c4471a257c100cebe2115c44831f
push id103752
push userbmo:jyavenard@mozilla.com
push dateFri, 23 Mar 2018 17:52:32 +0000
reviewerspadenot
bugs1431221
milestone61.0a1
Bug 1431221 - P2. Have mac AAC decoder use proper output layout. r=padenot We previously made no difference between 3.1, 2F2 or 4.0... MozReview-Commit-ID: Bt7UVAT5uWf
dom/media/platforms/apple/AppleATDecoder.cpp
--- a/dom/media/platforms/apple/AppleATDecoder.cpp
+++ b/dom/media/platforms/apple/AppleATDecoder.cpp
@@ -308,18 +308,19 @@ AppleATDecoder::DecodeSample(MediaRawDat
       duration.ToSeconds());
 #endif
 
   AudioSampleBuffer data(outputData.Elements(), outputData.Length());
   if (!data.Data()) {
     return NS_ERROR_OUT_OF_MEMORY;
   }
   if (mChannelLayout && !mAudioConverter) {
-    AudioConfig in(*mChannelLayout.get(), rate);
-    AudioConfig out(channels, rate);
+    AudioConfig in(*mChannelLayout, rate);
+    AudioConfig out(AudioConfig::ChannelLayout::SMPTEDefault(*mChannelLayout),
+                    rate);
     if (!in.IsValid() || !out.IsValid()) {
       return MediaResult(NS_ERROR_DOM_MEDIA_DECODE_ERR,
                          RESULT_DETAIL("Invalid audio config"));
     }
     mAudioConverter = MakeUnique<AudioConverter>(in, out);
   }
   if (mAudioConverter) {
     MOZ_ASSERT(mAudioConverter->CanWorkInPlace());