iPhone从一个视频平滑过渡到另一个视频

Ste*_*aut 10 iphone video

我必须弄清楚从一个视频过渡到下一个视频的最佳方式

基本理念:一个例子就是有一个人走路的视频......用户点击视频,并且无法过渡到正在运行的人的视频(简化示例)

我的第一个想法是创建2个电影播放器​​并使用2个视图元素之间的过渡.但电影播放器​​不支持这一点.

停止当前视频,加载新内​​容,然后启动它是一个解决方案,但不是很优雅.我们正在为我们的销售代表制作一个互动销售工具,我们希望这看起来尽可能专业.

当前的想法:如果有一些AVPlayer的示例代码,似乎我可以使用AVVideoComposition在视频之间切换?但目前似乎没有关于如何发生这种情况的详细信息.

可能的CLUE:我认为这很简单,因为我买了一款名为Live Cams HD的应用程序,可以同时显示16种不同的视频.

有任何想法吗?提前致谢!

MoD*_*oDJ 8

史蒂夫,简短的回答是,你无法使用AVPlayer获得所需的结果.iOS中包含的h.264视频逻辑非常适合一起播放视频和视频/音频,但它在启动/停止和从一个剪辑切换到另一个剪辑时非常糟糕.原因是加载并开始在硬件中播放h.264视频时需要进行大量缓冲.基本上,您需要滚动自己的代码,为您的视图设置UIImage/CGImageRef,这样可以通过简单地从一个UIImage对象数组切换到另一个对象,轻松地从一个剪辑切换到另一个剪辑.当然,这很容易说,但实施起来却不那么容易.

我建议您评估已经实现此逻辑的现有代码,而不是自己编写.例如,看一下这款StreetFighter演示应用.它展示了如何使用一系列剪辑来构建像iPhone UI这样的非常简单的游戏,这些剪辑显示角色正在踢,踢或投掷火球.结果如下:

在此输入图像描述

我还写了一篇关于无缝视频循环on ios的博客文章.您当然可以使用自己的代码来完成所有这些操作,但我建议您在链接网站上阅读有关我的库的更多信息,因为它可以为您节省大量时间.


Jul*_*per 0

第一个视频播放完除最后一帧之外的每一帧后,您可以快速切换到包含最后一帧(基本上是最后一帧)图像的视图,然后转换到包含下一帧第一帧图像的视图视频并启动该视频。

或者,您可以使用所有帧创建一个动画(对视频进行编程),这将使其可自定义,但质量可能不会那么好,并且 CPU 使用率可能会飙升,因此您必须对该动画进行调用。