From 0fa33915da6255cf7460758197eaea7e43353543 Mon Sep 17 00:00:00 2001 From: ouwou <26526779+ouwou@users.noreply.github.com> Date: Wed, 31 Aug 2022 01:51:02 -0400 Subject: rudimentary voice implementation --- src/audio/manager.hpp | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 src/audio/manager.hpp (limited to 'src/audio/manager.hpp') diff --git a/src/audio/manager.hpp b/src/audio/manager.hpp new file mode 100644 index 0000000..ffe7ae9 --- /dev/null +++ b/src/audio/manager.hpp @@ -0,0 +1,35 @@ +#pragma once +#include +#include +#include +#include +#include +#include + +class AudioManager { +public: + AudioManager(); + ~AudioManager(); + + void FeedMeOpus(const std::vector &data); + + [[nodiscard]] bool OK() const; + +private: + friend void data_callback(ma_device *, void *, const void *, ma_uint32); + + std::atomic m_active; + void testthread(); + std::thread m_thread; + + bool m_ok; + + ma_engine m_engine; + ma_device m_device; + ma_device_config m_device_config; + + std::mutex m_dumb_mutex; + std::queue m_dumb; + + OpusDecoder *m_opus_decoder; +}; -- cgit v1.2.3