@@ -1117,7 +1117,7 @@ void ZeldaAudioRenderer::ApplyReverb(bool post_rendering)
11171117 for (u16 j = 0 ; j < 8 ; ++j)
11181118 sample += (s32)buffer[i + j] * rpb.filter_coeffs [j];
11191119 sample >>= 15 ;
1120- buffer[i] = std::clamp (sample, - 0x8000 , 0x7FFF );
1120+ buffer[i] = MathUtil::SaturatingCast<s16> (sample);
11211121 }
11221122 };
11231123
@@ -1211,7 +1211,7 @@ void ZeldaAudioRenderer::ApplyLowPassFilter(MixingBuffer* buf, VPB* vpb)
12111211 tmp *= coeff;
12121212 tmp >>= 7 ;
12131213 tmp += yn1;
1214- s16 yn0 = std::clamp<s64 >(tmp, - 0x8000 , 0x7FFF );
1214+ s16 yn0 = MathUtil::SaturatingCast<s16 >(tmp);
12151215 (*buf)[i] = yn0;
12161216
12171217 yn1 = yn0;
@@ -1237,7 +1237,7 @@ void ZeldaAudioRenderer::ApplyBiquadFilter(MixingBuffer* buf, VPB* vpb)
12371237 tmp += vpb->biquad_bn2 * xn2;
12381238 tmp += vpb->biquad_an1 * yn1;
12391239 tmp += vpb->biquad_an2 * yn2;
1240- s16 yn0 = std::clamp<s64 >(tmp >> 15 , - 0x8000 , 0x7FFF );
1240+ s16 yn0 = MathUtil::SaturatingCast<s16 >(tmp >> 15 );
12411241 (*buf)[i] = yn0;
12421242
12431243 xn2 = xn1;
@@ -1626,7 +1626,7 @@ void ZeldaAudioRenderer::Resample(VPB* vpb, const s16* src, MixingBuffer* dst)
16261626 dst_sample_unclamped += (s64)2 * coeffs[i] * input[i];
16271627 dst_sample_unclamped >>= 16 ;
16281628
1629- dst_sample = (s16)std::clamp<s64 >(dst_sample_unclamped, - 0x8000 , 0x7FFF );
1629+ dst_sample = MathUtil::SaturatingCast<s16 >(dst_sample_unclamped);
16301630
16311631 pos += ratio;
16321632 }
@@ -1874,7 +1874,7 @@ void ZeldaAudioRenderer::DecodeAFC(VPB* vpb, s16* dst, size_t block_count)
18741874 {
18751875 s32 sample = delta * nibble + yn1 * m_afc_coeffs[idx * 2 ] + yn2 * m_afc_coeffs[idx * 2 + 1 ];
18761876 sample >>= 11 ;
1877- sample = std::clamp (sample, - 0x8000 , 0x7fff );
1877+ sample = MathUtil::SaturatingCast<s16> (sample);
18781878 *dst++ = (s16)sample;
18791879 yn2 = yn1;
18801880 yn1 = sample;
0 commit comments