/// <summary> /// Increments the rewinding rate if the media supports it. /// </summary> public void IncrementRewind() { if (IsRewinding && SupportsNaturalRewind) { double newPlaybackRate = RewindPlaybackRates .Where(i => i < MediaPlugin.PlaybackRate) .FirstOrDefault(); if (newPlaybackRate != default(double)) { MediaPlugin.PlaybackRate = newPlaybackRate; } } }
/// <summary> /// Begins rewinding if the media supports it. /// </summary> public void Rewind() { if (!IsRewinding) { StopTimer(); if (SupportsNaturalRewind) { MediaPlugin.PlaybackRate = RewindPlaybackRates.First(); } else { RestoreNaturalPlaySpeedWithoutNotification(); _fakingRewind = true; _currentStepSize = RewindStepSize; _stepTimer.Interval = RewindStepFrequency; _stepTimer.Start(); } } }