php - ffmpeg 不能与 php exec 一起使用。错误 : 133

标签 php ffmpeg exec

我正在尝试使用 ffmpeg 从视频文件中生成缩略图。

当我从我的 Mac 终端运行以下命令时,它工作正常:

ffmpeg -i video.mp4 -ss 00:00:01.000 -vframes 1 out.png

当我尝试使用来自 php exec 的相同命令时,它不起作用:
exec('/usr/local/bin/ffmpeg -i video.mp4 -ss 00:00:01.000 -vframes 1 test.png 2>&1', $output, $return_var);

$输出:
Array
(
   [0] => dyld: Symbol not found: _sqlite3_intarray_bind
   [1] =>   Referenced from: /System/Library/Frameworks/CoreData.framework/Versions/A/CoreData
   [2] =>   Expected in: /Applications/XAMPP/xamppfiles/lib/libsqlite3.dylib
   [3] =>  in /System/Library/Frameworks/CoreData.framework/Versions/A/CoreData
)

$return_var:
133

请帮忙

最佳答案

这可能是因为 DYLD_LIBRARY_PATH链接到 XAMPP 库文件夹。将下面的行放在 exec 之前命令,它应该工作:

putenv('DYLD_LIBRARY_PATH');

关于php - ffmpeg 不能与 php exec 一起使用。错误 : 133,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35766058/

相关文章:

php - 获取 ID 但显示名称

php - 集成 coinsecure api 给我错误..?

unity3d - 在 UWP 的 Unity 插件中使用 DirectX11 的硬件加速 H264 解码

ffmpeg - 通过 TCP 流式传输 FFmpeg

c - 与dup2(),exec()和管道混淆

javascript - 在 PHP 中获取 MySQL DateTime 到 JavaScript 中的秒

php - 回显两个表的结果

video - 使用ffmpeg进行h.265编码,视频无法正常播放

bash - 如何使用 Find-exec 和 Tr 处理大量文件

java - 从 Java 运行时与在终端中运行时的 SVN Info 命令不同