PDA

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : دریافت زمان فایل ویدیویی



houniyaweb
March 30th, 2020, 17:47
دوستان گرامی سلام با استفاده از کتابخانه getid3 من زمان یک فایل ویدیویی رو دریافت میکنم منتهی امکان استفاده از ویدیوی خارجی ( لینک خارجی ) مقدور نیست. کسی از دوستان چنین تجربه ای داشته راهنمایی کنه ؟ کدی که استفاده شده با استفاده از کتابخانه getid3 هست که شکل زیر رو داره require_once('getid3/getid3.php'); $filename='https://dl.wpheart.ir/vid.mp4'; $getID3 = new getID3; $file = $getID3->analyze($filename); echo("Duration: ".$file['playtime_string']. " / Filesize: ".$file['filesize']." bytes
"); اگر هم روش دیگه ای سراغ دارید ممنون میشم بفرمایید.

firebox
March 30th, 2020, 18:54
برای گرفتن اطلاعات ویدیو، باید حداقل ۲۰۰-۳۰۰ کیلوبایت اول اون فایل ویدیویی رو دانلود کنی (متا دیتای اون فایل ویدیو نیازه) ،‌ بعد اون فایل رو بدی به کتابخانه ای که ازش استفاده میکنی.
برای دانلود یک مقدار مشخص از فایل راه های زیادی هست ، راحت ترین اش استفاده ازContent-Range هست ، میتونی مشخص کنی یک رنج مشخص از فایل دانلود بشه.
این یک نمونه با curl هست.

curl -r 0-200000 http://example.com/file.mp4 --output video.mp4

نمونه PHP



set_time_limit(0);
$url = 'http://example.com/file.mp4'
$fp = fopen (dirname(__FILE__) . '/video.mp4', 'w+');
$ch = curl_init(str_replace(" ","%20",$url));
curl_setopt($ch, CURLOPT_RANGE, '0-200000');
curl_setopt($ch, CURLOPT_TIMEOUT, 50);
curl_setopt($ch, CURLOPT_FILE, $fp);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_exec($ch);
curl_close($ch);
fclose($fp);

houniyaweb
March 31st, 2020, 00:04
سلام مهندس جان
تشکر ازشما
متاسفانه پاسخگو نبود و نتیجه حاصل نشد.
اگر نمونه آنلاین موجود دارید ( انگلیسی هم باشه مشکلی نیست ) ممنون میشم معرفی کنید

firebox
April 1st, 2020, 12:53
من الان تست کردم ، بدون مشکل کار کرد ، کدش خیلی ساده است، من نمیدونم شما چیکار میکنید.

این یک نمونه کامل :



require_once('../getid3/getid3.php');


$filename = './video.mp4';


set_time_limit(0);
$url = 'https://dl.wpheart.ir/vid.mp4';
$fp = fopen (dirname(__FILE__) . $filename, 'w+');
$ch = curl_init(str_replace(" ","%20",$url));
curl_setopt($ch, CURLOPT_RANGE, '0-200000');
curl_setopt($ch, CURLOPT_TIMEOUT, 50);
curl_setopt($ch, CURLOPT_FILE, $fp);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_exec($ch);
curl_close($ch);
fclose($fp);


// Initialize getID3 engine
$getID3 = new getID3;


$file = $getID3->analyze($filename);
echo "Duration: ".$file['playtime_string']." / Dimensions: ".$file['video']['resolution_x']." width by ".$file['video']['resolution_y']." height"." / Filesize: ".$file['filesize']." bytes<br />";


خروجی کد بالا :


Duration: 2:47 / Dimensions: 1280 width by 720 height / Filesize: 200001 bytes

همینطور که میبینی ، حجم فایل فقط ۲۰۰ کیلوبایته (200000 بایت) و اطلاعات ویدیو رو کامل نشون داده.

houniyaweb
April 1st, 2020, 16:07
سلام مهندس
تشر از شما , با کد دیگه ای نوشتم و حل کردم
تشکر از شما مهندس;)

- - - Updated - - -

سلام مهندس
تشر از شما , با کد دیگه ای نوشتم و حل کردم
تشکر از شما مهندس