Laravel无法加载FFProbe?

Rea*_*ues 5 php ffmpeg laravel

我正在使用PHP-FFMpeg存储库在我的Laravel应用程序中进行一些视频工作,但我遇到了一些设置它的问题.一旦我安装了PHP-FFMpeg repo,我就尝试创建一个FFMpeg实例:

$ffmpeg = \FFMpeg\FFMpeg::create();
Run Code Online (Sandbox Code Playgroud)

但是,这不起作用.作为回应,我得到一个ErrorException,它只是声明:

Unable to load FFProbe
Run Code Online (Sandbox Code Playgroud)

这是没有意义的给我,我跑的时候ffmpeg,并ffprobe从我的Mac的终端,我可以看到他们正在安装.这显然是一个路径/解决问题,但我不确定如何解决它.有任何想法吗?

这都是在一个运行在localhost上的MAMP项目下托管的.

Lim*_*nte 7

指定二进制文件的路径应该会有所帮助:

$ffmpeg = \FFMpeg\FFMpeg::create([
    'ffmpeg.binaries'  => exec('which ffmpeg'),
    'ffprobe.binaries' => exec('which ffprobe')
]);
Run Code Online (Sandbox Code Playgroud)

  • 这帮助我弄清楚没有安装 `ffmpeg` 包。在 ubuntu 上,我必须运行 `sudo apt-get install ffmpeg`,它将它安装在 `/usr/bin` 中。最重要的是,确保安装了软件包!!! (2认同)

小智 7

$ffmpeg = \FFMpeg\FFMpeg::create([
    'ffmpeg.binaries'  => '/usr/local/bin/ffmpeg',
    'ffprobe.binaries' => '/usr/local/bin/ffprobe' 
]);
Run Code Online (Sandbox Code Playgroud)

你的ffmpeg安装路径。

这就是@limonte 的意思,它对我有用。


小智 6

我花了很多时间研究这个问题,并且我将这个答案发布给在 Windows 上遇到类似问题的任何人。库删除了反斜杠

(D:\binaries\ffmpeg\ffmpeg.exe) 
Run Code Online (Sandbox Code Playgroud)

所以你应该使用正斜杠

(D:/binaries/ffmpeg/ffmpeg.exe) 
Run Code Online (Sandbox Code Playgroud)

这对寡妇有效。希望这可以帮助


Sau*_*try 5

对于 Mac 操作系统:

'ffmpeg.binaries'  => '/usr/local/bin/ffmpeg',
'ffprobe.binaries' => '/usr/local/bin/ffprobe' 
Run Code Online (Sandbox Code Playgroud)

对于 Windows:

'ffmpeg.binaries'  => 'C:/FFmpeg/bin/ffmpeg.exe',
'ffprobe.binaries' => 'C:/FFmpeg/bin/ffprobe.exe'
Run Code Online (Sandbox Code Playgroud)

对于乌班图:

'ffmpeg.binaries' => '/usr/bin/ffmpeg',   
'ffprobe.binaries' => '/usr/bin/ffprobe'
Run Code Online (Sandbox Code Playgroud)