https://developer.apple.com/videos/play/wwdc2016/503/

  • About Playback

  • Kineto’s video communication

  • About Buffering

    • playbackLikelyToKeepUp indicates whether it is likely to finish without stalling
    • PlaybackBufferFull is true when everything is loaded
    • playbackBufferEmpty is true when it is likely to stall or when it is stalling
  • AVPlayer.rate = 1 for playback?

    • Is this an old version?

image

AVPlayer.rate is complicated image

  • If you want to use the old version of the image above

    • automaticallyWaitsToMinimizeStalling = false
    • setRate(time:atHostTime:) needs to be set to false as well
    • Remember this
  • If you want to play multiple videos in succession, use AVQueuePlayer

    • Are we using AVPlayerLooper now?
  • They also talk about Color Space, but I’m not interested so I’ll skip it

  • Best Practices for Playback Startup Time

  • image - It seems better to set various settings and then call play() before setting the playerItem - If you do it the other way around, the AVPlayer gets confused when you only want to display a static image (one frame)

  • HLS