[英]Video camera view in videoViewController works on iPhone but not iPad
[英]Video playback works on iPhone but not on iPad
我试图在OpenGL上下文上播放视频,并且在iPhoneX上可以正常播放,但是在iPad Pro上却出现黑屏。 音频播放,并且日志中没有错误表明可能有问题。
这是我的代码:
NSString *path = [[NSBundle mainBundle] pathForResource:title ofType:@"m4v"];
self.player = [AVPlayer playerWithURL:[NSURL fileURLWithPath:path]];
self.playerLayer = [AVPlayerLayer playerLayerWithPlayer:self.player];
CGRect rect = CGRectMake(0, 0, 480, 320);
self.playerLayer.frame = rect;
[[[Director sharedDirector] openGLView].layer addSublayer:self.playerLayer];
[_player play];
我知道在12英寸iPad上480x320很小,但是父视图的scaleX / scaleY属性设置为放大(同样,在iPhoneX上效果很好,甚至在iPad上也适用于OpenGL内容)
该代码最初使用的是不推荐使用的MPMediaPlayerController,我也尝试使用MPMediaPlayerViewController,就像我尝试了在StackOverflow上为黑屏视频建议的所有各种伏都技巧一样,其结果始终是相同的。
有类似经验和解决方法的人吗?
添加到[[Director sharedDirector] openGLView] .layer.superLayer而不是[[Director sharedDirector] openGLView] .layer可以解决此问题。
我仍然不明白为什么这在iPhone和iPad之间会有所不同,或者为什么它在iPad不起作用时不会在iPad上引发某种错误。 (FWIW,两者均可在iPhone上使用)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.