summaryrefslogtreecommitdiff
path: root/Source/Core/AudioCommon/CubebStream.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Source/Core/AudioCommon/CubebStream.cpp')
-rw-r--r--Source/Core/AudioCommon/CubebStream.cpp17
1 files changed, 14 insertions, 3 deletions
diff --git a/Source/Core/AudioCommon/CubebStream.cpp b/Source/Core/AudioCommon/CubebStream.cpp
index a12f0fda4b..c2f3cc30cb 100644
--- a/Source/Core/AudioCommon/CubebStream.cpp
+++ b/Source/Core/AudioCommon/CubebStream.cpp
@@ -76,12 +76,23 @@ bool CubebStream::Start()
return true;
}
-void CubebStream::Stop()
+void CubebStream::SetRunning(bool running)
{
- if (cubeb_stream_stop(m_stream) != CUBEB_OK)
+ if (running)
+ {
+ if (cubeb_stream_start(m_stream) != CUBEB_OK)
+ ERROR_LOG(AUDIO, "Error starting cubeb stream");
+ }
+ else
{
- ERROR_LOG(AUDIO, "Error stopping cubeb stream");
+ if (cubeb_stream_stop(m_stream) != CUBEB_OK)
+ ERROR_LOG(AUDIO, "Error stopping cubeb stream");
}
+}
+
+void CubebStream::Stop()
+{
+ SetRunning(false);
cubeb_stream_destroy(m_stream);
m_ctx.reset();
}