【问题标题】:How can I convert videos in php without using ffmpeg? [duplicate]如何在不使用 ffmpeg 的情况下转换 php 中的视频? [复制]
【发布时间】:2016-05-28 03:24:18
【问题描述】:

我在 php 中编写了一个代码,它使用 exec 函数从视频文件中提取 mp3 音轨来执行 ffmpeg

在 Windows 上使用 WAMP 的本地服务器上一切正常。但是在将脚本部署到服务器时,我不能再运行ffmpeg,因为服务器没有软件。

是否有纯 PHP 中的类,或者 API 能够提供相同或至少基本的 ffmpeg 功能?

【问题讨论】:

    标签: php ffmpeg video-conversion


    【解决方案1】:

    已编辑:

    由于任何转换都非常消耗 CPU,因此没有纯 PHP 解决方案,并且在不久的将来也不会。

    【讨论】:

    • 如果这篇文章回答了你的问题,请将其标记为答案。
    • 问题已经说服务器上没有安装ffmpeg!
    • 正如我所写的,视频的任何编码/解码都是 CPU 密集型的,并且需要外部编译的二进制文件。所以你必须安装它。
    • 那你为什么提到图书馆?如果答案是“不”,就这么说;不要让 OP 进入死胡同,试图安装一个不起作用的库。
    • @duskwuff 好的,我试图提供最佳答案。答案是你仍然需要二进制文件,PHP 有一个扩展,还有一些包装器。我还编辑了答案。
    【解决方案2】:

    对于转换,您可以使用https://cloudconvert.com/,它提供了rest api和异步转换。

    【讨论】:

      【解决方案3】:

      首先您的问题标题提到了“视频”,但问题正文询问了 MP3,您能否澄清一下?

      其次,仅仅因为服务器没有ffmpeg这并不意味着你不能安装它。这可能应该是追求的选项 - 如果主机那么严格,那么无论如何您都不太可能安装任何其他解决方案。

      PHP 作为一种语言没有 MP3 解码器,虽然可以编写一个,甚至可以找到一个已经编写好的,但我会避免使用它。解析多媒体格式很棘手,正如最近 Android 中的 Stagefright 错误所证明的那样,因此您最好使用经过良好测试和支持的框架,例如 GStreamer 或 FFMpeg。

      另外,如果您只需要转换某些格式,例如 MP3,您可以查看 MP3 解码器,例如 lame。

      【讨论】:

        【解决方案4】:

        但是在将脚本部署到服务器时,我不能再运行ffmpeg,因为服务器没有软件。

        在您的服务器上很容易获得ffmpeg

        1. Download a static build of ffmpeg 适用于 Linux、Windows 或 OS X。
        2. 将脚本指向它。
        3. 编码。

        FFmpeg Wiki: PHP

        【讨论】:

          猜你喜欢
          • 2020-03-07
          • 2011-09-24
          • 1970-01-01
          • 2021-11-15
          • 1970-01-01
          • 1970-01-01
          • 2010-12-26
          • 2015-10-07
          相关资源
          最近更新 更多