Duckstation/src/frontend-common/sdl_audio_stream.h
Connor McLaughlin 531c3ad5fa AudioStream: Replace buffer queue with ring buffer
Should achieve a decent overall minimum latency reduction.
2020-06-07 01:22:03 +10:00

25 lines
534 B
C++

#pragma once
#include "common/audio_stream.h"
#include <cstdint>
class SDLAudioStream final : public AudioStream
{
public:
SDLAudioStream();
~SDLAudioStream();
static std::unique_ptr<SDLAudioStream> Create();
protected:
ALWAYS_INLINE bool IsOpen() const { return (m_device_id != 0); }
bool OpenDevice() override;
void PauseDevice(bool paused) override;
void CloseDevice() override;
void FramesAvailable() override;
static void AudioCallback(void* userdata, uint8_t* stream, int len);
u32 m_device_id = 0;
};