dispose method
Dispose
Removes any lifecycle observer, disposes the player, and closes the
broadcast stream. Subclasses overriding this must call super.dispose().
Implementation
@mustCallSuper
Future<void> dispose() async {
disableLifecycle();
await _player.dispose();
await _isPlayingStream.close();
}