2011-11-02 127 views
8

我真的很担心这个问题,因为我没有在互联网上看到关于iOS中视频编码的足够信息,但是我们可以观察到很多应用程序能够成功处理视频流的问题(Skype ,qik,justin.tv等)
我打算开发一个应用程序,该应用程序应该将从摄像机获取的视频帧以H.264编码格式(h.264或MPEG-4格式正在处理中)编码为网络服务器。为此,我需要一些视频编码库。显然,ffmpeg可以处理这个任务,但是它是在LGPL许可下,这可能会导致在AppStore中提交应用程序时出现一些问题。另一方面,有一些applications,它们似乎使用ffmpeg库,但只有Timelapser在应用程序描述中清楚地说明了这一事实。这是否意味着其他应用程序不使用ffmpeg或仅隐藏此信息?iOS的视频编码库

请分享你的想法和经验,在这个主题。我开放讨论。

回答

8

谷歌搜索和在这方面做了一些研究后,我发现这个库http://www.foxitsolutions.com/iphone_h264_sdk.html。他们真的使用硬件编码。我用仪器检查了演示示例,他们告诉我,在编码时,使用〜12%的cpu,系统调用read()不断调用。从中我可以得出结论,他们的库使用标准的AVFoundation的AVAssetWriter来写入临时文件,并且(很可能)并发线程用于读取此临时文件以检索编码帧。

另外,请看http://www.videolan.org/developers/x264.html。它在GPL下,但仍然有用。

+0

感谢您的链接到福昕解决方案。不幸的是,他们现在没有任何演示 - 只有联系人的电子邮件。你知道任何其他图书馆可能有帮助吗?我需要用容器包装H264原始数据(例如mp4容器)。 –

+0

@LukaszCzerwinski我写了自己的代码来解决这个问题前一段时间(2012年,我认为)。这个代码仍然需要在项目被放弃时进行适当的调试。 DM我如果你有兴趣,我应该仍然有这个来源。 – peetonn

+0

哇,非常感谢,那会很棒。我很高兴DM你,但是,你的个人资料说“显然,这个用户更喜欢保持他们的神秘气氛。”此外,由于没有PM,因此无法向您发送DM :) –