0

我正在尝试在 Laravel 5 中执行php-ffmpeg 库的基本示例。我已经在 ubuntu 上安装了 ffmeg 并且可以从命令行正常工作。运行示例时出现以下错误。


错误

WelcomeController.php 第 26 行中的 FatalErrorException:找不到类“FFMpeg\FFMpeg\Coordinate\Dimension”


我的代码

use FFMpeg\FFMpeg;

class WelcomeController extends Controller {

    public function __construct()
    {
        $this->middleware('guest');
    }

    public function index()
    {
        return view('welcome');
    }

    public function video()
    {

        $ffmpeg = FFMpeg::create();

        $video = $ffmpeg->open('test1.mp4');

        $video
            ->filters()
            ->resize(new FFMpeg\Coordinate\Dimension(320, 240))
            ->synchronize();
        $video
            ->frame(FFMpeg\Coordinate\TimeCode::fromSeconds(10))
            ->save('frame.jpg');
        $video
            ->save(new FFMpeg\Format\Video\X264(), 'export-x264.mp4')
            ->save(new FFMpeg\Format\Video\WMV(), 'export-wmv.wmv')
            ->save(new FFMpeg\Format\Video\WebM(), 'export-webm.webm');
    }
}

会是什么错误?

4

1 回答 1

0

对不起,伙计们,我犯了一个愚蠢的错误。我只是在调用我之前真正忘记的函数时添加了额外的斜线。现在它工作正常。我的解决方案如下。


解决方案

use FFMpeg\FFMpeg;

class WelcomeController extends Controller {

    public function __construct()
    {
        $this->middleware('guest');
    }

    public function index()
    {
        return view('welcome');
    }

    public function video()
    {

        $ffmpeg = FFMpeg::create();

        $video = $ffmpeg->open('test1.mp4');

        $video
            ->filters()
            ->resize(new \FFMpeg\Coordinate\Dimension(320, 240))
            ->synchronize();
        $video
            ->frame(\FFMpeg\Coordinate\TimeCode::fromSeconds(10))
            ->save('frame.jpg');
        $video
            ->save(new \FFMpeg\Format\Video\X264(), 'export-x264.mp4')
            ->save(new \FFMpeg\Format\Video\WMV(), 'export-wmv.wmv')
            ->save(new \FFMpeg\Format\Video\WebM(), 'export-webm.webm');
    }
}
于 2016-07-14T09:10:59.203 回答