/// <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();
                }
            }
        }