使用AVPlayer播放的video在iPhone 6S Plus的顶部和两侧都有灰线
这似乎是仅iPhone 6S Plus上的一个设备特定的错误。
脚步:
- 下载AVPlayer演示示例代码
- 调整
AVPlayerDemoPlaybackView.xib
以便MPlayback View
具有边缘 - 使内容视图颜色为白色
1px灰线将出现在顶部和两侧。
任何人都知道如何解决这个问题?
我试图把不透明的看法掩盖顶部,但线仍然会出现在不透明的观点之上!
将AVPlayerLayer
的shouldRasterize
属性设置为true
会使边框消失。
我的build议是,因为你的用例是一个animation循环,以AVPlayer和使用UIImageView。
UIImage
有animatedImage(with:duration:)
在哪里你可以input图像数组和animation他们如何你喜欢。
我想这会解决你的问题。 根据我的经验,AVPlayer对于iOS 10有点不习惯。我认为,因为你只在6s +和7s +上看到这个问题,所以certificate它有一些问题。
如果您完全致力于搞清AVPlayer,请首先向苹果提交错误报告。 然后,也许尝试添加一个UIImageView在AVPlayer的后面,将图像设置为video中的空白帧。 这是一个hacky解决scheme,但它可能工作。 另外,看看这个堆栈溢出post。 这可能会让您对AVPlayer所遇到的问题有所了解。
祝你好运。
我试过Nate4436271的答案,它对我有效,我的意思是,有同样的问题,并摆脱了灰色的线条,但将shouldRasterize属性设置为true,使我的video丢失图像质量。 所以,我把我的playerLayer的videoGravity设置为AVLayerVideoGravityResizeAspectFill和我摆脱了行,同时保持图像质量:)
这是我做的:
playerLayer.videoGravity = AVLayerVideoGravityResizeAspectFill
AspectFill符合我的需求,并解决了这个问题。 您可能希望评估其他选项是否更适合您的需求,如AspectFit或Resize。
希望这可以帮助 :)
- 如何使用UICollectionView玩Facebook风格的video
- 是否可以设置AVPlayer允许设备在video播放过程中进入睡眠状态?
- 两个AVPlayervideo不同步(Swift)
- 从Parse.com播放audio
- 当ViewController加载时,UISlider的AVPlayer currentTime更新
- AVPlayer在全屏热点时调整窗口大小时会崩溃
- 当video使用AVPLayer播放时,会停止背景音乐ios
- 如何在iOS上用MPMoviePlayerController或AVPlayer播放没有文件扩展名的电影文件?
- AVPlayer使用资源加载器委托来拖延大型video文件