/// <summary> /// Sets the playback position. /// </summary> /// <param name="mediaPlayer">A valid IMFPMediaPlayer instance.</param> /// <param name="positionValue">New playback position.</param> /// <returns>If this function succeeds, it returns the S_OK member. Otherwise, it returns another HResult's member that describe the error.</returns> public static HResult SetPosition(this IMFPMediaPlayer mediaPlayer, TimeSpan positionValue) { if (mediaPlayer == null) { throw new ArgumentNullException("mediaPlayer"); } using (PropVariant value = new PropVariant(positionValue.Ticks)) { return(mediaPlayer.SetPosition(Guid.Empty, value)); } }