summaryrefslogtreecommitdiff
path: root/Source/Core/AudioCommon/NullSoundStream.cpp
diff options
context:
space:
mode:
authorJules Blok <jules.blok@gmail.com>2015-06-10 00:00:12 +0200
committerJules Blok <jules.blok@gmail.com>2015-06-10 00:00:12 +0200
commit7dfced21a2e5aac7195e0e1ad76468e30306766b (patch)
treebd671b639d3d911460b767caabad8fc8a759a6bf /Source/Core/AudioCommon/NullSoundStream.cpp
parentc25be031fc1031d795157d8344b87b7841145197 (diff)
parent7b0a65e295c784f9d573f2ef52d4e2a7b9bb2889 (diff)
Merge branch 'master' into stable
Diffstat (limited to 'Source/Core/AudioCommon/NullSoundStream.cpp')
-rw-r--r--Source/Core/AudioCommon/NullSoundStream.cpp41
1 files changed, 41 insertions, 0 deletions
diff --git a/Source/Core/AudioCommon/NullSoundStream.cpp b/Source/Core/AudioCommon/NullSoundStream.cpp
new file mode 100644
index 0000000000..dab10aaf9c
--- /dev/null
+++ b/Source/Core/AudioCommon/NullSoundStream.cpp
@@ -0,0 +1,41 @@
+// Copyright 2008 Dolphin Emulator Project
+// Licensed under GPLv2+
+// Refer to the license.txt file included.
+
+#include "AudioCommon/NullSoundStream.h"
+#include "Core/HW/AudioInterface.h"
+#include "Core/HW/SystemTimers.h"
+
+void NullSound::SoundLoop()
+{
+}
+
+bool NullSound::Start()
+{
+ return true;
+}
+
+void NullSound::SetVolume(int volume)
+{
+}
+
+void NullSound::Update()
+{
+ // num_samples_to_render in this update - depends on SystemTimers::AUDIO_DMA_PERIOD.
+ const u32 stereo_16_bit_size = 4;
+ const u32 dma_length = 32;
+ const u64 audio_dma_period = SystemTimers::GetTicksPerSecond() / (AudioInterface::GetAIDSampleRate() * stereo_16_bit_size / dma_length);
+ const u64 ais_samples_per_second = 48000 * stereo_16_bit_size;
+ const u64 num_samples_to_render = (audio_dma_period * ais_samples_per_second) / SystemTimers::GetTicksPerSecond();
+
+ m_mixer->Mix(realtimeBuffer, (unsigned int)num_samples_to_render);
+}
+
+void NullSound::Clear(bool mute)
+{
+ m_muted = mute;
+}
+
+void NullSound::Stop()
+{
+}