【发布时间】:2021-05-04 21:15:03
【问题描述】:
我正在尝试将 FFMpeg 集成到 Laravel 项目中,但在调用端点时出现错误:
FFMpeg\Exception\ExecutableNotFoundException: Unable to load FFMpeg in file /Users/me/Desktop/video/vendor/php-ffmpeg/php-ffmpeg/src/FFMpeg/Driver/FFMpegDriver.php on line 55
我做了什么:
brew install ffmpeg - 本地安装FFMEG,使用终端时可以确认此功能
全新 Laravel 安装 composer create-project laravel/laravel example-app
安装php ffmpeg composer require php-ffmpeg/php-ffmpeg
安装 Laravel ffmpeg composer require pbmedia/laravel-ffmpeg
将 FFMPEG 添加到 app.php 中的提供者和别名:
'providers' => [
...
ProtoneMedia\LaravelFFMpeg\Support\ServiceProvider::class,
...
];
'aliases' => [
...
'FFMpeg' => ProtoneMedia\LaravelFFMpeg\Support\FFMpeg::class
...
];
然后我的控制器是
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use FFMpeg;
class VideoController extends Controller
{
public function makeVideo()
{
FFMpeg::fromDisk('songs')
->open('yesterday.mp3')
->export()
->toDisk('converted_songs')
->inFormat(new \FFMpeg\Format\Audio\Aac)
->save('yesterday.aac');
return "hello";
}
}
这是他们在 git 上给出的例子。如果我调用终点,我会收到上述错误。有没有人知道出了什么问题或如何调试?日志没有给我更多信息!
【问题讨论】:
-
这意味着找不到可执行文件
-
@dtwoo 我有同样的问题。 ffmpeg 在工作上运行良好,但是当我尝试在控制器中使用它时,我得到了同样的错误。你能解决这个问题吗?
-
@MohsenMirhosseini 是的,通过将路径添加到我的 .env 文件来设法使其工作 - 显然将位置替换为 ffmepg FFMPEG_BINARIES=C:\bin\ffmpeg.exe FFPROBE_BINARIES=C 的本地副本:\bin\ffprobe.exe