【问题标题】:what is FFmpeg?什么是FFmpeg?
【发布时间】:2011-07-01 03:33:10
【问题描述】:

我正在使用LINK 从视频中获取帧……但它说要创建一个解码 H264 视频的商业项目,我们必须确保我们获得了 MPEG LA 的许可。 我们为什么要获得许可证?有些教程说我们必须提供完整的源代码 LGPL,如果我们静态集成 FFMPEG。静态是什么意思?另一种选择是什么?我们可以在没有获得 LGPL 许可的情况下将我们的应用程序提交到 Appstore(用于在服务器中存储视频流)吗?我很困惑吗?请问有什么帮助吗?

【问题讨论】:

    标签: iphone ipad iphone-sdk-3.0 ffmpeg


    【解决方案1】:
    1. FFMpeg 是一个开源库,更多信息在这里http://www.ffmpeg.org/
    2. 如果您想将库包含到您的 iPhone 项目中,静态链接是唯一允许的方法。如果您不知道静态链接和动态链接之间的区别,请咨询 Google。
    3. LGPL 只是一种软件许可证,而不是法律实体。 AFAIK 一个在 GPL 下发布的库只能在最终产品也获得 GPL 许可并且是开源的情况下才能使用。 LGPL 代码也可用于闭源项目,如果软件中包含许可文本的话。
    4. 我不是律师,但如果您不编码 H.264,则根本不需要向 MPEG LA 支付任何许可费。
    5. 是的,将 ffmpeg 链接到您的项目是“与应用商店兼容的”。

    编辑

    正如 Theo 在 cmets 中指出的那样,第 2 点是错误的。这将导致 FFmpeg 与 iPhone 不兼容,因为不允许动态链接。

    【讨论】:

    • 好吧,我不能 100% 确定所有的法律影响。
    • 您的第二点是错误的——只允许动态链接。来自ffmpeg.org/legal.html 的许可证合规性检查表:使用动态链接(在 Windows 上,这意味着链接到 dll)与 FFmpeg 库链接。
    • 感谢您的网站。我将此添加到我的答案中。
    【解决方案2】:

    MPEG LA 是一家拥有多项视频相关技术专利池的公司。

    FFMPEG 是许多视频相关技术的实际实现,其中 a.o.已根据 LGPL 获得许可。

    如果您想使用 FFMPEG 来处理 H264,您必须处理 FFMPEG 许可证和 MPEG LA 持有的专利。 FFMPEG 许可证将要求您重新分发 FFMPEG 源代码,而以任何形式使用 H264 都需要您从 MPEG LA 购买许可证。

    【讨论】:

    • 这是真的吗?我认为解码 H.264 是免版税的。
    • 视情况而定。如果您提供基于 H264 的内容,您可能必须支付许可费用。围绕这个有一些愚蠢的复杂规则,最好的办法是让合格的律师检查一下。
    【解决方案3】:

    存在多个问题;首先是您专门使用 FFMpeg 代码的合法权利。此代码由 FFMpeg 开发人员选择的许可证管理,他们嵌入了portions with GPL and portions with LGPL。如果您使用 GPL 许可的部分进行编译,那么整体将成为 GPL,并且您必须分发 FFMpeg 的源代码,或者提供使其可用三年。如果您链接您的代码针对 FFMpeg,那么您还必须提供您的源代码或提供三年内可用的报价。

    如果您禁用 GPL 部分,则无需为您的项目提供源代码,如果您修改了 FFMpeg 的 LGPL 部分,则只需提供 FFMpeg 源代码。

    但是,这只是为了遵守FFMpeg的版权。您必须遵守FFMpeg中算法知识产权。这意味着在美国和大多数其他国家/地区,您必须许可获得算法专利的组织的底层算法。例如,如果您使用 FFMpeg 解码 MPEG2 第 3 层数据,那么您必须从 Fraunhofer 或其被许可人之一获得 MP3 支持许可。他们可能会或可能不会限制合法使用其知识产权的源代码。

    FFMpeg 中可能有数十项技术专利,分布在来自世界各地的数十个专利局。这就是为什么许多公司从单一来源购买他们的源代码(和许可证!),以避免在您将拥有用户的每个国家/地区的许可协议的复杂性并且许可证持有人已注册通过当地专利局获得知识产权。

    【讨论】:

      【解决方案4】:

      我不是律师,但我对此的解释是:

      LGPL 的目的之一是允许分发预编译的二进制文件,但以这样一种方式可以替代:LGPL 保留最终用户将 LGPL 库替换为他们自己的等效库的权利选择,通过从源代码或其他方式重建库。

      这意味着遵守 LPGL 许可发行版的唯一方法是发布所有源代码,或者将库捆绑为独立的动态库。

      由于 iPhone 软件需要使用静态链接的库,因此在 AppStore 应用程序中使用 LGPL 库似乎是不可能的,除非您还提供整个应用程序源 - 或者足够多的资源以便用户可以重新链接它他们自己的上述库的实现。

      【讨论】:

        【解决方案5】:

        它就像任何视频/图像转换器的命令行,可以扩展以支持尽可能多的媒体编解码器,例如,您将某种格式的视频上传到您的网站,您可以将其转换为 flv或 mp4 或任何您希望支持和​​托管的格式,就像您在管做...

        http://www.ffmpeg.org/ffmpeg-doc.html检查所有可能的功能

        【讨论】:

          猜你喜欢
          • 2019-04-14
          • 2013-05-22
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2013-09-23
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多