Obtener Miniatura de Video YouTube
A veces, en lugar del video, lo que querremos recuperar de YouTube serán las miniaturas que se generan a partir del video, por el motivo que sea. ¿Cómo podemos hacer esto? Pues es más sencillo de lo que crees.
En primer lugar necesitamos la ID del video de YouTube. Es el código que encontramos en la URL, por ejemplo:
http://youtube.com/watch?v=XXXXXXXXXX http://youtu.be/XXXXXXXXXX http://youtube.com/vi/XXXXXXXXXX
XXXXXXXXXX es la ID del video, en estos casos. Si recibimos la URL, debemos entonces usar expresiones regulares para deducir la ID:
// Supongamos que $url es nuestra URL de YouTube if (preg_match('/watch\?v\=([A-Za-z0-9_-]+)/', $url, $encontrado)) $v_id = $encontrado[1]; elseif(preg_match('/youtu\.be\/([A-Za-z0-9_-]+)/', $url, $encontrado)) $v_id = $encontrado[1]; elseif(preg_match('/youtube\.com\/vi\/([A-Za-z0-9_-]+)/', $url, $encontrado)) $v_id = $encontrado[1];
No importa cómo recibamos la URL, al final $v_id contendrá la ID del video que necesitamos.
Bien, teniendo la ID del video, tenemos las imágenes. YouTube genera imágenes en miniatura para sus videos, que podemos encontrar en una ruta como esta:
http://img.youtube.com/vi/$v_id/1.jpg
Donde $v_id, como ya hemos visto antes, es la ID del video, y 1.jpg es el nombre de la imagen que queremos. Podemos cambiar el 1 por el número de la imagen que queramos. Si no existe la miniatura que pides, YouTube devolverá una imagen estandar con su logo.
¡Listo!
«No temo a los ordenadores; lo que temo es quedarme sin ellos»
.- Isaac Asimov
4 Comentarios
Rubén
Hola liberty: ¿Qué error o problema tienes exactamente?
liberty
pues no lo entiendo , lo he probado de mil formas y no me sale me echais un cable a comprenderlo??? por favor
Mireia
Se pueden obtener miniaturas de mas calidad?
davicio
ohh, buena info .. muy claro la explicacion