2019-10-10 16:20:10 +00:00
|
|
|
#pragma once
|
|
|
|
#include "common/audio_stream.h"
|
|
|
|
#include <cstdint>
|
|
|
|
|
|
|
|
class SDLAudioStream final : public AudioStream
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
SDLAudioStream();
|
|
|
|
~SDLAudioStream();
|
|
|
|
|
2020-02-15 15:14:35 +00:00
|
|
|
static std::unique_ptr<SDLAudioStream> Create();
|
|
|
|
|
2019-10-10 16:20:10 +00:00
|
|
|
protected:
|
|
|
|
bool OpenDevice() override;
|
|
|
|
void PauseDevice(bool paused) override;
|
|
|
|
void CloseDevice() override;
|
2019-12-23 07:02:11 +00:00
|
|
|
void BufferAvailable() override;
|
2019-10-10 16:20:10 +00:00
|
|
|
|
|
|
|
static void AudioCallback(void* userdata, uint8_t* stream, int len);
|
|
|
|
|
|
|
|
bool m_is_open = false;
|
|
|
|
};
|