当前位置: 首页 > 知识库问答 >
问题:

未找到PHP ffmpeg

邢思淼
2023-03-14

所以我已经浏览了所有的论坛,但仍然出现错误“sh:1:/usr/bin/ffmpeg:notfound”。如果我从终端运行ffmpeg,它工作正常,可以毫无问题地转换视频,但是如果我使用PHP exec或shell_exec,返回的总是ffmpeg not found。

这是我的代码:

php prettyprint-override">$cmd = "/usr/bin/ffmpeg";

$run = exec($cmd." -i 'linkvideo.m3u8' -bsf:a aac_adtstoasc -vcodec copy -c copy -crf 50 /test_stream/newfile.mp4 2>&1");

var_dump($run);

如果我从终端运行哪个ffmpeg或何为ffmpeg,它将返回 /usr/bin/ffmpeg,但如果我从代码中执行('哪个ffmpeg'),它将返回未找到的ffmpeg。我已经chown和chmod ffmpeg授予rwx,我试图移动ffmpeg /usr/local/bin仍然相同的结果。如果我从终端运行whoami,它将显示root,但如果从我的代码使用exec('whoami'),它将显示www. data,所以也许我错过了一些关于用户的东西,但我也已经尝试从root到www. data选择ffmpeg,结果仍然是ffmpeg没有找到,也许任何人都可以帮助,我正在使用codeigniter和已经安装ffmpeg在服务器使用sudo apt-get ffmpeg,谢谢之前!

共有2个答案

尉迟晔
2023-03-14

在应用程序中,将文件夹放入文件夹后third_part下载FFmpeg和ff探针。

    try {
        $FFMpeg = FFMpeg\FFProbe::create([
            'ffmpeg.binaries'  => APPPATH . '/third_party/ffmpeg',
            'ffprobe.binaries'  => APPPATH . '/third_party/ffprobe',
        ]);
    } catch (Exception $e) {
        try {
            $FFMpeg = FFMpeg\FFProbe::create([
                'ffmpeg.binaries' => '/usr/bin/ffmpeg',
                'ffprobe.binaries' => '/usr/bin/ffprobe'
            ]);
        } catch (Exception $e) {
            throw new Exception("However Unable to load FFProbe driver for FFmpeg");
        };
    };

另外,如果您使用的操作系统与Ubuntu不同,请更改第二次尝试。

对于Mac OS:

'ffmpeg.binaries'  => '/usr/local/bin/ffmpeg',
'ffprobe.binaries' => '/usr/local/bin/ffprobe' 

对于Windows:

'ffmpeg.binaries'  => 'C:/FFmpeg/bin/ffmpeg.exe',
'ffprobe.binaries' => 'C:/FFmpeg/bin/ffprobe.exe'

对于Ubuntu:

'ffmpeg.binaries' => '/usr/bin/ffmpeg',   
'ffprobe.binaries' => '/usr/bin/ffprobe'
邹京
2023-03-14

您是否检查了您的Web服务器用户是否能够运行ffmpeg?

 类似资料:
  • 当我运行我的Android应用程序从eclipse,我得到这个错误。 从日蚀错误复制粘贴 然而,我的亚洲开发银行就在它说的不在的地方。 出了什么问题,如何解决? 我将cd放入adb所在的目录()中,输入adb并显示 adb是绿色的,这意味着它是可执行的,对吗? 例如,dx也是绿色的,当我在命令提示符中输入dx时,它工作了... adb怎么了?

  • 块引号 J拥有一个包含maven父项目(parent)和子项目(Domain,Web,Win)的Eclipse工作区。父pom包含wicket-spring-boot-starter-parent

  • 当我尝试使用或出现以下错误 JAVA错误:sun。安全ssl。SSLSessionImpl。(Lsun/security/ssl/ProtocolVersion;Lsun/security/ssl/CipherSuite;Ljava/util/Collection;Lsun/security/ssl/SessionId;Ljava/lang/String;I)V 在sun.security.ssl

  • 问题内容: 通过扫描程序读取文件时,程序中出现运行时异常。 我的代码是: 问题答案: 与你需要检查,如果存在与下一行 所以循环变成 是读者返回null 当然在这段代码中,这取决于输入的格式是否正确

  • 我是新的Python开发和尝试使用pipenv。我运行命令,它成功运行: 然而,当我在一个新的根项目目录中运行命令时,我收到以下消息:。我怀疑我可能需要修改我的. bashrc,但是我不清楚要向文件中添加什么,或者是否需要修改。

  • 我用Android Studio为Unity做了一个jar插件。我的插件使用。但找不到该类。Unity的控制台向我显示了以下错误:

  • 我不知道如何处理以下错误,我已经搜索了网络,但没有找到任何东西: 以及: 我在gradle应用程序中的依赖项:

  • 我试图从netbeans连接到sqlite,但它没有得到我的conexion类 这是我的代码: 这是我的错误: Java语言lang.NoClassDefFoundError:Petrocabimas\u app/Conexion(错误名称:Petrocabimas\u app/Conexion)。lang.ClassLoader。在java中定义Class1(本机方法)。lang.ClassLo