Jan
09Obtener video FLV de YouTube
Filed Under (PHP) by admin on 09-01-2009
Tagged Under : FLV, PHP, YouTube
Esta es la nueva manera de obtener el video de YouTube, los parámetros para get_video.php quedan iguales (video_id y t), pero t cambia y ahora no se obtiene al cargar el video, se tiene que llamar a otra URL para obtener esa información.
El método es muy fácil, los pasos son:
- Llamar a:Â
http://www.youtube.com/get_video_info.php?video_id=VIDEOID
DondeVIDEOIDes el id del video que vamos a obtener el archivoFLV(las ligas de YouTube para ver el video son como:http://www.youtube.com/v/VIDEOID)
Tomaremos por ejemplo este:
http://www.youtube.com/get_video_info.php?video_id=HDi9OeJqwG4 - El resultado será en texto y tendrá muchas variables como:
status=ok&title=Rob+Dougan+-+Furious+Angels&muted=0&avg_rating=4.8496592845&creator=eitch&length_seconds=237&vq=None&fmt_map=&token=OEgsToPDskKxBcum6P4BEStM-z3qkYZW&thumbnail_url=http%3A%2F%2Fi1.ytimg.com%2Fvi%2FHDi9OeJqwG4%2Fdefault.jpg&allow_ratings=True&plid=AARgErHUJPLX2RPWAAAAoABoIAE&track_embed=1
- De aqui solamente necesitamos obtener el parámetro
tokeny pasarlo al ya conocidoget_video.php:
http://www.youtube.com/get_video.php?video_id=HDi9OeJqwG4&t=OEgsToPDskKxBcum6P4BEStM-z3qkYZW
Con esto ya obtendremos el FLV deseado, en PHP la rutina serÃa la siguiente:
<?php
//video id por defecto
$video_id = 'HDi9OeJqwG4';
if (isset($_REQUEST['video_id']))
$video_id = trim($_REQUEST['video_id']);
//obtener informacion
$url_info = 'http://www.youtube.com/get_video_info.php?video_id='.$video_id;
$info = file_get_contents($url_info);
$vars = array();
parse_str($info, $vars);
$url_flv = 'http://www.youtube.com/get_video.php?video_id='.$video_id.'&t='.$var
s['token'];
print 'Archivo FLV: '.$url_flv;
?>
Con esto obtenemos la URL del archivo FLV.
Es importante notar que en Flex/Flash no se podrá cargar diréctamente get_video_info.php por la polÃtica del crossdomain de YouTube asà que hay que utilizar un proxy.
El demo lo pueden probar desde:
http://demo.livesourcing.com/blog_vida/articulos/DanguerArticle_Youtube/?video_id=VIDEOID
Donde VIDEOID es el id del video de YouTube de su preferencia =)
El código fuente lo pueden descargar de:
http://demo.livesourcing.com/blog_vida/articulos/DanguerArticle_Youtube.tar.gz
Â
Â
Â
Â