aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--utils/alsoft-config/mainwindow.cpp78
-rw-r--r--utils/alsoft-config/mainwindow.h2
-rw-r--r--utils/alsoft-config/mainwindow.ui645
3 files changed, 423 insertions, 302 deletions
diff --git a/utils/alsoft-config/mainwindow.cpp b/utils/alsoft-config/mainwindow.cpp
index 01f59e4b..c05e343e 100644
--- a/utils/alsoft-config/mainwindow.cpp
+++ b/utils/alsoft-config/mainwindow.cpp
@@ -86,12 +86,12 @@ static const struct {
{ "", "" }
}, resamplerList[] = {
- { "Default", "" },
- { "Point (low quality, very fast)", "point" },
- { "Linear (basic quality, fast)", "linear" },
- { "4-Point Sinc (good quality)", "sinc4" },
- { "8-Point Sinc (high quality, slow)", "sinc8" },
- { "Band-limited Sinc (very high quality, very slow)", "bsinc" },
+ { "Point", "point" },
+ { "Linear", "linear" },
+ { "Default (Linear)", "" },
+ { "4-Point Sinc", "sinc4" },
+ { "8-Point Sinc", "sinc8" },
+ { "Band-limited Sinc", "bsinc" },
{ "", "" }
}, stereoModeList[] = {
@@ -183,13 +183,15 @@ MainWindow::MainWindow(QWidget *parent) :
for(int i = 0;sampleTypeList[i].name[0];i++)
ui->sampleFormatCombo->addItem(sampleTypeList[i].name);
ui->sampleFormatCombo->adjustSize();
- for(int i = 0;resamplerList[i].name[0];i++)
- ui->resamplerComboBox->addItem(resamplerList[i].name);
- ui->resamplerComboBox->adjustSize();
for(int i = 0;stereoModeList[i].name[0];i++)
ui->stereoModeCombo->addItem(stereoModeList[i].name);
ui->stereoModeCombo->adjustSize();
+ int count;
+ for(count = 0;resamplerList[count].name[0];count++) {
+ }
+ ui->resamplerSlider->setRange(0, count-1);
+
ui->hrtfStateComboBox->adjustSize();
#if !defined(HAVE_NEON) && !defined(HAVE_SSE)
@@ -251,6 +253,8 @@ MainWindow::MainWindow(QWidget *parent) :
connect(ui->applyButton, SIGNAL(clicked()), this, SLOT(saveCurrentConfig()));
+ connect(ui->resamplerSlider, SIGNAL(valueChanged(int)), this, SLOT(updateResamplerLabel(int)));
+
connect(ui->periodSizeSlider, SIGNAL(valueChanged(int)), this, SLOT(updatePeriodSizeEdit(int)));
connect(ui->periodSizeEdit, SIGNAL(editingFinished()), this, SLOT(updatePeriodSizeSlider()));
connect(ui->periodCountSlider, SIGNAL(valueChanged(int)), this, SLOT(updatePeriodCountEdit(int)));
@@ -352,29 +356,17 @@ void MainWindow::loadConfig(const QString &fname)
ui->srcSendLineEdit->insert(settings.value("sends").toString());
QString resampler = settings.value("resampler").toString().trimmed();
- ui->resamplerComboBox->setCurrentIndex(0);
- if(resampler.isEmpty() == false)
+ ui->resamplerSlider->setValue(0);
+ /* The "cubic" resampler is no longer supported. It's been replaced by
+ * "sinc4". */
+ if(resampler == "cubic")
+ resampler = "sinc4";
+ for(int i = 0;resamplerList[i].name[i];i++)
{
- /* The "cubic" resampler is no longer supported. It's been replaced by
- * "sinc4". */
- if(resampler == "cubic")
- resampler = "sinc4";
-
- for(int i = 0;resamplerList[i].name[i];i++)
+ if(resampler == resamplerList[i].value)
{
- if(resampler == resamplerList[i].value)
- {
- for(int j = 1;j < ui->resamplerComboBox->count();j++)
- {
- QString item = ui->resamplerComboBox->itemText(j);
- if(item == resamplerList[i].name)
- {
- ui->resamplerComboBox->setCurrentIndex(j);
- break;
- }
- }
- break;
- }
+ ui->resamplerSlider->setValue(i);
+ break;
}
}
@@ -442,6 +434,14 @@ void MainWindow::loadConfig(const QString &fname)
hrtf_tables = hrtf_tables[0].split(QChar(','));
std::transform(hrtf_tables.begin(), hrtf_tables.end(),
hrtf_tables.begin(), std::mem_fun_ref(&QString::trimmed));
+ hrtf_tables.removeDuplicates();
+ if(!hrtf_tables.empty() && !hrtf_tables.contains("%s.mhr"))
+ ui->defaultHrtfPathsCheckBox->setCheckState(Qt::Unchecked);
+ else
+ {
+ hrtf_tables.removeOne("%s.mhr");
+ ui->defaultHrtfPathsCheckBox->setCheckState(Qt::Checked);
+ }
ui->hrtfFileList->clear();
ui->hrtfFileList->addItems(hrtf_tables);
updateHrtfRemoveButton();
@@ -562,15 +562,7 @@ void MainWindow::saveConfig(const QString &fname) const
settings.setValue("sources", ui->srcCountLineEdit->text());
settings.setValue("slots", ui->effectSlotLineEdit->text());
- str = ui->resamplerComboBox->currentText();
- for(int i = 0;resamplerList[i].name[0];i++)
- {
- if(str == resamplerList[i].name)
- {
- settings.setValue("resampler", resamplerList[i].value);
- break;
- }
- }
+ settings.setValue("resampler", resamplerList[ui->resamplerSlider->value()].value);
str = ui->stereoModeCombo->currentText();
for(int i = 0;stereoModeList[i].name[0];i++)
@@ -606,6 +598,8 @@ void MainWindow::saveConfig(const QString &fname) const
QList<QListWidgetItem*> items = ui->hrtfFileList->findItems("*", Qt::MatchWildcard);
foreach(const QListWidgetItem *item, items)
strlist.append(item->text());
+ if(!strlist.empty() && ui->defaultHrtfPathsCheckBox->isChecked())
+ strlist.append("%s.mhr");
settings.setValue("hrtf_tables", strlist.join(QChar(',')));
strlist.clear();
@@ -671,6 +665,12 @@ void MainWindow::saveConfig(const QString &fname) const
}
+void MainWindow::updateResamplerLabel(int num)
+{
+ ui->resamplerLabel->setText(resamplerList[num].name);
+}
+
+
void MainWindow::updatePeriodSizeEdit(int size)
{
ui->periodSizeEdit->clear();
diff --git a/utils/alsoft-config/mainwindow.h b/utils/alsoft-config/mainwindow.h
index b5a1ae7c..0f94c0ce 100644
--- a/utils/alsoft-config/mainwindow.h
+++ b/utils/alsoft-config/mainwindow.h
@@ -22,6 +22,8 @@ private slots:
void saveConfigAsFile();
void loadConfigFromFile();
+ void updateResamplerLabel(int num);
+
void updatePeriodSizeEdit(int size);
void updatePeriodSizeSlider();
void updatePeriodCountEdit(int size);
diff --git a/utils/alsoft-config/mainwindow.ui b/utils/alsoft-config/mainwindow.ui
index ab575fee..30e53d15 100644
--- a/utils/alsoft-config/mainwindow.ui
+++ b/utils/alsoft-config/mainwindow.ui
@@ -10,6 +10,18 @@
<height>454</height>
</rect>
</property>
+ <property name="minimumSize">
+ <size>
+ <width>564</width>
+ <height>454</height>
+ </size>
+ </property>
+ <property name="maximumSize">
+ <size>
+ <width>564</width>
+ <height>454</height>
+ </size>
+ </property>
<property name="windowTitle">
<string>OpenAL Soft Configuration</string>
</property>
@@ -198,339 +210,475 @@ to stereo output.</string>
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
+ <widget class="QLabel" name="label_14">
+ <property name="geometry">
+ <rect>
+ <x>280</x>
+ <y>50</y>
+ <width>81</width>
+ <height>21</height>
+ </rect>
+ </property>
+ <property name="text">
+ <string>Stereo Mode:</string>
+ </property>
+ <property name="alignment">
+ <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
+ </property>
+ </widget>
+ <widget class="QComboBox" name="stereoModeCombo">
+ <property name="geometry">
+ <rect>
+ <x>370</x>
+ <y>50</y>
+ <width>78</width>
+ <height>22</height>
+ </rect>
+ </property>
+ <property name="toolTip">
+ <string>How to treat stereo output. As headphones, HRTF or crossfeed
+filters may be used to improve binaural quality, which may not
+otherwise be suitable for speakers.</string>
+ </property>
+ </widget>
<widget class="QGroupBox" name="groupBox">
<property name="geometry">
<rect>
- <x>10</x>
- <y>180</y>
- <width>511</width>
- <height>191</height>
+ <x>-11</x>
+ <y>200</y>
+ <width>551</width>
+ <height>181</height>
</rect>
</property>
<property name="title">
- <string>HRTF (Stereo only)</string>
+ <string>Advanced Settings</string>
</property>
- <widget class="QListWidget" name="hrtfFileList">
+ <property name="alignment">
+ <set>Qt::AlignCenter</set>
+ </property>
+ <widget class="QGroupBox" name="groupBox_3">
<property name="geometry">
<rect>
<x>20</x>
<y>30</y>
- <width>391</width>
- <height>121</height>
- </rect>
- </property>
- <property name="toolTip">
- <string>A list of files containing HRTF data sets. The listed data sets
-are used in place of the default sets. The filenames may
-contain these markers, which will be replaced as needed:
-%r - Device sampling rate
-%s - Non-greedy string (up to the following matching characters)
-%% - Percent sign (%)</string>
- </property>
- <property name="dragEnabled">
- <bool>false</bool>
- </property>
- <property name="dragDropMode">
- <enum>QAbstractItemView::InternalMove</enum>
- </property>
- <property name="alternatingRowColors">
- <bool>true</bool>
- </property>
- <property name="selectionMode">
- <enum>QAbstractItemView::ExtendedSelection</enum>
- </property>
- <property name="textElideMode">
- <enum>Qt::ElideNone</enum>
- </property>
- </widget>
- <widget class="QPushButton" name="hrtfAddButton">
- <property name="geometry">
- <rect>
- <x>420</x>
- <y>30</y>
- <width>81</width>
- <height>25</height>
+ <width>511</width>
+ <height>91</height>
</rect>
</property>
- <property name="text">
- <string>Add...</string>
- </property>
- <property name="icon">
- <iconset theme="list-add">
- <normaloff/>
- </iconset>
+ <property name="title">
+ <string>Buffer Metrics</string>
</property>
- <property name="flat">
- <bool>false</bool>
+ <property name="alignment">
+ <set>Qt::AlignCenter</set>
</property>
+ <widget class="QWidget" name="widget" native="true">
+ <property name="geometry">
+ <rect>
+ <x>260</x>
+ <y>20</y>
+ <width>241</width>
+ <height>51</height>
+ </rect>
+ </property>
+ <property name="toolTip">
+ <string>The number of update periods. Higher values create a larger
+mix ahead, which helps protect against skips when the CPU is
+under load, but increases the delay between a sound getting
+mixed and being heard.</string>
+ </property>
+ <widget class="QLabel" name="label_11">
+ <property name="geometry">
+ <rect>
+ <x>20</x>
+ <y>0</y>
+ <width>201</width>
+ <height>21</height>
+ </rect>
+ </property>
+ <property name="text">
+ <string>Period Count</string>
+ </property>
+ <property name="alignment">
+ <set>Qt::AlignCenter</set>
+ </property>
+ </widget>
+ <widget class="QSlider" name="periodCountSlider">
+ <property name="geometry">
+ <rect>
+ <x>70</x>
+ <y>20</y>
+ <width>160</width>
+ <height>23</height>
+ </rect>
+ </property>
+ <property name="minimum">
+ <number>1</number>
+ </property>
+ <property name="maximum">
+ <number>16</number>
+ </property>
+ <property name="singleStep">
+ <number>1</number>
+ </property>
+ <property name="pageStep">
+ <number>2</number>
+ </property>
+ <property name="value">
+ <number>1</number>
+ </property>
+ <property name="tracking">
+ <bool>true</bool>
+ </property>
+ <property name="orientation">
+ <enum>Qt::Horizontal</enum>
+ </property>
+ <property name="tickPosition">
+ <enum>QSlider::TicksBelow</enum>
+ </property>
+ <property name="tickInterval">
+ <number>1</number>
+ </property>
+ </widget>
+ <widget class="QLineEdit" name="periodCountEdit">
+ <property name="geometry">
+ <rect>
+ <x>20</x>
+ <y>20</y>
+ <width>51</width>
+ <height>22</height>
+ </rect>
+ </property>
+ <property name="placeholderText">
+ <string>4</string>
+ </property>
+ </widget>
+ </widget>
+ <widget class="QWidget" name="widget_2" native="true">
+ <property name="geometry">
+ <rect>
+ <x>10</x>
+ <y>20</y>
+ <width>241</width>
+ <height>51</height>
+ </rect>
+ </property>
+ <property name="toolTip">
+ <string>The update period size, in sample frames. This is the number of
+frames needed for each mixing update.</string>
+ </property>
+ <widget class="QSlider" name="periodSizeSlider">
+ <property name="geometry">
+ <rect>
+ <x>60</x>
+ <y>20</y>
+ <width>160</width>
+ <height>23</height>
+ </rect>
+ </property>
+ <property name="minimum">
+ <number>0</number>
+ </property>
+ <property name="maximum">
+ <number>8192</number>
+ </property>
+ <property name="singleStep">
+ <number>64</number>
+ </property>
+ <property name="pageStep">
+ <number>1024</number>
+ </property>
+ <property name="value">
+ <number>0</number>
+ </property>
+ <property name="tracking">
+ <bool>true</bool>
+ </property>
+ <property name="orientation">
+ <enum>Qt::Horizontal</enum>
+ </property>
+ <property name="tickPosition">
+ <enum>QSlider::TicksBelow</enum>
+ </property>
+ <property name="tickInterval">
+ <number>512</number>
+ </property>
+ </widget>
+ <widget class="QLabel" name="label_10">
+ <property name="geometry">
+ <rect>
+ <x>10</x>
+ <y>0</y>
+ <width>201</width>
+ <height>21</height>
+ </rect>
+ </property>
+ <property name="text">
+ <string>Period Samples</string>
+ </property>
+ <property name="alignment">
+ <set>Qt::AlignCenter</set>
+ </property>
+ </widget>
+ <widget class="QLineEdit" name="periodSizeEdit">
+ <property name="geometry">
+ <rect>
+ <x>10</x>
+ <y>20</y>
+ <width>51</width>
+ <height>22</height>
+ </rect>
+ </property>
+ <property name="placeholderText">
+ <string>1024</string>
+ </property>
+ </widget>
+ </widget>
</widget>
- <widget class="QPushButton" name="hrtfRemoveButton">
+ </widget>
+ <widget class="QGroupBox" name="groupBox_4">
+ <property name="geometry">
+ <rect>
+ <x>90</x>
+ <y>80</y>
+ <width>351</width>
+ <height>81</height>
+ </rect>
+ </property>
+ <property name="title">
+ <string>Resampler Quality</string>
+ </property>
+ <property name="alignment">
+ <set>Qt::AlignCenter</set>
+ </property>
+ <widget class="QLabel" name="resamplerLabel">
<property name="geometry">
<rect>
- <x>420</x>
- <y>60</y>
- <width>81</width>
- <height>25</height>
+ <x>20</x>
+ <y>50</y>
+ <width>311</width>
+ <height>21</height>
</rect>
</property>
<property name="text">
- <string>Remove</string>
- </property>
- <property name="icon">
- <iconset theme="list-remove">
- <normaloff/>
- </iconset>
- </property>
- </widget>
- <widget class="QComboBox" name="hrtfStateComboBox">
- <property name="geometry">
- <rect>
- <x>110</x>
- <y>160</y>
- <width>161</width>
- <height>22</height>
- </rect>
+ <string>Default</string>
</property>
- <property name="sizeAdjustPolicy">
- <enum>QComboBox::AdjustToContentsOnFirstShow</enum>
+ <property name="alignment">
+ <set>Qt::AlignCenter</set>
</property>
- <item>
- <property name="text">
- <string>Application preference</string>
- </property>
- </item>
- <item>
- <property name="text">
- <string>Force on</string>
- </property>
- </item>
- <item>
- <property name="text">
- <string>Force off</string>
- </property>
- </item>
</widget>
- <widget class="QLabel" name="label_15">
+ <widget class="QSlider" name="resamplerSlider">
<property name="geometry">
<rect>
- <x>30</x>
- <y>160</y>
- <width>71</width>
- <height>21</height>
+ <x>20</x>
+ <y>30</y>
+ <width>311</width>
+ <height>23</height>
</rect>
</property>
- <property name="text">
- <string>HRTF Mode:</string>
- </property>
- <property name="alignment">
- <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
+ <property name="orientation">
+ <enum>Qt::Horizontal</enum>
</property>
</widget>
</widget>
- <widget class="QGroupBox" name="groupBox_3">
+ </widget>
+ <widget class="QWidget" name="tab_5">
+ <attribute name="title">
+ <string>HRTF</string>
+ </attribute>
+ <widget class="QGroupBox" name="groupBox_2">
<property name="geometry">
<rect>
- <x>10</x>
- <y>90</y>
- <width>511</width>
- <height>91</height>
+ <x>-10</x>
+ <y>200</y>
+ <width>551</width>
+ <height>181</height>
</rect>
</property>
<property name="title">
- <string>Buffer Metrics</string>
+ <string>Advanced Settings</string>
+ </property>
+ <property name="alignment">
+ <set>Qt::AlignCenter</set>
+ </property>
+ <property name="checkable">
+ <bool>false</bool>
+ </property>
+ <property name="checked">
+ <bool>false</bool>
</property>
- <widget class="QWidget" name="widget" native="true">
+ <widget class="QGroupBox" name="groupBox_6">
<property name="geometry">
<rect>
- <x>260</x>
- <y>20</y>
- <width>241</width>
- <height>51</height>
+ <x>20</x>
+ <y>30</y>
+ <width>511</width>
+ <height>141</height>
</rect>
</property>
- <property name="toolTip">
- <string>The number of update periods. Higher values create a larger
-mix ahead, which helps protect against skips when the CPU is
-under load, but increases the delay between a sound getting
-mixed and being heard.</string>
+ <property name="title">
+ <string>HRTF Profiles</string>
</property>
- <widget class="QLabel" name="label_11">
+ <property name="alignment">
+ <set>Qt::AlignCenter</set>
+ </property>
+ <widget class="QListWidget" name="hrtfFileList">
<property name="geometry">
<rect>
<x>20</x>
- <y>0</y>
- <width>201</width>
- <height>21</height>
- </rect>
- </property>
- <property name="text">
- <string>Period Count</string>
- </property>
- <property name="alignment">
- <set>Qt::AlignCenter</set>
- </property>
- </widget>
- <widget class="QSlider" name="periodCountSlider">
- <property name="geometry">
- <rect>
- <x>70</x>
<y>20</y>
- <width>160</width>
- <height>23</height>
+ <width>391</width>
+ <height>81</height>
</rect>
</property>
- <property name="minimum">
- <number>1</number>
- </property>
- <property name="maximum">
- <number>16</number>
- </property>
- <property name="singleStep">
- <number>1</number>
+ <property name="toolTip">
+ <string>A list of files containing HRTF data sets. The listed data sets
+are used in place of the default sets. The filenames may
+contain these markers, which will be replaced as needed:
+%r - Device sampling rate
+%s - Non-greedy string (up to the following matching characters)
+%% - Percent sign (%)</string>
</property>
- <property name="pageStep">
- <number>2</number>
+ <property name="dragEnabled">
+ <bool>false</bool>
</property>
- <property name="value">
- <number>1</number>
+ <property name="dragDropMode">
+ <enum>QAbstractItemView::InternalMove</enum>
</property>
- <property name="tracking">
+ <property name="alternatingRowColors">
<bool>true</bool>
</property>
- <property name="orientation">
- <enum>Qt::Horizontal</enum>
+ <property name="selectionMode">
+ <enum>QAbstractItemView::ExtendedSelection</enum>
</property>
- <property name="tickPosition">
- <enum>QSlider::TicksBelow</enum>
- </property>
- <property name="tickInterval">
- <number>1</number>
+ <property name="textElideMode">
+ <enum>Qt::ElideNone</enum>
</property>
</widget>
- <widget class="QLineEdit" name="periodCountEdit">
+ <widget class="QPushButton" name="hrtfAddButton">
<property name="geometry">
<rect>
- <x>20</x>
+ <x>420</x>
<y>20</y>
- <width>51</width>
- <height>22</height>
+ <width>81</width>
+ <height>25</height>
</rect>
</property>
- <property name="placeholderText">
- <string>4</string>
- </property>
- </widget>
- </widget>
- <widget class="QWidget" name="widget_2" native="true">
- <property name="geometry">
- <rect>
- <x>10</x>
- <y>20</y>
- <width>241</width>
- <height>51</height>
- </rect>
- </property>
- <property name="toolTip">
- <string>The update period size, in sample frames. This is the number of
-frames needed for each mixing update.</string>
- </property>
- <widget class="QSlider" name="periodSizeSlider">
- <property name="geometry">
- <rect>
- <x>60</x>
- <y>20</y>
- <width>160</width>
- <height>23</height>
- </rect>
- </property>
- <property name="minimum">
- <number>0</number>
- </property>
- <property name="maximum">
- <number>8192</number>
- </property>
- <property name="singleStep">
- <number>64</number>
- </property>
- <property name="pageStep">
- <number>1024</number>
- </property>
- <property name="value">
- <number>0</number>
- </property>
- <property name="tracking">
- <bool>true</bool>
- </property>
- <property name="orientation">
- <enum>Qt::Horizontal</enum>
+ <property name="text">
+ <string>Add...</string>
</property>
- <property name="tickPosition">
- <enum>QSlider::TicksBelow</enum>
+ <property name="icon">
+ <iconset theme="list-add">
+ <normaloff/>
+ </iconset>
</property>
- <property name="tickInterval">
- <number>512</number>
+ <property name="flat">
+ <bool>false</bool>
</property>
</widget>
- <widget class="QLabel" name="label_10">
+ <widget class="QCheckBox" name="defaultHrtfPathsCheckBox">
<property name="geometry">
<rect>
- <x>10</x>
- <y>0</y>
- <width>201</width>
+ <x>180</x>
+ <y>110</y>
+ <width>151</width>
<height>21</height>
</rect>
</property>
<property name="text">
- <string>Period Samples</string>
+ <string>Include Default Paths</string>
</property>
- <property name="alignment">
- <set>Qt::AlignCenter</set>
+ <property name="checked">
+ <bool>true</bool>
</property>
</widget>
- <widget class="QLineEdit" name="periodSizeEdit">
+ <widget class="QPushButton" name="hrtfRemoveButton">
<property name="geometry">
<rect>
- <x>10</x>
- <y>20</y>
- <width>51</width>
- <height>22</height>
+ <x>420</x>
+ <y>50</y>
+ <width>81</width>
+ <height>25</height>
</rect>
</property>
- <property name="placeholderText">
- <string>1024</string>
+ <property name="text">
+ <string>Remove</string>
+ </property>
+ <property name="icon">
+ <iconset theme="list-remove">
+ <normaloff/>
+ </iconset>
</property>
</widget>
</widget>
</widget>
- <widget class="QLabel" name="label_14">
+ <widget class="QLabel" name="label_16">
<property name="geometry">
<rect>
- <x>280</x>
+ <x>40</x>
<y>50</y>
- <width>81</width>
+ <width>71</width>
<height>21</height>
</rect>
</property>
<property name="text">
- <string>Stereo Mode:</string>
+ <string>HRTF Mode:</string>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
- <widget class="QComboBox" name="stereoModeCombo">
+ <widget class="QComboBox" name="hrtfStateComboBox">
<property name="geometry">
<rect>
- <x>370</x>
+ <x>130</x>
<y>50</y>
- <width>78</width>
+ <width>161</width>
<height>22</height>
</rect>
</property>
- <property name="toolTip">
- <string>How to treat stereo output. As headphones, HRTF or crossfeed
-filters may be used to improve binaural quality, which may not
-otherwise be suitable for speakers.</string>
+ <property name="sizeAdjustPolicy">
+ <enum>QComboBox::AdjustToContentsOnFirstShow</enum>
+ </property>
+ <item>
+ <property name="text">
+ <string>Application preference</string>
+ </property>
+ </item>
+ <item>
+ <property name="text">
+ <string>Force on</string>
+ </property>
+ </item>
+ <item>
+ <property name="text">
+ <string>Force off</string>
+ </property>
+ </item>
+ </widget>
+ <widget class="QLabel" name="label_12">
+ <property name="geometry">
+ <rect>
+ <x>20</x>
+ <y>20</y>
+ <width>91</width>
+ <height>21</height>
+ </rect>
+ </property>
+ <property name="text">
+ <string>Preferred HRTF:</string>
+ </property>
+ <property name="alignment">
+ <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
+ </property>
+ </widget>
+ <widget class="QComboBox" name="preferredHrtfComboBox">
+ <property name="geometry">
+ <rect>
+ <x>130</x>
+ <y>20</y>
+ <width>161</width>
+ <height>22</height>
+ </rect>
</property>
</widget>
</widget>
@@ -662,40 +810,11 @@ value currently possible is 4.</string>
<string>Auto</string>
</property>
</widget>
- <widget class="QLabel" name="label_9">
- <property name="geometry">
- <rect>
- <x>30</x>
- <y>120</y>
- <width>71</width>
- <height>21</height>
- </rect>
- </property>
- <property name="text">
- <string>Resampler:</string>
- </property>
- </widget>
- <widget class="QComboBox" name="resamplerComboBox">
- <property name="geometry">
- <rect>
- <x>110</x>
- <y>120</y>
- <width>78</width>
- <height>22</height>
- </rect>
- </property>
- <property name="toolTip">
- <string>The resampling method used when mixing sources.</string>
- </property>
- <property name="sizeAdjustPolicy">
- <enum>QComboBox::AdjustToContents</enum>
- </property>
- </widget>
<widget class="QGroupBox" name="cpuExtGroupBox">
<property name="geometry">
<rect>
<x>10</x>
- <y>150</y>
+ <y>120</y>
<width>511</width>
<height>121</height>
</rect>