在iPhone应用程序中缓冲,切换和循环播放视频,以模拟不间断的视频输入

时间:2009-12-17 10:42:14

标签: iphone video mpmovieplayer

我还不是iPhone开发人员。如果这个问题是非常基本的问题,请原谅。

根据我从开发文档中收集的信息,一次只能“播放”一个视频文件。

我的要求是无缝切换到1个视频或切换到第一个视频的第二个实例并保持“循环”。

是否可以加载/缓冲第二个视频,以便视频可以相互无缝播放,从而产生持续视频输入效果?或者,“播放”2个视频,但一次只能在屏幕上播放一个?

3 个答案:

答案 0 :(得分:1)

不幸的是(令我厌恶的是)你无法做出无缝循环。但是,您可以观察/收听MPMoviePlayerPlaybackDidFinishNotification通知/事件,这实际上可以在电影播放完毕后为您提供事件。您可以使用此功能播放下一个视频或重复刚播放的视频。

不利的一面是MPMoviePlayerController在完成播放时将前一部电影淡出(以背景颜色),这使我们无法连续循环。如果你的视频没有声音,我会建议提取帧并用UIImageView播放它们,如果它有音频的话,那么(就像我一样)你有点卡住了!

祝你好运。

答案 1 :(得分:1)

您可以在iPad上循环播放iOS 3.2+的视频。要为iPhone编译,我必须使用4.1的基础SDK(4.0也应该可以工作)

MPMoviePlayerController *mp = [[MPMoviePlayerController alloc] initWithContentURL:nsUrl];
moviePlayer.repeatMode = MPMovieRepeatModeOne;
[mp play];

这篇文章帮助我做了一些事情: http://iosdevelopertips.com/video/getting-mpmovieplayercontroller-to-cooperate-with-ios4-3-2-ipad-and-earlier-versions-of-iphone-sdk.html

答案 2 :(得分:0)

从IPhone SDK 3.1.3开始,MPMoviePlayer无法做到这一点。请留意未来的SDK更新。