我正在尝试将各种音频文件转换为我在 Laravel 项目中选择的特定音频类型。 在我的搜索中,我发现了一个名为 Laravel FFMpeg 的包,我开始使用 Laravel 6.2 进行全新安装,并按照 github 上显示的方式进行安装,当我开始使用它时,我遇到了此错误:
FFMpeg\Exception\ExecutableNotFoundException:无法在第 55 行的文件 C:\Users\Hatim\Desktop\Projects\Audio endor\php-ffmpeg\php-ffmpeg\src\FFMpeg\Driver\FFMpegDriver.php 中加载 FFMpeg #0 C:\Users\Hatim\Desktop\Projects\Audio endor\pbmedia\laravel-ffmpeg\src\Support\ServiceProvider.php(61): FFMpeg\Driver\FFMpegDriver::create(Object(Illuminate\Log\LogManager) , 对象(Alchemy\BinaryDriver\Configuration))
我目前正在做一件简单的事情:
FFMpeg::fromDisk('s3');
是的,我将其称为我的控制器:
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
];
我目前正在本地环境中工作,但这必须在服务器上运行。
我已经解决了问题,此回复是为了将来遇到包问题的开发人员。
首先你必须在你的设备上安装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'),
],
就像建议:在本地 .env 文件中设置:
FFMPEG_BINARIES=C:\bin\ffmpeg.exe
FFPROBE_BINARIES=C:\bin\ffprobe.exe
就我而言,这也有效
FFMPEG_PATH=c:/ffmpeg/bin/ffmpeg.exe
FFPROBE_PATH=c:/ffmpeg/bin/ffprobe.exe