4

我有一个应用程序可以在播放 2 秒的电影时加载。目前,该应用程序已在商店中出售,并且除此视频外,所有静态内容均符合视网膜显示。我有一个用于视网膜显示器的 960x640 mp4 h.264 编码视频,它在 iPhone(是的,高分辨率,不是 480x320)和 iPhone4 模拟器中都运行良好。但它似乎无法在运行 iOS4 的我的 iPod Touch 3rd Gen 上播放。我还不能在物理视网膜显示器上进行测试。

直到现在我才想到 MPMoviePlayerController 可能不支持高于 480x320 的分辨率,但文档确实这么说。

http://developer.apple.com/library/ios/#documentation/MediaPlayer/Reference/MPMoviePlayerController_Class/MPMoviePlayerController/MPMoviePlayerController.html

我知道这很可能听起来像是另一个@2x 解决方案,但这似乎也不起作用。

对于在两个屏幕上播放此高分辨率视频有什么建议吗?如果需要,我可以发布代码。


作为参考,这里是解决方案:

MPMoviePlayerController *movieController;

if ([[UIScreen mainScreen] scale] == 2.0) {
  movieController = [[MPMoviePlayerController alloc] initWithContentURL:[NSURL fileURLWithPath: [[NSBundle mainBundle] pathForResource:@"highRes" ofType:@"mp4"]]];
} else {
  movieController = [[MPMoviePlayerController alloc] initWithContentURL:[NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"lowRes" ofType:@"m4v"]]];
}
4

1 回答 1

2

我建议在这里使用代码检查来为您的媒体播放器提供正确的视频文件。

于 2010-11-09T22:37:16.260 回答