summaryrefslogtreecommitdiff
path: root/Source/Core/AudioCommon/NullSoundStream.cpp
diff options
context:
space:
mode:
authorJasper St. Pierre <jstpierre@mecheye.net>2013-12-07 15:14:29 -0500
committerJasper St. Pierre <jstpierre@mecheye.net>2013-12-31 14:03:19 -0500
commit34692ab826abc8f8faa61bdb2280b742424528f1 (patch)
treeb0eedc645badbea316ff59c125eaf808b28777ec /Source/Core/AudioCommon/NullSoundStream.cpp
parent43e618682e8093602fc83dfa902ee7ae3fd3a4f6 (diff)
Remove unnecessary Src/ folders
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..99bf8aae4b
--- /dev/null
+++ b/Source/Core/AudioCommon/NullSoundStream.cpp
@@ -0,0 +1,41 @@
+// Copyright 2013 Dolphin Emulator Project
+// Licensed under GPLv2
+// Refer to the license.txt file included.
+
+#include "NullSoundStream.h"
+#include "../Core/HW/SystemTimers.h"
+#include "../Core/HW/AudioInterface.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()
+{
+}