ارور نتوانستن ساخت نمونه سازی کلاس ffmpeg

پرسیده شده
فعالیت 1224 روز پیش
دیده شده 472 بار
0

سلام , من درست در زمان 11:20 به این ارور بر می خورم :

 

Target [Alchemy\BinaryDriver\ProcessBuilderFactoryInterface] is not instantiable while building [App\Http\Controllers\FileController, App\Services\Uploader\Uploader, FFMpeg\FFMpeg, FFMpeg\Driver\FFMpegDriver].

لطفا راهنمایی کنید

فایل پیوست

Faraz salehi
Faraz salehi

4 دی 99

2
حذف شده

در نسخه جدید ffmpeg ساخت نمونه تغییر کرده و باید داخل AppServiceProvider به شکل زیر این مورد رو bind کنید.

 

$this->app->bind(FFMpeg::class, function ($app) {
      return FFMpeg\FFMpeg::create();
});
فایل پیوست

مهرداد سامی

توسط

مهرداد سامی

8 دی 99

0
حذف شده

سلام 

کلاس Uploader رو برای بنده ارسال کنید.

فایل پیوست

مهرداد سامی

توسط

مهرداد سامی

5 دی 99

حذف شده
ok?
Faraz salehi

6 دی 99

0
حذف شده
<?php

// Uploader.php

namespace App\Services\Uploader;



use FFMpeg\FFMpeg;
use Illuminate\Http\Request;

class Uploader
{
    private $request;
    private $storageManager;
    private $file;
    private $ffmpeg;

    public function __construct(Request $request, StorageManager $storageManager,FFMpeg $ffmpeg)
    {
        $this->request = $request;
        $this->storageManager = $storageManager;
        $this->file = $request->file;
        $this->ffmpeg = $ffmpeg;
    }

    public function upload()
    {
        $this->putFileIntoStorage();
        dd($this->ffmpeg->durationOf($this->storageManager->getAbsolutePathOf($this->file->getClientOriginalName(), $this->getType(),$this->isPrivate())));
    }

    private function putFileIntoStorage()
    {
        $method = $this->isPrivate() ? 'putFileAsPrivate' : 'putFileAsPublic';

        $this->storageManager->$method($this->file->getClientOriginalName(), $this->file, $this->getType());

    }

    private function getType()
    {
        return [
            'image/jpg' => 'image',
            'image/jpeg' => 'image',
            'video/mp4' => 'video',
            'application/zip' => 'archive',
        ][$this->file->getClientMimeType()];
    }

    private function isPrivate()
    {
        return $this->request->has('private');
    }


}
فایل پیوست

Faraz salehi

توسط

Faraz salehi

6 دی 99