我试图在Spotify等应用中看到的登录屏幕上显示视频。使AVPlayer全屏无信箱
我做
什么要做到这一点我使用AVPlayer:
self.videoPlayer = AVPlayer(playerItem: item)
self.videoView.player = self.videoPlayer
self.videoPlayer.play()
的videoView是描述here自定义UIView类。
我设置了AVLayer的videoGravity到AVLayerVideoGravityResizeAspectFill:
self.videoView.playerLayer.videoGravity = AVLayerVideoGravityResizeAspectFill
问题
然而,我的视频仍然是上下黑边,当我试图使它填写我的观点的界限:
我想要什么
我想要的是让视频填写整个边界,没有任何黑条。我不在乎,如果部分视频被剪辑:
信息
当我看着deprecated MPMoviePlayerController's scaling mode property,我发现aspectFill属性的以下描述:
统一缩放电影,直到影片充满视图的可见边界。在两个维度较大的边缘处的内容被裁剪,以便另一维度恰好适合视图。电影的长宽比保持不变
从这个描述判断,这是我想要的确切行为。不过,如前所述,我的视频会变为letterbox。我做错了什么,或者苹果已经停止支持这种缩放?如果我不关心部分视频被剪辑,我是否必须自己实现这个缩放?
任何帮助表示赞赏,谢谢。
请检查videoView.frame是否与self.view.frame相同。 – Ponja