diff options
author | Chris Robinson <[email protected]> | 2022-11-17 00:26:10 -0800 |
---|---|---|
committer | Chris Robinson <[email protected]> | 2022-11-17 00:40:47 -0800 |
commit | 201f5cb63ff8fb2781afa8afeda6a0e699f9e6c4 (patch) | |
tree | 53e0db85bcbbfacbe842b33647b2e753fe5dc77c /utils/alsoft-config | |
parent | 0239556444a6174d6fa81fc5993a14cdb8d6a4f1 (diff) |
Update alsoft-config for new options
Diffstat (limited to 'utils/alsoft-config')
-rw-r--r-- | utils/alsoft-config/mainwindow.cpp | 23 | ||||
-rw-r--r-- | utils/alsoft-config/mainwindow.ui | 117 |
2 files changed, 89 insertions, 51 deletions
diff --git a/utils/alsoft-config/mainwindow.cpp b/utils/alsoft-config/mainwindow.cpp index 3565493e..8abde1fd 100644 --- a/utils/alsoft-config/mainwindow.cpp +++ b/utils/alsoft-config/mainwindow.cpp @@ -404,7 +404,7 @@ MainWindow::MainWindow(QWidget *parent) : connect(ui->decoderDistCompCheckBox, &QCheckBox::stateChanged, this, &MainWindow::enableApplyButton); connect(ui->decoderNFEffectsCheckBox, &QCheckBox::stateChanged, this, &MainWindow::enableApplyButton); auto qdsb_vcd = static_cast<void(QDoubleSpinBox::*)(double)>(&QDoubleSpinBox::valueChanged); - connect(ui->decoderNFRefDelaySpinBox, qdsb_vcd, this, &MainWindow::enableApplyButton); + connect(ui->decoderSpeakerDistSpinBox, qdsb_vcd, this, &MainWindow::enableApplyButton); connect(ui->decoderQuadLineEdit, &QLineEdit::textChanged, this, &MainWindow::enableApplyButton); connect(ui->decoderQuadButton, &QPushButton::clicked, this, &MainWindow::selectQuadDecoderFile); connect(ui->decoder51LineEdit, &QLineEdit::textChanged, this, &MainWindow::enableApplyButton); @@ -762,13 +762,14 @@ void MainWindow::loadConfig(const QString &fname) ui->decoderHQModeCheckBox->setChecked(getCheckState(settings.value("decoder/hq-mode"))); ui->decoderDistCompCheckBox->setCheckState(getCheckState(settings.value("decoder/distance-comp"))); ui->decoderNFEffectsCheckBox->setCheckState(getCheckState(settings.value("decoder/nfc"))); - double refdelay{settings.value("decoder/nfc-ref-delay", 0.0).toDouble()}; - ui->decoderNFRefDelaySpinBox->setValue(refdelay); + double speakerdist{settings.value("decoder/speaker-dist", 1.0).toDouble()}; + ui->decoderSpeakerDistSpinBox->setValue(speakerdist); ui->decoderQuadLineEdit->setText(settings.value("decoder/quad").toString()); ui->decoder51LineEdit->setText(settings.value("decoder/surround51").toString()); ui->decoder61LineEdit->setText(settings.value("decoder/surround61").toString()); ui->decoder71LineEdit->setText(settings.value("decoder/surround71").toString()); + ui->decoder3D71LineEdit->setText(settings.value("decoder/surround3d71").toString()); QStringList disabledCpuExts{settings.value("disable-cpu-exts").toStringList()}; if(disabledCpuExts.size() == 1) @@ -1028,15 +1029,16 @@ void MainWindow::saveConfig(const QString &fname) const settings.setValue("decoder/hq-mode", getCheckValue(ui->decoderHQModeCheckBox)); settings.setValue("decoder/distance-comp", getCheckValue(ui->decoderDistCompCheckBox)); settings.setValue("decoder/nfc", getCheckValue(ui->decoderNFEffectsCheckBox)); - double refdelay = ui->decoderNFRefDelaySpinBox->value(); - settings.setValue("decoder/nfc-ref-delay", - (refdelay > 0.0) ? QString::number(refdelay) : QString{} + double speakerdist{ui->decoderSpeakerDistSpinBox->value()}; + settings.setValue("decoder/speaker-dist", + (speakerdist != 1.0) ? QString::number(speakerdist) : QString{} ); settings.setValue("decoder/quad", ui->decoderQuadLineEdit->text()); settings.setValue("decoder/surround51", ui->decoder51LineEdit->text()); settings.setValue("decoder/surround61", ui->decoder61LineEdit->text()); settings.setValue("decoder/surround71", ui->decoder71LineEdit->text()); + settings.setValue("decoder/surround3d71", ui->decoder3D71LineEdit->text()); QStringList strlist; if(!ui->enableSSECheckBox->isChecked()) @@ -1150,14 +1152,17 @@ void MainWindow::saveConfig(const QString &fname) const (!ui->enableEaxCheck->isEnabled() || ui->enableEaxCheck->isChecked()) ? QString{/*"true"*/} : QString{"false"}); + settings.setValue("pipewire/assume-audio", ui->pwireAssumeAudioCheckBox->isChecked() + ? QString{"true"} : QString{/*"false"*/}); + + settings.setValue("wasapi/allow-resampler", ui->wasapiResamplerCheckBox->isChecked() + ? QString{/*"true"*/} : QString{"false"}); + settings.setValue("pulse/spawn-server", getCheckValue(ui->pulseAutospawnCheckBox)); settings.setValue("pulse/allow-moves", getCheckValue(ui->pulseAllowMovesCheckBox)); settings.setValue("pulse/fix-rate", getCheckValue(ui->pulseFixRateCheckBox)); settings.setValue("pulse/adjust-latency", getCheckValue(ui->pulseAdjLatencyCheckBox)); - settings.setValue("pipewire/assume-audio", ui->pwireAssumeAudioCheckBox->isChecked() - ? QString{"true"} : QString{/*"false"*/}); - settings.setValue("jack/spawn-server", getCheckValue(ui->jackAutospawnCheckBox)); settings.setValue("jack/connect-ports", getCheckValue(ui->jackConnectPortsCheckBox)); settings.setValue("jack/rt-mix", getCheckValue(ui->jackRtMixCheckBox)); diff --git a/utils/alsoft-config/mainwindow.ui b/utils/alsoft-config/mainwindow.ui index 8d057679..659807c7 100644 --- a/utils/alsoft-config/mainwindow.ui +++ b/utils/alsoft-config/mainwindow.ui @@ -906,60 +906,63 @@ are set in the decoder configuration file.</string> <widget class="QWidget" name="widget_3" native="true"> <property name="geometry"> <rect> - <x>-10</x> + <x>30</x> <y>110</y> - <width>281</width> + <width>471</width> <height>21</height> </rect> </property> <property name="toolTip"> - <string>The reference delay value for ambisonic output. When -Channels is set to one of the Ambisonic formats, this -option enables NFC-HOA output with the specified -Reference Delay parameter. The specified value can then -be shared with an appropriate NFC-HOA decoder to -reproduce correct near-field effects. Keep in mind that -despite being designed for higher-order ambisonics, this -applies to first-order output all the same. When left unset, -normal output is created with no near-field simulation.</string> + <string>Specifies the speaker distance in meters, used by the near-field control +filters with surround sound output. For ambisonic output modes, this value +is the basis for the NFC-HOA Reference Delay parameter (calculated as +delay_seconds = speaker_dist/343.3). This value is not used when a decoder +configuration is set for the output mode (since they specify the per-speaker +distances, overriding this setting), or when the NFC filters are off.</string> </property> <widget class="QLabel" name="label_27"> <property name="geometry"> <rect> - <x>20</x> + <x>45</x> <y>0</y> - <width>171</width> + <width>111</width> <height>21</height> </rect> </property> <property name="text"> - <string>Near-Field Reference Delay:</string> + <string>Speaker Distance:</string> </property> <property name="alignment"> <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> </property> </widget> - <widget class="QDoubleSpinBox" name="decoderNFRefDelaySpinBox"> + <widget class="QDoubleSpinBox" name="decoderSpeakerDistSpinBox"> <property name="geometry"> <rect> - <x>200</x> + <x>165</x> <y>0</y> - <width>81</width> + <width>101</width> <height>21</height> </rect> </property> <property name="suffix"> - <string>sec</string> + <string> meters</string> </property> <property name="decimals"> - <number>4</number> + <number>2</number> + </property> + <property name="minimum"> + <double>0.100000000000000</double> </property> <property name="maximum"> - <double>1000.000000000000000</double> + <double>10.000000000000000</double> </property> <property name="singleStep"> <double>0.010000000000000</double> </property> + <property name="value"> + <double>1.000000000000000</double> + </property> </widget> </widget> </widget> @@ -1259,12 +1262,17 @@ application or system to determine if it should be used.</string> </item> <item> <property name="text"> - <string>PulseAudio</string> + <string>PipeWire</string> </property> </item> <item> <property name="text"> - <string>PipeWire</string> + <string>WASAPI</string> + </property> + </item> + <item> + <property name="text"> + <string>PulseAudio</string> </property> </item> <item> @@ -1382,7 +1390,52 @@ duplicated names are ignored.</string> </property> </widget> </widget> + <widget class="QWidget" name="page_1"> + <widget class="QCheckBox" name="pwireAssumeAudioCheckBox"> + <property name="geometry"> + <rect> + <x>20</x> + <y>10</y> + <width>161</width> + <height>21</height> + </rect> + </property> + <property name="toolTip"> + <string>Assumes PipeWire has support for audio, allowing +the backend to initialize even when no audio devices +are reported.</string> + </property> + <property name="text"> + <string>Assume audio support</string> + </property> + </widget> + </widget> <widget class="QWidget" name="page_2"> + <widget class="QCheckBox" name="wasapiResamplerCheckBox"> + <property name="geometry"> + <rect> + <x>20</x> + <y>10</y> + <width>191</width> + <height>21</height> + </rect> + </property> + <property name="toolTip"> + <string>Specifies whether to allow an extra resampler pass on the output. Enabling +this will allow the playback device to be set to a different sample rate +than the actual output can accept, causing the backend to apply its own +resampling pass after OpenAL Soft mixes the sources and processes effects +for output.</string> + </property> + <property name="text"> + <string>Allow Resampler</string> + </property> + <property name="checked"> + <bool>true</bool> + </property> + </widget> + </widget> + <widget class="QWidget" name="page_8"> <widget class="QCheckBox" name="pulseAutospawnCheckBox"> <property name="geometry"> <rect> @@ -1469,26 +1522,6 @@ drop-outs.</string> </property> </widget> </widget> - <widget class="QWidget" name="page_8"> - <widget class="QCheckBox" name="pwireAssumeAudioCheckBox"> - <property name="geometry"> - <rect> - <x>20</x> - <y>10</y> - <width>161</width> - <height>21</height> - </rect> - </property> - <property name="toolTip"> - <string>Assumes PipeWire has support for audio, allowing -the backend to initialize even when no audio devices -are reported.</string> - </property> - <property name="text"> - <string>Assume audio support</string> - </property> - </widget> - </widget> <widget class="QWidget" name="page_7"> <widget class="QCheckBox" name="jackAutospawnCheckBox"> <property name="geometry"> |