title: AVPlayer does not update currentPlaybackTime when seeking backwards
body: <p>I have an <code>NSTimer</code> set up that fires every <code>0.1</code> seconds, in the callback I fetch <code>currentTime()</code> and use it to update the label with the duration of the video.</p>
  
  <p>When I am seeking forwards, by setting the <code>rate</code> to 3, this timer keeps up, but when I set the rate to -3, the video keeps up, but the <code>currentTime()</code> still returns the same value from when I started seeking. This occurs until I stop seeking and then <code>currentTime()</code> returns the correct time</p>
  
  <p>How can I fetch the current time the video is at, which will work when seeking backwards?</p>
  
  <p><strong>Edit:</strong> Here is the code I use (translated from Xamarin C#):</p>
  
  <pre><code>class VideoPlayer: UIView {
  
      var player: AVPlayer!
      var wasPaused: Bool!
  
      func play(url: String) {
          // set the URL to the Video Player
          let streamingURL: NSURL = NSURL(string: url)!
          player = AVPlayer(URL: streamingURL)
          let playerLayer = AVPlayerLayer(layer: player)
          layer.insertSublayer(playerLayer, atIndex: 0)
  
          // Reset the state
          player.seekToTime(CMTime(seconds: 0, preferredTimescale: 600))
  
          // Start a timer to move the scrub label
          NSTimer(timeInterval: 0.1, target: self, selector: #selector(playbackTimeUpdated), userInfo: nil, repeats: true)
      }
  
      func playbackTimeUpdated() {
          // This one is not correct when seeking backwards
          let time = player.currentTime().seconds;
  
          // Use the time to adjust a UIProgressView
      }
  
      // Gets called when the reverse button is released
      func reverseTouchUp() {
          player.rate = 1
      }
  
      // Gets called when the reverse button is pressed
      func reverseTouchDown()
      {
          player.rate = -3;
      }
  }
  </code></pre>