only increase fadeout sample counter on odd samples

This commit is contained in:
goeiecool9999 2024-12-09 18:25:15 +01:00
parent 307e166efb
commit a8ef8b85fa

View file

@ -190,12 +190,13 @@ class BootSoundPlayer
void ApplyFadeOutEffect(std::span<sint16> samples, uint64 fadeOutDuration) void ApplyFadeOutEffect(std::span<sint16> samples, uint64 fadeOutDuration)
{ {
for(auto& i : samples) for(size_t i = 0; i < samples.size(); i++)
{ {
float decibel = (float)m_fadeOutSample / fadeOutDuration * -100.0f; float decibel = (float)m_fadeOutSample / fadeOutDuration * -100.0f;
float volumeFactor = pow(10,decibel/20); float volumeFactor = pow(10,decibel/20);
i *= volumeFactor; samples[i] *= volumeFactor;
m_fadeOutSample++; if(i % 2 == 1)
m_fadeOutSample++;
} }
} }