avplayer图层有时不会显示视频内容,而是播放音频。这种情况并非每次都发生这是我的代码行:
override func viewDidLoad() {
super.viewDidLoad()
self.tempVideoPath = NSURL(fileURLWithPath: NSTemporaryDirectory()).appendingPathComponent("tmpMov.mov")
self.player = AVPlayer(url: self.tempVideoPath!)
}
override func viewDidAppear(_ animated: Bool) {
super.viewDidAppear(animated)
self.playerLayer = AVPlayerLayer(player: self.player)
self.playerLayer?.frame = self.videoPlayer.bounds
self.playerLayer?.backgroundColor = UIColor.yellow.cgColor
self.videoPlayer.layer.addSublayer(playerLayer!)
print("player = (playerLayer?.bounds)")
}
帮助我解决此问题。
您的代码问题是视频层的界限可以更改。因此,您需要在视图控制器中添加以下代码,以相应更改Avplayerlayer的框架:
override func viewDidLayoutSubviews() {
super.viewDidLayoutSubviews()
playerLayer?.frame = view.bounds
}
希望它有帮助。