Bug 1329386 - Fallback to WMF decoding if the OOP decoder fails. r=jya
authorMatt Woodrow <mwoodrow@mozilla.com>
Thu, 19 Jan 2017 12:35:44 +1300
changeset 330085 53c968150a5ec678e50ad4797102b8f94828cf63
parent 330084 85d46919b0ea62b39d76f3a9d3a9e93fb7d6e956
child 330086 5afe688be64c126cf691b9f2ff6e4cd9dfab476f
push id31230
push usercbook@mozilla.com
push dateThu, 19 Jan 2017 15:10:50 +0000
treeherdermozilla-central@a3978751f451 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersjya
bugs1329386
milestone53.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1329386 - Fallback to WMF decoding if the OOP decoder fails. r=jya
dom/media/ipc/RemoteVideoDecoder.cpp
--- a/dom/media/ipc/RemoteVideoDecoder.cpp
+++ b/dom/media/ipc/RemoteVideoDecoder.cpp
@@ -159,17 +159,17 @@ RemoteDecoderModule::DecoderNeedsConvers
 }
 
 already_AddRefed<MediaDataDecoder>
 RemoteDecoderModule::CreateVideoDecoder(const CreateDecoderParams& aParams)
 {
   if (!MediaPrefs::PDMUseGPUDecoder() ||
       !aParams.mKnowsCompositor ||
       aParams.mKnowsCompositor->GetTextureFactoryIdentifier().mParentProcessType != GeckoProcessType_GPU) {
-    return nullptr;
+    return mWrapped->CreateVideoDecoder(aParams);
   }
 
   MediaDataDecoderCallback* callback = aParams.mCallback;
   MOZ_ASSERT(callback->OnReaderTaskQueue());
   RefPtr<RemoteVideoDecoder> object = new RemoteVideoDecoder(callback);
 
   SynchronousTask task("InitIPDL");
   bool success;