如何使用 playerViewController 在 swift 中循环播放我的视频?

How can I make my video loop in swift with playerViewController?

我正尝试在 Swift 上使用 playerViewController 为 TVOS 循环播放视频。我的视频播放正常,但我想循环播放视频。到目前为止,这是我的代码:

override func viewDidAppear(_ animated: Bool) {
    let videoURL = URL(string: "https://url-to-video.com/video.mp4")
    let player = AVPlayer(url: videoURL!)
    let playerViewController = AVPlayerViewController()
    playerViewController.player = player        self.present(playerViewController, animated: true) {
        playerViewController.player!.play()
    }
}

感谢任何帮助。谢谢

最快的方法是使用带有 AVPlayerLooper 的 AVQueuePlayer。您可以像使用普通 AVPlayer 一样在播放器视图控制器上设置播放器,但是您需要保持对循环器的持久引用,这样它才能继续工作。换句话说,将此添加到视图控制器的界面:

var looper: AVPlayerLooper?

…并在您的 viewDidAppear 中替换为:

let player = AVPlayer(url: videoURL!)

有了这个:

let player = AVQueuePlayer()
looper = AVPlayerLooper(player: player, templateItem: AVPlayerItem(asset: AVAsset(url: videoURL!)))

然后,一旦您开始播放播放器,它的视频就会无限循环播放。