嗨,我正在尝试安装php-ffmpeg。
有人能指点我或纠正我吗?
-
我在windows上安装了作曲器,然后遍历到我创建的文件夹中运行
install ffmpeg
cmd -
执行此命令后,创建了一个
composer.json
,composer.lock
文件以及一个供应商文件夹。 -
后来从这里安装了64位的共享
FFMpeg
构建http://ffmpeg.zeranoe.com/builds/
并形成这个文件夹复制bin文件夹到我的目录设置ffmpeg
和ffprobe
路径在create()
期间,像这样
$ffmpeg = 'FFMpeg'FFMpeg::create([
'ffmpeg.binaries' => '/vendor/bin/ffmpeg.exe',
'ffprobe.binaries' => '/vendor/bin/ffprobe.exe'
]);
目前我得到这个错误说:
"Fatal error: Uncaught exception 'Alchemy'BinaryDriver'Exception'ExecutableNotFoundException' with message 'Executable not found, proposed : /vendor/bin/' in D:'xampp'htdocs'health'vendor'alchemy'binary-driver'src'Alchemy'BinaryDriver'AbstractBinary.php:160 Stack trace: #0 D:'xampp'htdocs'health'vendor'php-ffmpeg'php-ffmpeg'src'FFMpeg'Driver'FFProbeDriver.php(48): Alchemy'BinaryDriver'AbstractBinary::load('/vendor/bin/', NULL, Object(Alchemy'BinaryDriver'Configuration)) #1 D:'xampp'htdocs'health'vendor'php-ffmpeg'php-ffmpeg'src'FFMpeg'FFProbe.php(207): FFMpeg'Driver'FFProbeDriver::create(Array, NULL) #2 D:'xampp'htdocs'health'vendor'php-ffmpeg'php-ffmpeg'src'FFMpeg'FFMpeg.php(117): FFMpeg'FFProbe::create(Array, NULL, NULL) #3 D:'xampp'htdocs'health'ff.php(6): FFMpeg'FFMpeg::create(Array) #4 {main} Next exception 'FFMpeg'Exception'ExecutableNotFoundException' with message 'Unable to load FFProbe' in D:'xampp'htdocs'health'vendor'php-ffmpeg'php-ffmpeg'src'FFMpeg'Driver'FFProbeDriver.php:50 Stack trace: #0 D:'xampp'htdocs'he in D:'xampp'htdocs'health'vendor'php-ffmpeg'php-ffmpeg'src'FFMpeg'Driver'FFProbeDriver.php on line 50".
那么我可能做错了什么,或者我错过了任何步骤。谁能告诉我正确的方向?
以防有人在他们的web服务器上看到这个PHP错误,并使用composer安装了FFMPEG,我得到了同样的错误,这里是我如何解决它。
由于某些原因(我不知道)FFMPEG二进制文件没有到达/usr/local/bin
我检查这是终端运行:ls /usr/local/bin
没有ffmpeg或ffprobe存在!
这是二进制文件的链接。下载你需要的。如果不清楚您的服务器是32位还是64位,请运行uname -m
。如果您的系统运行32位(i686或i386)或64位(x86_64)。
我刚刚下载了ffmpeg和ffprobe二进制文件到我的本地机器,然后通过FTP上传到public_html/,但你显然可以把它们放在任何地方。
接下来,在终端中,将二进制文件移动到正确的位置:
sudo cp -f public_html/ffmpeg /usr/local/bin
sudo cp -f public_html/ffprobe /usr/local/bin
确保他们已经到了ls /usr/local/bin
您应该可以同时看到它们,并且它们将显示为白色文本。
之后,您需要使这两个二进制文件可执行。在终端:
sudo chmod +x /usr/local/bin/ffmpeg
sudo chmod +x /usr/local/bin/ffprobe
你都准备好了!
"
嗯,我以前遇到过这个问题,我是这样解决的。
-
确保你已经在你的机器上安装了正确的ffmpeg文件;Linux服务器或mac/windows,如果你在本地运行。请务必为您的cpu下载正确的静态构建(我的是64位的,所以我下载了一个64位的静态构建)
-
在您的服务器上提取tar文件…如果你使用的是env文件(不要忘记引号)
-
确保你的引用路径上有引号。
FFMPEG_PATH = "/home/.../usr/bin/ffmpeg/ffmpeg"
FFPROBE_PATH = "/home/.../usr/bin/ffmpeg/ffprobe"
如果你不使用env文件,你可以像这样直接引用
$ffmpeg = FFMpeg::create(
array(
'ffmpeg.binaries' => "/home/.../usr/bin/ffmpeg/ffmpeg",
'ffprobe.binaries' => "/home/.../usr/bin/ffmpeg/ffprobe",
'timeout' => 10,
'ffmpeg.threads' => 12,
)
);
您需要在您的机器上安装FFmpeg
(如果您在PC上工作),否则您需要在您的服务器上安装FFmpeg
在Ubuntu
中安装FFmpeg
:
sudo add-apt-repository ppa:mc3man/trusty-media
sudo apt-get update
sudo apt-get install ffmpeg
sudo apt-get install frei0r-plugins
不能在这里列出其他机器的完整细节,请按照给定的链接这是一个链接,它解释了如何做到这一点。
https://github.com/adaptlearning/adapt_authoring/wiki/Installing-FFmpegOn Mac
brew install ffmpeg
以防有人在windows上遇到类似的问题。标准库删除了反斜杠
二进制文件(D: ' ' ffmpeg ' ffmpeg.exe)
所以你应该用斜杠代替
二进制文件(D://ffmpeg/ffmpeg.exe)
这将适用于寡妇。希望对大家有所帮助
可能是ffmpeg.exe/ffprobe.exe在"ffmpeg. exe "上的正确路径。二进制文件"answers"ffprobe.binaries"