Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Dian Carlos

[Resolvido] Como baixa a imagem de capa de um vídeo do Youtube em

Recommended Posts

Olá amigos do iMasters.

 

Procurei na internet e achei um modo de baixar a imagem de miniatura de qualquer vídeo do Youtube, pois estou desenvolvendo um sistema de cadastro de vídeos para um site.

 

Mas a imagem que eu consigo só tem 480x360 de resolução, sendo que os videos que eu testo tem a versão em HD.

 

Gostaria de saber se há uma forma de ter essa imagem de capa do vídeo em HD, em uma resolução maior.

 

Segue abaixo o mini formulário que fiz para baixar as imagens, está baixando em 480x360.

 

Boa tarde galera.

 

<!DOCTYPE HTML>
<html>
<head>
<meta charset="UTF-8">
<title>Download de Miniatura do Youtube com cURL</title>
</head>

<body>

<form action="" method="POST">
<label for="video">Insira aqui a URL do video do Youtube <br /><b>Ex.:http://www.youtube.com/watch?v=YJVmu6yttiw</b></label><br />
<input name="video" type="text">
<input name="Enviar" type="submit">
</form>

<?php
if($_POST){
$CURLVIDEO = $_POST['video'];
$CURLVIDEO = explode('http://www.youtube.com/watch?v=', $CURLVIDEO);
$CURLVIDEO = $CURLVIDEO[1];	

$ch = curl_init('http://i1.ytimg.com/vi/' . $CURLVIDEO . '/0.jpg');

curl_setopt($ch, CURLOPT_HEADER, false);
   curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
   curl_setopt($ch, CURLOPT_BINARYTRANSFER, true);

$bImg = curl_exec($ch);
   curl_close($ch);

$fp = fopen('nome_arquivo.jpg', 'w'); //cria o arquivo
   fwrite($fp, $bImg); //grava o binario da imagem
   fclose($fp); //fecha o arquivo
}
?>

</body>
</html>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Rapaz, você nem precisa de cURL para resgatar as thumbnails dos vídeos do Youtube.

 

Se o vídeo for em HD, a thumbnail de máxima resolução é esta:

http://img.youtube.com/vi/[iD do vídeo]/maxresdefault.jpg

Se não for, você pode resgatar a melhor thumbnail possível por aqui:

http://img.youtube.com/vi/[iD do vídeo]/mqdefault.jpg

Veja exemplos funcionando:

http://img.youtube.com/vi/UJtB55MaoD0/maxresdefault.jpg
http://img.youtube.com/vi/UJtB55MaoD0/mqdefault.jpg

Essas são as thumbnails

.

 

A solução que te dei não necessita de cURL. Mas também é possível fazer com utilizando a API do Youtube. Veja → Youtube API Developer's Guide (PHP)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Guilherme Oderdenge, era exatamente isso que eu estava precisando, mas eu testei a url http://img.youtube.com/vi/UJtB55MaoD0/maxresdefault.jpg com um outro vídeo aqui e não apareceu a imagem máxima, isso só funciona com vídeos que são em HD mesmo?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sim, Dian. Somente com vídeos em HD. Para outras resoluções, a melhor qualidade que você pode conseguir é utilizando este padrão:

"hqdefault.jpg". Sacou?

 

Abraços! :thumbsup:

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.