void TempUpPlayer_OnStartPlay(StreamPlayer obj) { lock (LockObject) { if (VolumeDownPlayer == null) { if (VolumeUpPlayer != null) { VolumeDownPlayer = VolumeUpPlayer; VolumeDownPlayer.VolumeDown(); } } else { if (VolumeUpPlayer != null) { VolumeUpPlayer.Stop(); //VolumeUpPlayer.Dispose(); VolumeUpPlayer = null; } } VolumeUpPlayer = obj; VolumeUpPlayer.VolumeUp(); TempUpPlayer = null; } if (OnStart != null) { OnStart(); } }
void TempUpPlayer_OnError(StreamPlayer obj) { lock (LockObject) { if (VolumeDownPlayer == null) { if (VolumeUpPlayer != null) { VolumeDownPlayer = VolumeUpPlayer; VolumeDownPlayer.VolumeDown(); } } else { if (VolumeUpPlayer != null) { VolumeUpPlayer.Stop(); //VolumeUpPlayer.Dispose(); VolumeUpPlayer = null; } } VolumeUpPlayer = null; TempUpPlayer = null; } IsPlaying = false; if (OnError != null) { OnError(); } }
public void Stop() { lock (LockObject) { if (TempUpPlayer != null) { lock (TempUpPlayer) { TempUpPlayer.OnStartPlay -= TempUpPlayer_OnStartPlay; TempUpPlayer.OnStoped -= TempUpPlayer_OnStoped; TempUpPlayer.OnNewTrack -= TempUpPlayer_OnNewTrack; TempUpPlayer.OnError -= TempUpPlayer_OnError; TempUpPlayer.OnFftCalculated -= TempUpPlayer_OnFftCalculated; TempUpPlayer.Stop(); TempUpPlayer = null; } } if (VolumeUpPlayer != null) { VolumeUpPlayer.VolumeDown(); } IsPlaying = false; } }