Salut,
je suis en train de me torcher une petite fonction PHP (pour montreuil.net version 2) qui ramassera, depuis une adresse http, les informations sur une vidéo youtube, dailymotion, vimeo, etc... (vignette, titre, infos diverses)
Si ça intéresse quelqu'un, je mets à dispo ?
Autre question : vous utilisez beaucoup d'autres sites de Vidéo (en général, pas les cas particuliers) ?
Il y a viddler, vimeo, wat.tv et blip.tv qui sont très utilisés également.
Ok, merci Yoshi, je me pencherai dessus alors.
Un exemple orienté purement "fonctionnel", mais par la suite, je vais normaliser tout ça, rajouter les autres médias, faire une classe.
<?php
$media=InsereMedia("http://www.dailymotion.com/video/xcw00q_solidarites-international_creation#hp-v-v6");
$media=InsereMedia("http://www.youtube.com/watch?v=gemhif9wZgw&feature=related");
$media=InsereMedia("http://www.vimeo.com/6631139");
function InsereMedia($url="") {
if($url=="") {
echo "Arghhh !";
} elseif(preg_match('|^http(s)?://[a-z0-9-]+(.[a-z0-9-]+)*(:[0-9]+)?(/.*)?$|i', $url)) {
preg_match("/^(http:\/\/)?([^\/]+)/i",$url,$chaines);
$d=explode(".",$chaines[2]);
$hote=$d[count($d)-2].".".$d[count($d)-1];
switch($hote) {
case "youtube.com" : Media_Youtube($url); break;
case "dailymotion.com" : Media_Dailymotion($url); break;
case "vimeo.com" : Media_Vimeo($url); break;
default : echo "Arghhh !";
}
} else {
echo "URL non valide";
}
}
function Media_Youtube($url) {
echo "Youtube : ".$url."<br />";
$id=eregi("v=([a-z0-9_-]*)",$url,$ytid);
$id=str_replace("v=","",$ytid[0]);
echo "ID : ".$id."<br />";
echo "Vignette :<br />";
echo "<img border=\"0\" src=\"http://i4.ytimg.com/vi/".$id."/hqdefault.jpg\"><br />";
$xml=simplexml_load_file("http://www.youtube.com/oembed?url=http://www.youtube.com/watch?v=".$id."&format=xml");
if($xml) {
$titre= htmlentities(utf8_decode($xml->title));
echo "Titre : ".$titre."<br />";
echo $xml->html;
}
}
function Media_Dailymotion($url) {
echo "Dailymotion : ".$url."<br />";
$n=explode("#",$url);
$x=$n[0];
$xml=simplexml_load_file("http://www.dailymotion.com/api/oembed?url=".$x."&format=xml");
if($xml) {
$titre= htmlentities(utf8_decode($xml->title));
echo $titre."<br />";
echo "<img border='0' width='".$xml->thumbnail_width."' height='".$xml->thumbnail_height."' src='".$xml->thumbnail_url."'><br />";
$c=explode("<br />",utf8_decode($xml->html));
echo $c[0];
}
}
function Media_Vimeo($url) {
echo "Vimeo : ".$url."<br />";
$xml=simplexml_load_file("http://vimeo.com/api/oembed.xml?url=".$url);
if($xml) {
$titre=htmlentities(utf8_decode($xml->title));
echo $titre."<br />";
echo "<img border='0' width='".$xml->thumbnail_width."' height='".$xml->thumbnail_height."' src='".$xml->thumbnail_url."'><br />";
$c=explode("<br />",utf8_decode($xml->html));
echo $c[0];
}
}
?>