AVQueuePlayer和多个视频播放和时间范围

时间:2012-10-26 23:06:22

标签: ios video avqueueplayer

ios编程有点新鲜。尝试使用AVQueuePlayer并在列表中播放多个视频。我已经搜索过,并没有看到我想要实现的相关示例。如果有些人能指出我正确的方向,这个问题可能很容易回答。

我想要做的是按顺序在列表中播放视频。因此,查看AVQueuePlayer和AVPlayerItem似乎符合要求。我知道如何使用这种方式背靠背地播放多个视频,因为大多数示例都显示了如何完成此操作。我想要的是加载播放器项目并将其限制在文件中的特定时间。例如,我会加载一个3分钟长的视频文件,只想看到1:20到1:35的时间。我见过的所有示例都加载了整个文件。必须有一种方法可以做到这一点,我还没有看到一个很好的例子。

我还希望AvPlayerItems可能是相同的视频文件,但它们正在播放与视频文件不同的时间范围。所以从本质上讲,我正在从任意数量的视频文件列表中播放视频时间范围,但这些视频文件可能是列表中的相同源文件。例如:

视频和时间列表

(seq    Video            Time)

1      video 1          0-30 secs   ---
2      video 2          45-60 secs  ---
3      video 3          120-130 secs  ---
4      video 2          3-12  --- 
5      video 3          30-40 ---
6      video 1          31 - 40 

我已经看过苹果开发人员对AvQueuePlayer的参考,但还没有想出来。我相信你们中有些经验丰富的人已经做过这件事,可以给我一些好的例子。

1 个答案:

答案 0 :(得分:1)

经过大量搜索和观看来自苹果的WWDC视频,我的问题的答案是使用AVComposition,它允许您使用多个视频源并将它们组合成一个轨道,您可以按照您想要的顺序播放。

一个很好的例子是在iTunes中观看WWDC 2010视频,并观看名为使用AVFoundation编辑媒体的会话。在演示文稿中,有一个很好的示例项目,他们使用名为AVEditDemo。它将为您提供开始所需的示例代码。