11

我正在开发的 iPhone 应用程序在特定用户定义的时间间隔内连续捕获图像,我正在寻找一种将这些图像组合成 H264 编码视频的方法。我在 Google 上做了一些研究,看来我必须在 iPhone 上使用 ffmpeg/mencoder 之类的东西?(还发现有人将ffmpeg移植到iPhone,ffmpeg4iPhone)

但是,我发现 x264 是在 GPL 许可下,如果我使用 ffmpeg,我需要开源我的项目。还发现有人建议使用 Ogg Theora,但如果我使用它,我需要将它移植到 iPhone。(我现在不知道该怎么做)。

有什么解决方法吗?有任何想法吗?谢谢。

4

3 回答 3

8

我认为您在那里与 GPL 绑定并有两个建议:

  1. 继续 GPL 你的项目。你没有理由不能销售开源软件,并且应用商店的延迟/惩罚期将为你提供一个很好的交付时间,让你在任何使用 GPL 代码的潜在完成项目中都获得了不错的时间。您在 iTunes 商店中的位置、您的动机和任何品牌可能比源代码更有价值。另外,您可以让其他人为您修复错误。 更新:截至 2011 年 1 月,GPL 和 App Store 不混合使用.

  2. 让 iPhone 应用程序将原始图像上传到服务器并在那里进行处理。这样您就不会发布和分发 FFmpeg 和 x264 代码,因此不需要分发它。

祝你好运,如果你出版了,请在这里告诉我们!

于 2009-12-30T07:49:37.960 回答
6

似乎 ffmpeg 现在支持 cisco 的“openh264”(BSD FWIW)编码编解码器:

https://www.ffmpeg.org/ffmpeg-codecs.html#libopenh264

FWIW 这是我从我的 LGPL 构建中得到的:

ffmpeg.exe -codecs | grep h264
...
ffmpeg version n3.1.2 Copyright (c) 2000-2016 the FFmpeg developers
 DEV.LS h264                 H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 (decoders: h264 h264_qsv ) (encoders: libopenh264 h264_nvenc h264_qsv nvenc nvenc_h264 )

其中提到了其他一些编码器 FWIW,而 FFmpeg 甚至可能支持其他编码器。

于 2016-09-05T21:56:27.270 回答
1

我相信如果您不打算使用 ffmpeg(可能存在其他一些开源版本,但质量非常低),您将只能找到 x264 实现的商业版本。此外,您需要记住,如果您使用这些编解码器并且您决定不使用平台/iPhone 的编解码器,您将不得不支付专利使用费(我认为每次下载大约 1 美元)。

如果这对您来说仍然负担得起,那么我相信您可能能够找到 LGPL 的旧版本 ffmpeg。您可以在代码中使用它,而无需开源整个项目。您只需要开源您可能对 ffmpeg 所做的更改。

希望这可以帮助!

于 2009-12-28T10:18:13.790 回答