Laravel FFMpeg - 无法在文件错误中加载 FFMpeg

Laravel FFMpeg - Unable to load FFMpeg in file error

我正在尝试将 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

安装phpffmpegcomposer require php-ffmpeg/php-ffmpeg

安装Laravelffmpegcomposer 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 上给出的例子。如果我打电话给终点,我会收到上述错误。有没有人知道出了什么问题或如何调试?日志没有提供更多信息!

无法找到您的 FFMpeg 可执行文件。尝试在 .env 文件中添加 FFMPEG_BINARIESFFPROBE_BINARIES 的路径。

可能 FFmpeg 没有安装在您的 OS 上。 如果您使用 Ubuntu 或 Linux 然后 运行 下面的命令确保 FFmpeg 已安装

ffmpeg -protocols

如果你得到

Command 'ffmpeg' not found, but can be installed with:

sudo apt install ffmpeg

然后通过运行ning

安装FFmpeg
sudo apt update
sudo apt install ffmpeg

注意文件路径。

FFMpeg::open('') 的默认路径是 storage\app

我能够在不设置二进制文件或进行提取配置设置的情况下使它工作

另外,你只需要这个 composer require pbmedia/laravel-ffmpeg 来安装所有东西,它处理其他依赖项