public void Next(bool restart)
        {
            CancelErrorTransition();

            Source = NextSource;
            raise_started_after_transition = true;

            player_engine.IncrementLastPlayed();

            if (Source is IBasicPlaybackController && ((IBasicPlaybackController)Source).Next(restart))
            {
            }
            else
            {
                ((IBasicPlaybackController)this).Next(restart);
            }

            OnTransition();
        }
 private bool EosTransition()
 {
     player_engine.IncrementLastPlayed();
     return(true);
 }