#pragma once #include #include #include #include namespace LibAudio { static constexpr BAN::StringView s_audio_server_socket = "/tmp/audio-server.socket"_sv; struct AudioBuffer { using sample_t = double; uint32_t sample_rate; uint32_t channels; uint32_t capacity; BAN::Atomic tail { 0 }; BAN::Atomic head { 0 }; sample_t samples[/* capacity */]; }; class Audio { BAN_NON_COPYABLE(Audio); public: static BAN::ErrorOr