mirror of
https://github.com/shadps4-emu/shadPS4.git
synced 2025-05-17 17:05:02 +00:00
audio: Implement cubeb audio out backend. (#1895)
* audio: Implement cubeb audio out backend. * cubeb_audio: Add some additional safety checks. * cubeb_audio: Add debug logging callback. * audioout: Refactor backend ports into class. * pthread: Bump minimum stack size to fix cubeb crash. * cubeb_audio: Replace output yield loop with condvar. * common: Rename ring_buffer_base to RingBuffer.
This commit is contained in:
parent
f95803664b
commit
333f35ef25
18 changed files with 733 additions and 90 deletions
|
@ -212,6 +212,7 @@ SettingsDialog::SettingsDialog(std::span<const QString> physical_devices,
|
|||
ui->enableCompatibilityCheckBox->installEventFilter(this);
|
||||
ui->checkCompatibilityOnStartupCheckBox->installEventFilter(this);
|
||||
ui->updateCompatibilityButton->installEventFilter(this);
|
||||
ui->audioBackendComboBox->installEventFilter(this);
|
||||
|
||||
// Input
|
||||
ui->hideCursorGroupBox->installEventFilter(this);
|
||||
|
@ -306,6 +307,8 @@ void SettingsDialog::LoadValuesFromConfig() {
|
|||
toml::find_or<bool>(data, "General", "compatibilityEnabled", false));
|
||||
ui->checkCompatibilityOnStartupCheckBox->setChecked(
|
||||
toml::find_or<bool>(data, "General", "checkCompatibilityOnStartup", false));
|
||||
ui->audioBackendComboBox->setCurrentText(
|
||||
QString::fromStdString(toml::find_or<std::string>(data, "Audio", "backend", "cubeb")));
|
||||
|
||||
#ifdef ENABLE_UPDATER
|
||||
ui->updateCheckBox->setChecked(toml::find_or<bool>(data, "General", "autoUpdate", false));
|
||||
|
@ -429,6 +432,8 @@ void SettingsDialog::updateNoteTextEdit(const QString& elementName) {
|
|||
text = tr("checkCompatibilityOnStartupCheckBox");
|
||||
} else if (elementName == "updateCompatibilityButton") {
|
||||
text = tr("updateCompatibilityButton");
|
||||
} else if (elementName == "audioBackendGroupBox") {
|
||||
text = tr("audioBackendGroupBox");
|
||||
}
|
||||
|
||||
// Input
|
||||
|
@ -544,6 +549,7 @@ void SettingsDialog::UpdateSettings() {
|
|||
Config::setUpdateChannel(ui->updateComboBox->currentText().toStdString());
|
||||
Config::setCompatibilityEnabled(ui->enableCompatibilityCheckBox->isChecked());
|
||||
Config::setCheckCompatibilityOnStartup(ui->checkCompatibilityOnStartupCheckBox->isChecked());
|
||||
Config::setAudioBackend(ui->audioBackendComboBox->currentText().toStdString());
|
||||
|
||||
#ifdef ENABLE_DISCORD_RPC
|
||||
auto* rpc = Common::Singleton<DiscordRPCHandler::RPC>::Instance();
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue