我必须找出从一个视频过渡到下一个视频的最佳方式
基本思想:一个例子是有一个人走路的视频......用户点击视频,无缝过渡到一个人运行的视频(通过简化的例子)
我的第一个想法是创建 2 个电影播放器并在 2 个 View 元素之间使用过渡。但是电影播放器不支持。
停止当前视频,加载新内容,然后启动它是一种解决方案,但不是很优雅。我们正在为我们的代表制作一个交互式销售工具,我们希望它看起来尽可能专业。
当前想法:如果有一些 AVPlayer 示例代码,我似乎可以使用 AVVideoComposition 在视频之间切换?但目前似乎还没有关于这可能如何发生的详细信息。
可能的线索:我认为这很容易,因为我买了一个名为 Live Cams HD 的应用程序,它可以同时显示 16 个不同的视频源。
有什么想法吗?提前致谢!
最佳答案
史蒂夫,简短的回答是你无法使用 AVPlayer 获得你想要的那种结果。 iOS 中包含的 h.264 视频逻辑非常适契约(Contract)时播放视频和视频/音频,但它在开始/停止和从一个剪辑切换到另一个剪辑时真的很糟糕。原因是加载并开始在硬件中播放 h.264 视频需要大量缓冲。基本上,您需要滚动自己的代码来为您的 View 设置 UIImage/CGImageRef,以便通过简单地从一个 UIImage 对象数组切换到另一个来轻松地从一个剪辑切换到另一个剪辑。当然,说起来容易,做起来并不容易。
我建议您评估已经实现此逻辑的现有代码,而不是自己动手。例如,看看这个 StreetFighter演示应用程序。它展示了如何使用一系列剪辑来构建像 iPhone UI 这样非常简单的游戏,这些剪辑展示了角色踢腿、出拳或 throw 火球的过程。结果如下所示:
我还写了一篇关于 seamless-video-looping-on-ios 的博文.您当然可以编写自己的代码来完成所有这些操作,但我建议您在链接的网站上阅读更多关于我的图书馆的信息,因为它会为您节省很多时间。
关于iPhone 从一个视频平滑过渡到另一个视频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3410003/