Add some explicit latency to sample count reporting

Some games have very tight scheduling requirements for their audio which can't really be matched on the host, adding a constant to the reported value helps to provide some leeway.
merge-requests/60/head
Billy Laws 2023-04-02 17:29:07 +07:00
parent bbdfe1fab1
commit 0afb9631b5
1 changed files with 2 additions and 1 deletions

@ -266,7 +266,8 @@ u64 SinkStream::GetExpectedPlayedSampleCount() {
auto exp_played_sample_count{min_played_sample_count +
(TargetSampleRate * time_delta) / std::chrono::seconds{1}};
return std::min<u64>(exp_played_sample_count, max_played_sample_count);
// Add 15ms of latency in sample reporting to allow for some leeway in scheduler timings
return std::min<u64>(exp_played_sample_count, max_played_sample_count) + TargetSampleCount * 3;
}
void SinkStream::WaitFreeSpace() {