summaryrefslogtreecommitdiffstats
path: root/dom/media
diff options
context:
space:
mode:
Diffstat (limited to 'dom/media')
-rw-r--r--dom/media/MediaCache.cpp2
-rw-r--r--dom/media/MediaStreamGraphImpl.h2
-rw-r--r--dom/media/platforms/PDMFactory.h8
-rw-r--r--dom/media/webaudio/blink/HRTFDatabaseLoader.cpp3
-rw-r--r--dom/media/webaudio/blink/HRTFDatabaseLoader.h9
5 files changed, 17 insertions, 7 deletions
diff --git a/dom/media/MediaCache.cpp b/dom/media/MediaCache.cpp
index 37399f851..64523afcb 100644
--- a/dom/media/MediaCache.cpp
+++ b/dom/media/MediaCache.cpp
@@ -277,7 +277,7 @@ protected:
};
struct BlockOwner {
- constexpr BlockOwner() {}
+ BlockOwner() {}
// The stream that owns this block, or null if the block is free.
MediaCacheStream* mStream = nullptr;
diff --git a/dom/media/MediaStreamGraphImpl.h b/dom/media/MediaStreamGraphImpl.h
index c71975493..b3d7d8701 100644
--- a/dom/media/MediaStreamGraphImpl.h
+++ b/dom/media/MediaStreamGraphImpl.h
@@ -652,7 +652,7 @@ public:
* and boolean to control if we want input/output
*/
bool mInputWanted;
- int mInputDeviceID;
+ Atomic<int> mInputDeviceID;
bool mOutputWanted;
int mOutputDeviceID;
// Maps AudioDataListeners to a usecount of streams using the listener
diff --git a/dom/media/platforms/PDMFactory.h b/dom/media/platforms/PDMFactory.h
index 2b43fa1ab..a13c99ac0 100644
--- a/dom/media/platforms/PDMFactory.h
+++ b/dom/media/platforms/PDMFactory.h
@@ -49,10 +49,10 @@ public:
void SetCDMProxy(CDMProxy* aProxy);
#endif
- static constexpr int kYUV400 = 0;
- static constexpr int kYUV420 = 1;
- static constexpr int kYUV422 = 2;
- static constexpr int kYUV444 = 3;
+ static const int kYUV400 = 0;
+ static const int kYUV420 = 1;
+ static const int kYUV422 = 2;
+ static const int kYUV444 = 3;
private:
virtual ~PDMFactory();
diff --git a/dom/media/webaudio/blink/HRTFDatabaseLoader.cpp b/dom/media/webaudio/blink/HRTFDatabaseLoader.cpp
index 090e1b217..96c53b1cd 100644
--- a/dom/media/webaudio/blink/HRTFDatabaseLoader.cpp
+++ b/dom/media/webaudio/blink/HRTFDatabaseLoader.cpp
@@ -1,5 +1,6 @@
/*
* Copyright (C) 2010 Google Inc. All rights reserved.
+ * Copyright (C) 2020 M. Straver. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
@@ -72,6 +73,7 @@ HRTFDatabaseLoader::HRTFDatabaseLoader(float sampleRate)
, m_threadLock("HRTFDatabaseLoader")
, m_databaseLoaderThread(nullptr)
, m_databaseSampleRate(sampleRate)
+ , m_databaseLoaded(false)
{
MOZ_ASSERT(NS_IsMainThread());
}
@@ -164,6 +166,7 @@ void HRTFDatabaseLoader::load()
MOZ_ASSERT(!m_hrtfDatabase.get(), "Called twice");
// Load the default HRTF database.
m_hrtfDatabase = HRTFDatabase::create(m_databaseSampleRate);
+ m_databaseLoaded = true;
// Notifies the main thread of completion. See loadAsynchronously().
Release();
}
diff --git a/dom/media/webaudio/blink/HRTFDatabaseLoader.h b/dom/media/webaudio/blink/HRTFDatabaseLoader.h
index 50a875b18..4dfbd4fc8 100644
--- a/dom/media/webaudio/blink/HRTFDatabaseLoader.h
+++ b/dom/media/webaudio/blink/HRTFDatabaseLoader.h
@@ -1,5 +1,6 @@
/*
* Copyright (C) 2010 Google Inc. All rights reserved.
+ * Copyright (C) 2020 M. Straver. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
@@ -85,7 +86,12 @@ public:
// on any thread except m_databaseLoaderThread.
void waitForLoaderThreadCompletion();
- HRTFDatabase* database() { return m_hrtfDatabase.get(); }
+ HRTFDatabase* database() {
+ if (!m_databaseLoaded) {
+ return nullptr;
+ }
+ return m_hrtfDatabase.get();
+ }
float databaseSampleRate() const { return m_databaseSampleRate; }
@@ -141,6 +147,7 @@ private:
PRThread* m_databaseLoaderThread;
float m_databaseSampleRate;
+ mozilla::Atomic<bool> m_databaseLoaded;
};
} // namespace WebCore