繁体   English   中英

视频播放在iPhone上有效,但在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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM