2017-08-07 17 views
0

私はTVOSのためにSwiftでplayerViewControllerでビデオをループしようとしています。私はビデオが正常に再生しているが、私はビデオをループしたい。これまでのコードは、これまで通りです。playerViewControllerでビデオループを迅速に行うにはどうすればよいですか?

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

助けていただければ幸いです。ありがとう

答えて

2

これを行う最も簡単な方法は、AVPlayerLooperでAVQueuePlayerを使用することです。通常のAVプレーヤーと同じようにプレーヤービューコントローラーのプレーヤーを設定することができますが、ルーパーの周りに永続的な参照を保持して、作業を続ける必要があります。言い換えれば、あなたのビューコントローラのインターフェイスにこれを追加します。

var looper: AVPlayerLooper? 

...とあなたのviewDidAppearで、これを置き換えます。これで

let player = AVPlayer(url: videoURL!) 

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

を次に、あなたが起動したら、プレイヤーが再生すると、そのビデオは無期限にループします。

+0

ありがとうございました。これは完全に動作し、ビデオをスムーズにループします:) –

関連する問題