Add option for enabling/disabling automatic device scan
Some checks are pending
CD / ${{ matrix.platform.name }} ${{ matrix.config.name }} (map[flags:-DBUILD_SHARED_LIBS=FALSE name:Static], map[artifact_name:linux32 flags:32 name:Linux GCC 32 os:ubuntu-latest]) (push) Waiting to run
CD / ${{ matrix.platform.name }} ${{ matrix.config.name }} (map[flags:-DBUILD_SHARED_LIBS=FALSE name:Static], map[artifact_name:linux64 flags:64 name:Linux GCC x64 os:ubuntu-latest]) (push) Waiting to run
CD / ${{ matrix.platform.name }} ${{ matrix.config.name }} (map[flags:-DBUILD_SHARED_LIBS=FALSE name:Static], map[artifact_name:linuxarm32 flags:arm32 name:Linux GCC ARM 32 os:ubuntu-latest]) (push) Waiting to run
CD / ${{ matrix.platform.name }} ${{ matrix.config.name }} (map[flags:-DBUILD_SHARED_LIBS=FALSE name:Static], map[artifact_name:linuxarm64 flags:arm64 name:Linux GCC ARM 64 os:ubuntu-latest]) (push) Waiting to run
CD / ${{ matrix.platform.name }} ${{ matrix.config.name }} (map[flags:-DBUILD_SHARED_LIBS=FALSE name:Static], map[artifact_name:macos name:macOS Apple Silicon os:macos-14]) (push) Waiting to run
CD / ${{ matrix.platform.name }} ${{ matrix.config.name }} (map[flags:-DBUILD_SHARED_LIBS=FALSE name:Static], map[artifact_name:win32 flags:-A Win32 -DCMAKE_PARALLEL_MSVC=TRUE name:Windows VS2022 Win32 os:windows-2022]) (push) Waiting to run
CD / ${{ matrix.platform.name }} ${{ matrix.config.name }} (map[flags:-DBUILD_SHARED_LIBS=FALSE name:Static], map[artifact_name:win64 flags:-A x64 -DCMAKE_PARALLEL_MSVC=TRUE name:Windows VS2022 x64 os:windows-2022]) (push) Waiting to run
CD / ${{ matrix.platform.name }} ${{ matrix.config.name }} (map[flags:-DBUILD_SHARED_LIBS=FALSE name:Static], map[artifact_name:winarm64 flags:-A ARM64 -DCMAKE_PARALLEL_MSVC=TRUE name:Windows VS2022 ARM os:windows-2022]) (push) Waiting to run
CD / Create Pi Mono Setup (push) Blocked by required conditions
CD / Publishing (push) Blocked by required conditions

This commit is contained in:
Lorenzooone
2025-05-02 19:16:41 +02:00
parent 3363c9a2c7
commit 44b68f2787
6 changed files with 42 additions and 12 deletions

View File

@@ -1,4 +1,5 @@
#include "audio_data.hpp"
#include "utils.hpp"
int searchAudioDevice(std::string device_name, std::vector<std::string> &audio_devices) {
int index = -1;
@@ -20,6 +21,11 @@ void AudioData::reset() {
this->mode_output = AUDIO_MODE_LOW_LATENCY;
this->restart_request = false;
this->text_updated = false;
#if (defined(RASPI) || defined(ANDROID_COMPILATION))
this->periodic_output_audio_device_scan = false;
#else
this->periodic_output_audio_device_scan = true;
#endif
this->output_device.preference_requested = false;
this->output_device.preferred = "";
}
@@ -74,6 +80,10 @@ void AudioData::change_audio_mute() {
this->update_text("Volume: " + std::to_string(this->get_final_volume()) + "%");
}
void AudioData::change_auto_device_scan() {
this->set_auto_device_scan(!this->periodic_output_audio_device_scan);
}
void AudioData::request_audio_restart() {
this->restart_request = true;
this->update_text("Restarting audio...");
@@ -189,11 +199,19 @@ bool AudioData::get_mute() {
return this->mute;
}
bool AudioData::get_auto_device_scan() {
return this->periodic_output_audio_device_scan;
}
bool AudioData::load_audio_data(std::string key, std::string value) {
if (key == this->mute_str) {
this->set_audio_mute(std::stoi(value));
return true;
}
if (key == this->auto_device_scan_str) {
this->set_auto_device_scan(std::stoi(value));
return true;
}
if (key == this->volume_str) {
this->set_audio_volume(std::stoi(value));
return true;
@@ -224,6 +242,7 @@ bool AudioData::load_audio_data(std::string key, std::string value) {
std::string AudioData::save_audio_data() {
std::string out_str = "";
out_str += this->mute_str + "=" + std::to_string(this->mute) + "\n";
out_str += this->auto_device_scan_str + "=" + std::to_string(this->periodic_output_audio_device_scan) + "\n";
out_str += this->volume_str + "=" + std::to_string(this->volume) + "\n";
out_str += this->max_audio_latency_str + "=" + std::to_string(this->max_audio_latency) + "\n";
out_str += this->output_type_str + "=" + std::to_string(this->output_type) + "\n";
@@ -268,3 +287,7 @@ void AudioData::set_audio_volume(int new_volume) {
void AudioData::set_audio_mute(bool new_mute) {
this->mute = new_mute;
}
void AudioData::set_auto_device_scan(bool new_value) {
this->periodic_output_audio_device_scan = new_value;
}