private void OnPlayerEvent(PlayerEventArgs args)
{
switch (args.Event) {
case PlayerEvent.StartOfStream:
case PlayerEvent.TrackInfoUpdated:
EnterTrackInfoChangedState ();
break;
case PlayerEvent.StateChange:
switch (((PlayerEventStateChangeArgs)args).Current) {
case PlayerState.Contacting:
case PlayerState.Loading:
StartTransitionTimeout ();
break;
case PlayerState.Idle:
StartIdleTimeout ();
StopTransitionTimeout ();
break;
}
break;
case PlayerEvent.Iterate:
OnPlayerEngineTick ();
break;
}
}