无法在laravel项目中的文件中加载FFMpeg

问题描述 投票:0回答:3

我正在尝试将各种音频文件转换为我在 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

];

我目前正在本地环境中工作,但这必须在服务器上运行。

php laravel audio ffmpeg
3个回答
6
投票

我已经解决了问题,此回复是为了将来遇到包问题的开发人员。

首先你必须在你的设备上安装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'),
],

1
投票

就像建议:在本地 .env 文件中设置:

FFMPEG_BINARIES=C:\bin\ffmpeg.exe
FFPROBE_BINARIES=C:\bin\ffprobe.exe

0
投票

就我而言,这也有效

FFMPEG_PATH=c:/ffmpeg/bin/ffmpeg.exe

FFPROBE_PATH=c:/ffmpeg/bin/ffprobe.exe
© www.soinside.com 2019 - 2024. All rights reserved.