summaryrefslogtreecommitdiff
path: root/src/audio/miniaudio_backend.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/audio/miniaudio_backend.cc')
-rw-r--r--src/audio/miniaudio_backend.cc11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/audio/miniaudio_backend.cc b/src/audio/miniaudio_backend.cc
index d2563c5..9dd2b50 100644
--- a/src/audio/miniaudio_backend.cc
+++ b/src/audio/miniaudio_backend.cc
@@ -3,7 +3,8 @@
// Moved from audio.cc to enable backend abstraction for testing.
#include "miniaudio_backend.h"
-#include "synth.h"
+#include "audio.h"
+#include "ring_buffer.h"
#include <stdio.h>
// Static callback for miniaudio (C API requirement)
@@ -13,7 +14,13 @@ void MiniaudioBackend::audio_callback(ma_device* pDevice, void* pOutput,
(void)pDevice;
(void)pInput;
float* fOutput = (float*)pOutput;
- synth_render(fOutput, (int)frameCount);
+
+ // Read from ring buffer instead of calling synth directly
+ AudioRingBuffer* ring_buffer = audio_get_ring_buffer();
+ if (ring_buffer != nullptr) {
+ const int samples_to_read = (int)frameCount * 2; // Stereo
+ ring_buffer->read(fOutput, samples_to_read);
+ }
}
MiniaudioBackend::MiniaudioBackend() : initialized_(false) {