diff --git a/rpcs3/Emu/Audio/ALSA/ALSAThread.cpp b/rpcs3/Emu/Audio/ALSA/ALSAThread.cpp index 0562bdba83..4302dc1e44 100644 --- a/rpcs3/Emu/Audio/ALSA/ALSAThread.cpp +++ b/rpcs3/Emu/Audio/ALSA/ALSAThread.cpp @@ -82,6 +82,8 @@ ALSAThread::ALSAThread() if (!check(snd_pcm_sw_params_current(s_tls_handle, s_tls_sw_params), "snd_pcm_sw_params_current")) return; + period_frames *= g_cfg.audio.startt; + if (!check(snd_pcm_sw_params_set_start_threshold(s_tls_handle, s_tls_sw_params, period_frames), "snd_pcm_sw_params_set_start_threshold")) return; diff --git a/rpcs3/Emu/System.h b/rpcs3/Emu/System.h index a1c707f21e..f5303209f0 100644 --- a/rpcs3/Emu/System.h +++ b/rpcs3/Emu/System.h @@ -378,6 +378,7 @@ struct cfg_root : cfg::node cfg::_bool convert_to_u16{this, "Convert to 16 bit"}; cfg::_bool downmix_to_2ch{this, "Downmix to Stereo", true}; cfg::_int<2, 128> frames{this, "Buffer Count", 32}; + cfg::_int<1, 128> startt{this, "Start Threshold", 1}; } audio{this};