Avplayer层有时不会显示视频内容



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
}

希望它有帮助。

最新更新