fadeOut method
Implementation
@override
Future<void> fadeOut({Duration duration = const Duration(seconds: 3)}) async {
if (_masterGain != null && _ctx != null) {
final now = _ctx!.currentTime;
_masterGain!.gain.setValueAtTime(_masterGain!.gain.value, now);
_masterGain!.gain.linearRampToValueAtTime(
0,
now + duration.inMilliseconds / 1000,
);
await Future.delayed(duration);
}
await stop();
}