public void Stop(uint fadeOut = 0) { _playingTime.Stop(); if (fadeOut > 0 && !is3DSound) { IsFadingMode = true; _fadingStepThreeshold = 1.0f / fadeOut * -1; _fadingVolumeCoef = 1.0f; _fadingTimer.Restart(); _soundEngine.AddSoundWatching(this); } else { IsFadingMode = false; IsLooping = false; _voice.Stop(); _fadingTimer.Stop(); _voice.FlushSourceBuffers(); _defferedStart = 0; MaxDefferedStart = 0; MinDefferedStart = 0; IsPlaying = false; } }