我正在尝试将各种音频文件转换为我在 laravel 项目中选择的特定音频类型。
在我的搜索中,我找到了一个名为 Laravel FFMpeg 的包,我从 laravel 6.2 的全新安装开始,并按照它在 github 上显示的那样进行了安装,当我开始使用它时,我遇到了这个错误:
FFMpeg\Exception\ExecutableNotFoundException: Unable to load FFMpeg in file C:\Users\Hatim\Desktop\Projects\Audio\vendor\php-ffmpeg\php-ffmpeg\src\FFMpeg\Driver\FFMpegDriver.php on line 55 #0 C:\Users\Hatim\Desktop\Projects\Audio\vendor\pbmedia\laravel-ffmpeg\src\Support\ServiceProvider.php(61): FFMpeg\Driver\FFMpegDriver::create(Object(Illuminate\Log\LogManager), Object(Alchemy\BinaryDriver\Configuration))
我目前只是在做一件简单的事情:
FFMpeg::fromDisk('s3');
是的,我称它为我的 Controller :use ProtoneMedia\LaravelFFMpeg\Support\FFMpeg;
我也试过安装PHP-FFMpeg
打包并尝试在我的设备上安装 FFmpeg 并使用我的 config\laravel-FFmpeg 中的路径链接它这就是它现在看起来没有任何修改的样子,我去了我的 .env 文件夹,但它与 FFmpeg 没有任何关系,所以它采用默认值,这就是为什么我尝试在我的设备上安装它并用 FFmpeg 的路径替换默认值在我的设备上。
return [
'ffmpeg' => [
'binaries' => env('FFMPEG_BINARIES', 'ffmpeg'),
'threads' => 12,
],
'ffprobe' => [
'binaries' => env('FFPROBE_BINARIES', 'ffprobe'),
],
'timeout' => 3600,
'enable_logging' => true
];我目前正在我的本地环境中工作,但这必须在服务器上工作。
最佳答案
我已经解决了这个问题,这个回复是给 future 开发者对包有问题的。
首先你必须在你的设备上安装 FFmpeg,[点击我][1]
选择你的操作系统并下载它,解压缩它重命名为 FFmpeg,然后复制文件夹并将其放在你的 c: 文件夹中。
之后只需转到项目中的 config\laravel-FFmpeg 文件并将默认值更改为 c: 文件夹中的确切路径
'ffmpeg' => [
'binaries' => env('FFMPEG_BINARIES', 'C:\ffmpeg\bin\ffmpeg.exe'),
'threads' => 12,
],
'ffprobe' => [
'binaries' => env('FFPROBE_BINARIES', 'C:\ffmpeg\bin\ffprobe.exe'),
],
关于php - 无法在 laravel 项目的文件中加载 FFMpeg,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62816472/