summaryrefslogtreecommitdiffstats
path: root/src/audio_core
diff options
context:
space:
mode:
authorDavid Marcec <dmarcecguzman@gmail.com>2018-09-23 14:32:01 +0200
committerDavid Marcec <dmarcecguzman@gmail.com>2018-09-23 14:32:01 +0200
commitc461188f516173302b1aa97bbe4ee358d776b8c8 (patch)
tree2699c6c0d34f56908e950a65d038af2824cc6b13 /src/audio_core
parentMerge pull request #1378 from lioncash/thread (diff)
downloadyuzu-c461188f516173302b1aa97bbe4ee358d776b8c8.tar
yuzu-c461188f516173302b1aa97bbe4ee358d776b8c8.tar.gz
yuzu-c461188f516173302b1aa97bbe4ee358d776b8c8.tar.bz2
yuzu-c461188f516173302b1aa97bbe4ee358d776b8c8.tar.lz
yuzu-c461188f516173302b1aa97bbe4ee358d776b8c8.tar.xz
yuzu-c461188f516173302b1aa97bbe4ee358d776b8c8.tar.zst
yuzu-c461188f516173302b1aa97bbe4ee358d776b8c8.zip
Diffstat (limited to 'src/audio_core')
-rw-r--r--src/audio_core/audio_renderer.cpp4
-rw-r--r--src/audio_core/audio_renderer.h1
-rw-r--r--src/audio_core/stream.cpp5
-rw-r--r--src/audio_core/stream.h3
4 files changed, 13 insertions, 0 deletions
diff --git a/src/audio_core/audio_renderer.cpp b/src/audio_core/audio_renderer.cpp
index 83b75e61f..521b19ff7 100644
--- a/src/audio_core/audio_renderer.cpp
+++ b/src/audio_core/audio_renderer.cpp
@@ -79,6 +79,10 @@ u32 AudioRenderer::GetMixBufferCount() const {
return worker_params.mix_buffer_count;
}
+u32 AudioRenderer::GetState() const {
+ return stream->GetState();
+}
+
std::vector<u8> AudioRenderer::UpdateAudioRenderer(const std::vector<u8>& input_params) {
// Copy UpdateDataHeader struct
UpdateDataHeader config{};
diff --git a/src/audio_core/audio_renderer.h b/src/audio_core/audio_renderer.h
index 2c4f5ab75..be923ee65 100644
--- a/src/audio_core/audio_renderer.h
+++ b/src/audio_core/audio_renderer.h
@@ -170,6 +170,7 @@ public:
u32 GetSampleRate() const;
u32 GetSampleCount() const;
u32 GetMixBufferCount() const;
+ u32 GetState() const;
private:
class VoiceState;
diff --git a/src/audio_core/stream.cpp b/src/audio_core/stream.cpp
index 449db2416..ee4aa98af 100644
--- a/src/audio_core/stream.cpp
+++ b/src/audio_core/stream.cpp
@@ -49,9 +49,14 @@ void Stream::Play() {
}
void Stream::Stop() {
+ state = State::Stopped;
ASSERT_MSG(false, "Unimplemented");
}
+u32 Stream::GetState() const {
+ return static_cast<u32>(state);
+}
+
s64 Stream::GetBufferReleaseCycles(const Buffer& buffer) const {
const std::size_t num_samples{buffer.GetSamples().size() / GetNumChannels()};
return CoreTiming::usToCycles((static_cast<u64>(num_samples) * 1000000) / sample_rate);
diff --git a/src/audio_core/stream.h b/src/audio_core/stream.h
index 27db1112f..43eca74e1 100644
--- a/src/audio_core/stream.h
+++ b/src/audio_core/stream.h
@@ -72,6 +72,9 @@ public:
/// Gets the number of channels
u32 GetNumChannels() const;
+ /// Get the state
+ u32 GetState() const;
+
private:
/// Current state of the stream
enum class State {