无法让AVPlayerLayer在NSView中显示视频
我正在尝试制作一个简单的HLS播放器来控制播放并在辅助监视器上显示。 我在10.7中使用AVFoundation来控制播放。 我可以成功创建AVPlayerItem和AVPlayer,但是我在实际获取视频在NSView中显示时遇到问题。
我必须承认我是一名可可新手,并且来自iOS开发,所以我可能会错过简单的东西。 然而,我花了4-5个小时试图让这个工作,我一直没有成功。
当我从AVPlayer播放视频时,播放开始,我可以听到音频。 但是,没有视频显示。
我试图让它尽可能简单。 我有一个NSViewController,我添加一个AVPlayerLayer到它的视图的图层:
AVPlayerLayer * playerLayer = [AVPlayerLayer playerLayerWithPlayer:player];
[playerLayer setFrame:self.view.bounds];
[self.view.layer addSublayer:playerLayer];
据我所知,这就是我必须要做的。 但是,视频不会出现在视图中。
有没有人成功添加一个AVPlayerLayer到NSView? AVFoundation文档展示了如何使用UIView完成这项工作,并且我也尝试了这种方法,并且在NSView中没有运气。
任何帮助将不胜感激!
尝试在添加子图层之前向您的视图发送setWantsLayer:YES。
[self.view setWantsLayer:YES];
AVPlayerLayer * playerLayer = [AVPlayerLayer playerLayerWithPlayer:player];
[playerLayer setFrame:self.view.bounds];
[self.view.layer addSublayer:playerLayer];
链接地址: http://www.djcxy.com/p/56875.html