🎉 سال نو، مهارت نو، مشاوره رایگان نقشه راه برنامه نویسی (آفر ویژه ثبت نام قبل از افزایش قیمت 🔥)
۰ ثانیه
۰ دقیقه
۰ ساعت
۱ عرفان ولی زاده
خطای Undefined array key \"streams\"
جامعه لاراول ایجاد شده در ۱۸ مرداد ۱۴۰۱

سلام خسته نباشید،

من وقتی میخوام FFMpeg استفاده کنم خطای Undefined array key "streams" رو بهم بر میگردونه ( زمانی که از خود FFMpeg و پکیج مخصوص Laravel FFmpeg استفاده میکنم برای گرفتن ثانیه بهم این خطارو میده

$FFmpeg = FFMpeg::create(
    [
        'ffmpeg.binaries'  =>
            'C:\\ffmpeg\\bin\\ffmpeg.exe',
        'ffprobe.binaries' =>
            'C:\\ffmpeg\\bin\\ffprobe.exe',
    ]
);
$Video = $FFmpeg->open(Storage::path('Minions.The.Rise.Of.Gru.2022.Trailer.mp4'))->get('duration');
dd($Video);

قطعه کد مخصوص پکیج FFMpeg برای لاراول:

namespace App\\Http\\Controllers;
use App\\Models\\SocialMediaLink;
use Database\\Seeders\\SocialMediaLinkSeeder;
use Illuminate\\Http\\Request;
use Hekmatinasser\\Verta\\Verta;
use Illuminate\\Support\\Facades\\Storage;
use ProtoneMedia\\LaravelFFMpeg\\Support\\FFMpeg;
class HomeController extends Controller
{
    public function index()
    {
        FFMpeg::openUrl('http://urlpath',[])->getDurationInSeconds();
    }
}

زمانی هم که از FFProbe استفاده میکنم خطای: Undefined array key "format" رو بهم بر میگردونه

$FFmpeg = FFProbe::create(
    [
        'ffmpeg.binaries'  =>
            'C:\\ffmpeg\\bin\\ffmpeg.exe',
        'ffprobe.binaries' =>
            'C:\\ffmpeg\\bin\\ffprobe.exe',
    ]
);
$Video = $FFmpeg->format(Storage::path('Minions.The.Rise.Of.Gru.2022.Trailer.mp4'))->get('duration');

سلام عرفان عزیز، وقت به خیر

ابتدا این ویدئو مشاهده کنید. احتمالا مشکل شما حل خواهد شد.

https://www.youtube.com/watch?v=5yw0ITL1Xfo


اما بررسی هم کنید که حتما symbolic link بین پوشه public و storage/app/public وجود داشته باشد.

در غیر اینصورت لطفا پروژتون در گیت هاب قرار بدید تا بررسی بیشتر انجام شود.


موفق باشید.

محمد حسن عاطفت ۱۸ مرداد ۱۴۰۱، ۰۶:۰۴