49 hi_axiom(loop::main().on_thread());
63 virtual
void update_state() noexcept = 0;
67 [[nodiscard]] virtual audio_device_state state() const noexcept = 0;
69 [[nodiscard]] virtual audio_direction direction() const noexcept = 0;
75 [[nodiscard]] virtual
bool exclusive() const noexcept = 0;
91 virtual
void set_exclusive(
bool exclusive) noexcept = 0;
98 [[nodiscard]] virtual
double sample_rate() const noexcept = 0;
103 virtual
void set_sample_rate(
double sample_rate) noexcept = 0;
109 [[nodiscard]] virtual hi::speaker_mapping input_speaker_mapping() const noexcept = 0;
115 virtual
void set_input_speaker_mapping(hi::speaker_mapping speaker_mapping) noexcept = 0;
121 [[nodiscard]] virtual
std::vector<hi::speaker_mapping> available_input_speaker_mappings() const noexcept = 0;
127 [[nodiscard]] virtual hi::speaker_mapping output_speaker_mapping() const noexcept = 0;
133 virtual
void set_output_speaker_mapping(hi::speaker_mapping speaker_mapping) noexcept = 0;
139 [[nodiscard]] virtual
std::vector<hi::speaker_mapping> available_output_speaker_mappings() const noexcept = 0;
std::string name() const noexcept
Get a user friendly name of the audio device.
Definition audio_device.hpp:47
std::string const & id() const noexcept
The nonephemeral unique id that for an audio device on the system.
Definition audio_device.hpp:38