Wie kommt man ein Video youtube statisches Bild mit Javascript?
Frage
Im Video gallerys zeigt YouTube Bilder der Videos anstelle dem Flash-Players. Wenn Sie auf das Bild klicken, werden Sie auf eine Seite weitergeleitet, wo ist der Flash-Video-Player. Ich mag die ersten statischen Bilder zeigen.
Wie kann ich das programmatisch?
Lösung
Für Javascript: (Ich gehe davon aus Sie es als Flash-markiert, weil Youtube ein Flash-Video-Player)
function getScreen( url, size )
{
if(url === null){ return ""; }
size = (size === null) ? "big" : size;
var vid;
var results;
results = url.match("[\\?&]v=([^&#]*)");
vid = ( results === null ) ? url : results[1];
if(size == "small"){
return "http://img.youtube.com/vi/"+vid+"/2.jpg";
}else {
return "http://img.youtube.com/vi/"+vid+"/0.jpg";
}
}
Gefunden hier .
abgehend diese Funktion grundsätzlich Sie nur die v = ladlfasd Parameter nehmen müssen und es in dieser url:
http://img.youtube.com/vi/(v= parameter)/2.jpg
Wo es 2.jpg für kleine, für große 0.jpg
Andere Tipps
function getYoutubeThumbnail($url)
{
if(preg_match('![?&]{1}v=([^&]+)!', $url . '&', $m))
{
$videoid = $m[1];
}
else if(preg_match('~/v/([0-9a-z_]+)~i', $url, $m))
{
$videoid = $m[1];
}
$youtube_thumbnail = 'http://img.youtube.com/vi/' . $videoid . '/default.jpg';
$c = curl_init();
$url = trim($url);
curl_setopt($c, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($c, CURLOPT_URL, $url);
$contents = curl_exec($c);
curl_close($c);
$feed = "http://gdata.youtube.com/feeds/api/videos/".$videoid;
$newInfo = trim(@file_get_contents($feed));
preg_match('/<media:title(.*?)<\/media:title>/', $newInfo, $result);
$title = strip_tags($result[0]);
preg_match('/<media:keywords(.*?)<\/media:keywords>/', $newInfo, $result);
$desc = strip_tags(str_replace(",", "", $result[0]));
//embed path
$embed_path = "http://www.youtube.com/embed/".$videoid;
$youtube_info = array('videoid' => $videoid,'title' => $title, 'description' => $desc,'youtube_thumbnail' => $youtube_thumbnail,'embed_path' => $embed_path) ;
return $youtube_info;
}
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow