mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-08-18 16:30:12 +00:00
Merge 0410d318fb
into 72ef27c157
This commit is contained in:
commit
f2171ea190
2 changed files with 28 additions and 15 deletions
|
@ -160,26 +160,29 @@ void AudioPane::CreateWidgets()
|
||||||
auto* playback_layout = new QGridLayout;
|
auto* playback_layout = new QGridLayout;
|
||||||
playback_box->setLayout(playback_layout);
|
playback_box->setLayout(playback_layout);
|
||||||
|
|
||||||
ConfigSlider* audio_buffer_size = new ConfigSlider(16, 512, Config::MAIN_AUDIO_BUFFER_SIZE, 8);
|
m_audio_buffer_size = new ConfigSlider(16, 512, Config::MAIN_AUDIO_BUFFER_SIZE, 8);
|
||||||
QLabel* audio_buffer_size_label = new QLabel;
|
QLabel* audio_buffer_size_label = new QLabel;
|
||||||
|
|
||||||
audio_buffer_size->setSingleStep(8);
|
m_audio_buffer_size->setSingleStep(8);
|
||||||
audio_buffer_size->setPageStep(8);
|
m_audio_buffer_size->setPageStep(8);
|
||||||
|
|
||||||
audio_buffer_size->SetDescription(
|
m_audio_buffer_size->SetDescription(
|
||||||
tr("Controls the number of audio samples buffered."
|
tr("Controls the number of audio samples buffered. "
|
||||||
" Lower values reduce latency but may cause more crackling or stuttering."
|
"Lower values reduce latency but may cause more crackling or stuttering."
|
||||||
"<br><br><dolphin_emphasis>If unsure, set this to 80 ms.</dolphin_emphasis>"));
|
"<br><br>LLE requires a larger buffer than HLE because it emits audio in larger chunks."
|
||||||
|
"<br><br><dolphin_emphasis>If unsure, set this to 80 ms for HLE or 120 ms for "
|
||||||
|
"LLE</dolphin_emphasis>"));
|
||||||
|
|
||||||
// Connect the slider to update the value label live
|
// Connect the slider to update the value label live
|
||||||
connect(audio_buffer_size, &QSlider::valueChanged, this, [=](int value) {
|
connect(m_audio_buffer_size, &QSlider::valueChanged, this,
|
||||||
int stepped_value = (value / 8) * 8;
|
[audio_buffer_size_label, this](int value) {
|
||||||
audio_buffer_size->setValue(stepped_value);
|
int stepped_value = (value / 8) * 8;
|
||||||
audio_buffer_size_label->setText(tr("%1 ms").arg(stepped_value));
|
m_audio_buffer_size->setValue(stepped_value);
|
||||||
});
|
audio_buffer_size_label->setText(tr("%1 ms").arg(stepped_value));
|
||||||
|
});
|
||||||
|
|
||||||
// Set initial value display
|
// Set initial value display
|
||||||
audio_buffer_size_label->setText(tr("%1 ms").arg(audio_buffer_size->value()));
|
audio_buffer_size_label->setText(tr("%1 ms").arg(m_audio_buffer_size->value()));
|
||||||
|
|
||||||
m_audio_fill_gaps = new ConfigBool(tr("Fill Audio Gaps"), Config::MAIN_AUDIO_FILL_GAPS);
|
m_audio_fill_gaps = new ConfigBool(tr("Fill Audio Gaps"), Config::MAIN_AUDIO_FILL_GAPS);
|
||||||
|
|
||||||
|
@ -188,8 +191,8 @@ void AudioPane::CreateWidgets()
|
||||||
|
|
||||||
// Create a horizontal layout for the slider + value label
|
// Create a horizontal layout for the slider + value label
|
||||||
auto* buffer_layout = new QHBoxLayout;
|
auto* buffer_layout = new QHBoxLayout;
|
||||||
buffer_layout->addWidget(new ConfigSliderLabel(tr("Audio Buffer Size:"), audio_buffer_size));
|
buffer_layout->addWidget(new ConfigSliderLabel(tr("Audio Buffer Size:"), m_audio_buffer_size));
|
||||||
buffer_layout->addWidget(audio_buffer_size);
|
buffer_layout->addWidget(m_audio_buffer_size);
|
||||||
buffer_layout->addWidget(audio_buffer_size_label);
|
buffer_layout->addWidget(audio_buffer_size_label);
|
||||||
|
|
||||||
playback_layout->addLayout(buffer_layout, 0, 0);
|
playback_layout->addLayout(buffer_layout, 0, 0);
|
||||||
|
@ -235,6 +238,14 @@ void AudioPane::OnDspChanged()
|
||||||
m_dolby_pro_logic->setEnabled(enabled);
|
m_dolby_pro_logic->setEnabled(enabled);
|
||||||
m_dolby_quality_label->setEnabled(enabled && m_dolby_pro_logic->isChecked());
|
m_dolby_quality_label->setEnabled(enabled && m_dolby_pro_logic->isChecked());
|
||||||
m_dolby_quality_combo->setEnabled(enabled && m_dolby_pro_logic->isChecked());
|
m_dolby_quality_combo->setEnabled(enabled && m_dolby_pro_logic->isChecked());
|
||||||
|
if (Config::Get(Config::MAIN_DSP_HLE))
|
||||||
|
{
|
||||||
|
m_audio_buffer_size->setValue(std::min(80, m_audio_buffer_size->value()));
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
m_audio_buffer_size->setValue(std::max(120, m_audio_buffer_size->value()));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void AudioPane::OnBackendChanged()
|
void AudioPane::OnBackendChanged()
|
||||||
|
|
|
@ -64,6 +64,8 @@ private:
|
||||||
ConfigStringChoice* m_wasapi_device_combo;
|
ConfigStringChoice* m_wasapi_device_combo;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
ConfigSlider* m_audio_buffer_size;
|
||||||
|
|
||||||
// Misc Settings
|
// Misc Settings
|
||||||
ConfigBool* m_audio_fill_gaps;
|
ConfigBool* m_audio_fill_gaps;
|
||||||
ConfigBool* m_speed_up_mute_enable;
|
ConfigBool* m_speed_up_mute_enable;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue