我还不是 iPhone 开发者。如果这个问题是非常基本的问题,请原谅。
根据我从开发文档中收集到的信息,一次只能“播放”一个视频文件。
我的要求是从一个视频无缝切换到另一个视频或切换到第一个视频的第二个实例并保持“循环”。
是否可以加载/缓冲第二个视频,以便视频可以彼此无缝播放,以产生持续视频输入的效果?或者,“播放”2 个视频,但任何时候屏幕上只有一个?
我还不是 iPhone 开发者。如果这个问题是非常基本的问题,请原谅。
根据我从开发文档中收集到的信息,一次只能“播放”一个视频文件。
我的要求是从一个视频无缝切换到另一个视频或切换到第一个视频的第二个实例并保持“循环”。
是否可以加载/缓冲第二个视频,以便视频可以彼此无缝播放,以产生持续视频输入的效果?或者,“播放”2 个视频,但任何时候屏幕上只有一个?
不幸的是(我很反感)你不能做一个无缝的循环。但是,您可以观察/收听 MPMoviePlayerPlaybackDidFinishNotification 通知/事件,当电影播放完毕时,它本质上会为您提供一个事件。您可以使用它来播放下一个视频或重复您刚刚播放的视频。
不利的一面是 MPMoviePlayerController 在播放完之前会淡出上一部电影(到背景颜色),这会阻止我们连续循环。如果您的视频没有声音,我建议您提取帧并使用 UIImageView 播放它们,如果它确实有音频,那么(像我一样)您有点卡住了!
祝你好运。
您可以在 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
从 iPhone SDK 3.1.3 开始,MPMoviePlayer 无法做到这一点。请留意未来的 SDK 更新。