1

我已经看到这在网络上提到了一些地方,但还没有在任何地方找到具体的答案。

我正在尝试更新应用程序以使其在 iOS7 上正常运行。其中一部分涉及运行全屏 .mp4 视频文件(15.4mb / 40 秒长)。这是我用来设置视频的代码,它在 iOS6 中运行良好:

videoPlayer= [[MPMoviePlayerController alloc] initWithContentURL: [NSURL fileURLWithPath: [[NSBundle mainBundle]pathForResource: [NSString stringWithFormat:@"introIpad"] ofType:@"mp4"]]];

videoPlayer.fullscreen = YES;
videoPlayer.movieSourceType = MPMovieSourceTypeFile;
videoPlayer.view.frame = self.view.bounds;
[self.view addSubview:videoPlayer.view];
[videoPlayer play];

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(videoFinished) name:MPMoviePlayerPlaybackDidFinishNotification object:videoPlayer];

如上所述,这段代码在 iOS6 上完美运行,但是在 iOS7 上它现在给了我以下错误日志:

_itemFailedToPlayToEnd: {
   kind = 1;
   new = 2;
   old = 0;
}

我见过一些人说他们所要做的就是更改视频文件的名称,所以我尝试过但没有运气。我还发现有些人提到movieSourceType 是一个问题,但我尝试将其设置为“MPMovieSourceTypeStreaming”,但这也不起作用。

有点令人沮丧,有人可以给我的任何帮助将不胜感激!

提前致谢。

4

1 回答 1

1

因此,当设备无法播放视频文件时,此问题似乎是通用响应。

我尝试过不同的编码和多种类型的视频,但运气不佳。

但是我刚刚尝试了一个不同尺寸的视频,它可以播放,我的原始视频文件是 1536x2048(iPad Retina 分辨率),它不喜欢它。我以 768x1024(原始尺寸的一半)重新渲染了视频,并且效果很好。

这不是一个非常有用的错误日志,但我想如果你和我有同样的问题,那么尝试尽可能多的不同类型的视频并找到一个有效的。

于 2013-11-04T11:17:39.420 回答