public void IncreaseDecreaseTempo(float tempoValue) { currentTempo += tempoValue; if (currentTempo > 10.0f) { currentTempo = 10.0f; } if (currentTempo < 0.15) { currentTempo = 0.15f; } if (IsMusicPlaying()) { soundTouch.SetTempo(currentTempo); } }
private void SetSoundTouchSettings(SoundTouch soundTouch, AudioFileReader audioFileReader, bool preventReset = false) { soundTouch.SetSampleRate(audioFileReader.WaveFormat.SampleRate); soundTouch.SetChannels(audioFileReader.WaveFormat.Channels); if (ResetMusicRates && !preventReset) { currentPitch = 0.0f; currentTempo = 1.0f; currentSpeed = 1.0f; } soundTouch.SetPitchSemiTones(currentPitch); soundTouch.SetTempo(currentTempo); soundTouch.SetRate(currentSpeed); soundTouch.SetUseAntiAliasing(true); }