summaryrefslogtreecommitdiff
path: root/Source/WebCore/Modules/webaudio/MediaElementAudioSourceNode.cpp
diff options
context:
space:
mode:
authorLorry Tar Creator <lorry-tar-importer@lorry>2017-06-27 06:07:23 +0000
committerLorry Tar Creator <lorry-tar-importer@lorry>2017-06-27 06:07:23 +0000
commit1bf1084f2b10c3b47fd1a588d85d21ed0eb41d0c (patch)
tree46dcd36c86e7fbc6e5df36deb463b33e9967a6f7 /Source/WebCore/Modules/webaudio/MediaElementAudioSourceNode.cpp
parent32761a6cee1d0dee366b885b7b9c777e67885688 (diff)
downloadWebKitGtk-tarball-master.tar.gz
Diffstat (limited to 'Source/WebCore/Modules/webaudio/MediaElementAudioSourceNode.cpp')
-rw-r--r--Source/WebCore/Modules/webaudio/MediaElementAudioSourceNode.cpp18
1 files changed, 9 insertions, 9 deletions
diff --git a/Source/WebCore/Modules/webaudio/MediaElementAudioSourceNode.cpp b/Source/WebCore/Modules/webaudio/MediaElementAudioSourceNode.cpp
index 0e50258ac..77c7fbccf 100644
--- a/Source/WebCore/Modules/webaudio/MediaElementAudioSourceNode.cpp
+++ b/Source/WebCore/Modules/webaudio/MediaElementAudioSourceNode.cpp
@@ -40,13 +40,13 @@ const unsigned maxSampleRate = 192000;
namespace WebCore {
-PassRefPtr<MediaElementAudioSourceNode> MediaElementAudioSourceNode::create(AudioContext* context, HTMLMediaElement* mediaElement)
+Ref<MediaElementAudioSourceNode> MediaElementAudioSourceNode::create(AudioContext& context, HTMLMediaElement& mediaElement)
{
- return adoptRef(new MediaElementAudioSourceNode(context, mediaElement));
+ return adoptRef(*new MediaElementAudioSourceNode(context, mediaElement));
}
-MediaElementAudioSourceNode::MediaElementAudioSourceNode(AudioContext* context, HTMLMediaElement* mediaElement)
- : AudioNode(context, context->sampleRate())
+MediaElementAudioSourceNode::MediaElementAudioSourceNode(AudioContext& context, HTMLMediaElement& mediaElement)
+ : AudioNode(context, context.sampleRate())
, m_mediaElement(mediaElement)
, m_sourceNumberOfChannels(0)
, m_sourceSampleRate(0)
@@ -61,7 +61,7 @@ MediaElementAudioSourceNode::MediaElementAudioSourceNode(AudioContext* context,
MediaElementAudioSourceNode::~MediaElementAudioSourceNode()
{
- m_mediaElement->setAudioSourceNode(0);
+ m_mediaElement->setAudioSourceNode(nullptr);
uninitialize();
}
@@ -92,7 +92,7 @@ void MediaElementAudioSourceNode::setFormat(size_t numberOfChannels, float sourc
{
// The context must be locked when changing the number of output channels.
- AudioContext::AutoLocker contextLocker(*context());
+ AudioContext::AutoLocker contextLocker(context());
// Do any necesssary re-configuration to the output's number of channels.
output(0)->setNumberOfChannels(numberOfChannels);
@@ -104,7 +104,7 @@ void MediaElementAudioSourceNode::process(size_t numberOfFrames)
{
AudioBus* outputBus = output(0)->bus();
- if (!mediaElement() || !m_sourceNumberOfChannels || !m_sourceSampleRate) {
+ if (!m_sourceNumberOfChannels || !m_sourceSampleRate) {
outputBus->zero();
return;
}
@@ -112,14 +112,14 @@ void MediaElementAudioSourceNode::process(size_t numberOfFrames)
// Use a std::try_to_lock to avoid contention in the real-time audio thread.
// If we fail to acquire the lock then the HTMLMediaElement must be in the middle of
// reconfiguring its playback engine, so we output silence in this case.
- std::unique_lock<std::mutex> lock(m_processMutex, std::try_to_lock);
+ std::unique_lock<Lock> lock(m_processMutex, std::try_to_lock);
if (!lock.owns_lock()) {
// We failed to acquire the lock.
outputBus->zero();
return;
}
- if (AudioSourceProvider* provider = mediaElement()->audioSourceProvider()) {
+ if (AudioSourceProvider* provider = mediaElement().audioSourceProvider()) {
if (m_multiChannelResampler.get()) {
ASSERT(m_sourceSampleRate != sampleRate());
m_multiChannelResampler->process(provider, outputBus, numberOfFrames);