/// <summary> /// Play episode async /// </summary> /// <param name="episode">Episode to play</param> /// <param name="startPosition">Postion from where playback should be started (only valid if resum=false)</param> /// <param name="resume">Resume from last stop?</param> private static void DoPlayEpisode(DBEpisode episode, bool resume, int startPosition) { if (GUIGraphicsContext.form.InvokeRequired) { PlayEpisodeAsyncDelegate d = new PlayEpisodeAsyncDelegate(DoPlayEpisode); GUIGraphicsContext.form.Invoke(d, new object[] { episode, resume, startPosition }); return; } WifiRemote.LogMessage("Play episode (resume: " + resume + ", pos: " + startPosition, WifiRemote.LogType.Debug); if (player == null) { player = new VideoHandler(); } // Reset stopTime if resume is false if (!resume) { episode[DBEpisode.cStopTime] = 0; } player.ResumeOrPlay((DBEpisode)episode); if (!resume && startPosition > 0) { g_Player.SeekAbsolute(startPosition); } }
/// <summary> /// Play episode async /// </summary> /// <param name="episode">Episode to play</param> /// <param name="startPosition">Postion from where playback should be started (only valid if resum=false)</param> /// <param name="resume">Resume from last stop?</param> private static void DoPlayEpisode(DBEpisode episode, bool resume, int startPosition) { if (GUIGraphicsContext.form.InvokeRequired) { PlayEpisodeAsyncDelegate d = new PlayEpisodeAsyncDelegate(DoPlayEpisode); GUIGraphicsContext.form.Invoke(d, new object[] { episode, resume, startPosition }); return; } WifiRemote.LogMessage("Play episode (resume: " + resume + ", pos: " + startPosition, WifiRemote.LogType.Debug); if (player == null) player = new VideoHandler(); // Reset stopTime if resume is false if (!resume) { episode[DBEpisode.cStopTime] = 0; } player.ResumeOrPlay((DBEpisode)episode); if (!resume && startPosition > 0) { g_Player.SeekAbsolute(startPosition); } }