...
✅ Notícias, temas e plug-ins da WEB e do WordPress. Aqui compartilhamos dicas e as melhores soluções para sites.

Como obter miniaturas de vídeos do YouTube, Vimeo e Dailymotion

67

Você está procurando a miniatura dos vídeos do YouTube, Vimeo e Dailymotion? Estes 3 são os sites de compartilhamento de vídeo mais populares da Internet. Cada uma dessas plataformas permite que os usuários busquem a miniatura de seus vídeos. Neste artigo, veremos como obter a miniatura usando a URL do vídeo dessas plataformas.

Ao integrar uma galeria de vídeo nos sites, você deve exibir as miniaturas dos vídeos. E então, ao clicar na miniatura, um vídeo relacionado deve ser reproduzido. Incorporar vídeos usando uma tag iframe não é recomendado. É preciso muita largura de banda de um servidor e aumenta o tamanho da página.

Vou escrever um código que obtém a miniatura do vídeo por meio de um URL de vídeo. Ao clicar nessas miniaturas, você pode reproduzir seus vídeos usando o fancybox ou qualquer outra solução personalizada de sua preferência.

Dito isso, vamos ver um por um como obter miniaturas de vídeos do YouTube, Vimeo e Dailymotion.

Obter miniatura do URL do vídeo do YouTube

Para nosso tutorial, suponho que você está passando o URL do vídeo para obter a miniatura de um vídeo. No caso do YouTube, existem vários tipos de URLs válidos disponíveis. Abaixo estão os URLs válidos do vídeo do YouTube:

O método a seguir extrai o ID do vídeo de qualquer um dos formatos de URL acima.

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

Depois de extrair o ID do vídeo do URL, você pode obter facilmente a miniatura do vídeo usando o método abaixo:

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

Aqui, estamos obtendo a miniatura padrão com hqdefault.jpg. Pode-se passar valores diferentes como 0.jpg, 1.jpgpara obter tamanhos de miniatura diferentes.

Portanto, nosso código final para obter a miniatura do URL do vídeo do 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' />";
?>

Obter miniaturas dos vídeos do Vimeo e do Dailymotion

Enquanto procurava por uma solução para extrair o id de vídeo dos URLs de vídeo do Vimeo e do Dailymotion, encontrei este recurso. Usei o método deles para extrair o ID do vídeo de URLs de vídeo do Vimeo e do Dailymotion. Este método suporta todos os formatos de URL válidos de vídeos Vimeo e Dailymotion.

No caso de buscar miniaturas de vídeos do Vimeo, o código será o seguinte:

<?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' />";
?>

Para o vídeo Vimeo, podemos usar 3 valores como thumbnail_small, thumbnail_medium, thumbnail_large para obter tamanhos de miniatura pequenos, médios e grandes, respectivamente.

Finalmente, o código para obter a miniatura do vídeo do Dailymotion é o seguinte.

<?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' />";
?>

Espero que você entenda como obter as miniaturas dos vídeos do YouTube, Vimeo e Dailymotion. Se você estiver usando qualquer outro método para conseguir isso, informe-me na seção de comentários abaixo.

Artigos relacionados

Fonte de gravação: artisansweb.net

Este site usa cookies para melhorar sua experiência. Presumiremos que você está ok com isso, mas você pode cancelar, se desejar. Aceitar Consulte Mais informação