7

我正在寻找 iPhone 上 MPMoviePlayerController 的替代品。作为视频播放器,它的功能非常有限。例如,根据类参考,无法获取当前播放时间或设置新时间。它只是播放和停止。

是否有任何提供更多功能的 iPhone 视频播放中间件解决方案?CRI有一些东西正在开发中,但尚未发布。我无法找到其他任何东西。

谢谢。

4

3 回答 3

3

请记住,即使项目是 GPL,这并不意味着您无法就底层代码的 LGPL 选项联系作者。

如果您需要处理特定的视频类型,您自己的解决方案可能是使用 openGL 作为视频的合成表面,并获得像 ffmpeg 这样的幕后库。

NeHe 有一个将 AVI 渲染到 openGL 的示例:http: //nehe.gamedev.net/data/lessons/lesson.asp ?lesson=35

FFMpeg 最近被移植到 iPhone 上,是一个基于 LGPL 的产品: http ://geek.thinkunique.org/2008/03/05/ffmpeg-on-the-iphone/

(注意:关于 LGPL 在 iPhone 上的商业用途存在一些争议,因为许可证在提及库链接时引用了“动态”一词,这是 iPhone 不允许的。我没有看到任何项目团队对正在使用的代码犹豫不决在 iPhone 上是静态的,但你应该直接联系作者以获得澄清。)

另一个(虽然是 GPL)版本的 OpenGL 视频播放器是:http ://code.google.com/p/glover/

您通过这样的解决方案获得的基本上是绕过 iPhone/Mac/CALayer 特定技术细节,并通过 OpenGL 利用现有的视频知识库,虽然不广泛,但仍然得到广泛支持。

如果您正在处理特定的视频风格,那么您可能想查看是否可以直接从供应商处获得特定视频格式的库,而不是使用诸如 FFMpeg 之类的多功能工具。一旦你有合成工作,视频可以来自大多数任何图书馆。

巴尼

于 2009-11-17T23:35:36.717 回答
2

你可以使用AVPlayer. 请参阅文档

然后,您可以使用 获取当前播放时间currentTime并使用 查找指定时间seekToTime:

AVPlayer您必须将实例的视觉输出定向到AVPlayerLayer对象(的子类CALayer)。请参阅此处的第一个列表

于 2011-06-17T07:38:37.530 回答
0

VLC 已移植到 iPhone但未使用官方 SDK。

于 2009-04-23T12:05:31.633 回答