1
0
mirror of https://github.com/RPCS3/rpcs3.git synced 2024-11-22 02:32:36 +01:00

cellAudio: Implement setting to disable sampling skip

This commit is contained in:
Eladash 2022-10-18 18:57:25 +03:00 committed by Megamouse
parent 789e42e26f
commit 903d847058
2 changed files with 2 additions and 2 deletions

View File

@ -908,10 +908,9 @@ void cell_audio_thread::operator()()
{ {
// Games may sometimes "skip" audio periods entirely if they're falling behind (a sort of "frameskip" for audio) // Games may sometimes "skip" audio periods entirely if they're falling behind (a sort of "frameskip" for audio)
// As such, if the game doesn't touch buffers for too long we advance time hoping the game recovers // As such, if the game doesn't touch buffers for too long we advance time hoping the game recovers
// TODO: It's a hack and it needs a setting to disable this (force true)
if ( if (
(untouched == active_ports && time_since_last_period > cfg.fully_untouched_timeout) || (untouched == active_ports && time_since_last_period > cfg.fully_untouched_timeout) ||
(time_since_last_period > cfg.partially_untouched_timeout) || !keys.empty() (time_since_last_period > cfg.partially_untouched_timeout) || g_cfg.audio.disable_sampling_skip
) )
{ {
// There's no audio in the buffers, simply advance time and hope the game recovers // There's no audio in the buffers, simply advance time and hope the game recovers

View File

@ -257,6 +257,7 @@ struct cfg_root : cfg::node
cfg::_bool enable_buffering{ this, "Enable Buffering", true, true }; cfg::_bool enable_buffering{ this, "Enable Buffering", true, true };
cfg::_int <4, 250> desired_buffer_duration{ this, "Desired Audio Buffer Duration", 100, true }; cfg::_int <4, 250> desired_buffer_duration{ this, "Desired Audio Buffer Duration", 100, true };
cfg::_bool enable_time_stretching{ this, "Enable Time Stretching", false, true }; cfg::_bool enable_time_stretching{ this, "Enable Time Stretching", false, true };
cfg::_bool disable_sampling_skip{ this, "Disable Sampling Skip", false, true };
cfg::_int<0, 100> time_stretching_threshold{ this, "Time Stretching Threshold", 75, true }; cfg::_int<0, 100> time_stretching_threshold{ this, "Time Stretching Threshold", 75, true };
cfg::_enum<microphone_handler> microphone_type{ this, "Microphone Type", microphone_handler::null }; cfg::_enum<microphone_handler> microphone_type{ this, "Microphone Type", microphone_handler::null };
cfg::string microphone_devices{ this, "Microphone Devices", "@@@@@@@@@@@@" }; cfg::string microphone_devices{ this, "Microphone Devices", "@@@@@@@@@@@@" };