✅ WEB і WordPress новини, теми, плагіни. Тут ми ділимося порадами і кращими рішеннями для сайтів.

Як отримати ескіз із відео YouTube, Vimeo та Dailymotion

46

Ви хочете отримати ескіз відео YouTube, Vimeo та Dailymotion? Це 3 найпопулярніші веб-сайти для обміну відео в Інтернеті. Кожна з цих платформ дозволяє користувачам отримувати ескіз відео своїх відео. У цій статті ми бачимо, як отримати ескіз, використовуючи URL-адресу відео цих платформ.

Коли ви інтегруєте відеогалерею на веб-сайтах, ви повинні відображати мініатюри відео. А потім після натискання мініатюри повинно відтворитись пов’язане відео. Вбудовувати відео за допомогою тегу iframe не рекомендується. Це займає велику пропускну здатність сервера і збільшує розмір сторінки.

Я збираюся написати код, який отримує ескіз відео через URL-адресу відео. Натискаючи ці мініатюри, ви можете відтворювати свої відео, використовуючи fancybox або будь-які інші власні рішення, які вам більше подобаються.

Сказавши це, давайте подивимося по черзі, як отримати ескізи відео YouTube, Vimeo та Dailymotion.

Отримати ескіз із URL-адреси відео YouTube

Для нашого підручника я припускаю, що ви передаєте URL-адресу відео, щоб отримати ескіз відео. У випадку з YouTube існує кілька типів дійсних URL-адрес. Нижче наведені дійсні URL-адреси відео YouTube:

Нижче наведений метод витягує ідентифікатор відео з будь-якого з вищезазначених форматів URL.

<?php function extractVideoID($url){     $regExp = "/^.*((youtu.be/)|(v/)|(/u/w/)|(embed/)|(watch?))??v?=?([^#&?]*).*/";     preg_match($regExp, $url, $video);     return $video[7]; } ?>

Витягнувши ідентифікатор відео з URL-адреси, ви можете легко отримати ескіз відео, використовуючи наведений нижче спосіб:

<?php function getYouTubeThumbnailImage($video_id) {     return "//i3.ytimg.com/vi/$video_id/hqdefault.jpg"; } ?>

Тут ми отримуємо ескіз за замовчуванням за допомогою hqdefault.jpg. Можна передавати різні значення, наприклад 0.jpg, 1.jpgщоб отримати різний розмір мініатюр.

Отже, наш остаточний код для отримання ескізу з URL-адреси відео YouTube:

<?php function extractVideoID($url){     $regExp = "/^.*((youtu.be/)|(v/)|(/u/w/)|(embed/)|(watch?))??v?=?([^#&?]*).*/";     preg_match($regExp, $url, $video);     return $video[7]; }   function getYouTubeThumbnailImage($video_id) {     return "https://i3.ytimg.com/vi/$video_id/hqdefault.jpg"; //pass 0,1,2,3 for different sizes like 0.jpg, 1.jpg }   $video_url = 'YOUTUBE_VIDEO_URL'; $video_id = extractVideoID($video_url); $thumbnail =  getYouTubeThumbnailImage($video_id); echo "<img src='$thumbnail' />"; ?>

Отримайте ескіз від відео Vimeo та Dailymotion

Шукаючи рішення щодо вилучення ідентифікатора відео з URL-адрес відео Vimeo та Dailymotion, я знайшов цей ресурс. Я використав їх метод для вилучення ідентифікатора відео з URL-адрес відео Vimeo та Dailymotion. Цей метод підтримує всі допустимі формати URL-адрес відео Vimeo та Dailymotion.

У разі отримання ескізу відео Vimeo код буде таким:

<?php function getVimeoId($url) {     if (preg_match('#(?:https?://)?(?:www.)?(?:player.)?vimeo.com/(?:[a-z]*/)*([0-9]{6,11})[?]?.*#', $url, $m)) {         return $m[1];     }     return false; }   function getVimeoThumb($id) {     $arr_vimeo = unserialize(file_get_contents("https://vimeo.com/api/v2/video/$id.php"));     return $arr_vimeo[0]['thumbnail_small']; // returns small thumbnail     // return $arr_vimeo[0]['thumbnail_medium']; // returns medium thumbnail     // return $arr_vimeo[0]['thumbnail_large']; // returns large thumbnail }   $video_url = 'VIMEO_VIDEO_URL'; $video_id = getVimeoId($video_url); $thumbnail = getVimeoThumb($video_id); echo "<img src='$thumbnail' />"; ?>

Для відео Vimeo ми можемо використовувати 3 значення, такі як thumbnail_small, thumbnail_medium, thumbnail_large, щоб отримати малі, середні та великі розміри мініатюр відповідно.

Нарешті, код для отримання ескізу відео Dailymotion такий.

<?php function getDailyMotionId($url) {     if (preg_match('!^.+dailymotion.com/(video|hub)/([^_]+)[^#]*(#video=([^_&]+))?|(dai.ly/([^_]+))!', $url, $m)) {         if (isset($m[6])) {             return $m[6];         }         if (isset($m[4])) {             return $m[4];         }         return $m[2];     }     return false; }   function getDailymotionThumb($id) {     $thumbnail_large_url = 'https://api.dailymotion.com/video/'.$id.'?fields=thumbnail_360_url'; //pass thumbnail_360_url, thumbnail_480_url, thumbnail_720_url, etc. for different sizes     $json_thumbnail = file_get_contents($thumbnail_large_url);     $arr_dailymotion = json_decode($json_thumbnail, TRUE);     $thumb = $arr_dailymotion['thumbnail_360_url'];     return $thumb;    }   $video_url = 'DAILYMOTION_VIDEO_URL'; $video_id = getDailyMotionId($video_url); $thumbnail = getDailymotionThumb($video_id); echo "<img src='$thumbnail' />"; ?>

Сподіваюся, ви розумієте, як отримати ескіз відео YouTube, Vimeo та Dailymotion Videos. Якщо ви використовуєте будь-який інший метод для досягнення цього, повідомте мене про це в розділі коментарів нижче.

Пов’язані статті

Джерело запису: artisansweb.net

Цей веб -сайт використовує файли cookie, щоб покращити ваш досвід. Ми припустимо, що з цим все гаразд, але ви можете відмовитися, якщо захочете. Прийняти Читати далі