我正在处理的iPhone应用程序在特定的用户定义的时间间隔内捕获图像,我正在寻找一种方法将这些图像组合成H264编码的视频。我已经对谷歌进行了一些研究,看起来我将不得不在iPhone上使用像ffmpeg / mencoder这样的东西? (还发现有人将ffmpeg移植到iPhone,ffmpeg4iPhone)
但是,我发现x264是GPL许可证,如果我使用ffmpeg,则需要我开源我的项目。还发现有人建议使用Ogg Theora,但如果我使用它,我需要将它移植到iPhone。 (我不知道现在该怎么做)。
这有什么解决方法吗?有任何想法吗?感谢。
答案 0 :(得分:8)
我认为你在GPL绑定并有两个建议:
继续前进并GPL您的项目。没有理由你不能销售开源软件,而应用程序商店的延迟/惩罚期将比任何使用GPL代码的潜在完成项目给你一个很好的准备时间。您在iTunes商店中的位置,您的动机和任何品牌可能比源代码更有价值。另外,您可以让其他人为您修复错误。 更新:截至2011年1月,GPL and App Store do not mix。
让iPhone应用将原始图像上传到服务器并在那里进行处理。这样您就不会发布和分发FFmpeg和x264代码,因此不需要分发它。
祝你好运,如果你发布它,请告诉我们!
答案 1 :(得分:2)
出现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甚至可能支持其他编码器。
答案 2 :(得分:1)
我相信如果您不打算使用ffmpeg(可能存在一些其他开源版本但质量非常低),您将只能找到商业版本的x264实现。此外,您需要记住,如果您使用这些编解码器并且您决定不使用平台/ iPhone,那么由于专利(我认为每次下载大约1美元),您将不得不支付版税。/ p>
如果您仍然可以负担得起,那么我相信您可以找到一个旧版本的ffmpeg,这是LGPL的。您可以在代码中使用它,而无需打开整个项目的源代码。您只需要对ffmpeg进行开源更改。
希望这有帮助!