Audio: Clamp final output to avoid cracking at high volumes

This commit is contained in:
refractionpcsx2 2024-05-15 09:50:54 +01:00
parent 566ea8ea9b
commit c8047c1a61
1 changed files with 1 additions and 1 deletions

View File

@ -329,7 +329,7 @@ void AudioStream::ReadFrames(SampleType* samples, u32 num_frames)
u32 num_samples = num_frames * m_output_channels;
while (num_samples > 0)
{
*samples = static_cast<s16>((static_cast<s32>(*samples) * volume_mult) >> 15);
*samples = static_cast<s16>(std::clamp((static_cast<s32>(*samples) * volume_mult) >> 15, -0x7fff, 0x7fff));
samples++;
num_samples--;
}