I have checked and read lot of post about one single issue that is far more complicated than it seems.
I have a website that uses a lot of videos taken from wwebsite as on the internet ^^ (services like youtube, vimeo, videobuzzy, etc) and we would like to generate on the fly a thumbnail of the embedded video.
Each service uses its own API so I should adapt code for each, which it far too much code and I could never manage every service.
A webserver propose something like that : http://embed.ly but I tried them and, as exemple, videos from videobuzzy doesn’t work. So that’s a partial solution.
Another solution would be to use a screenshot service that could request the video’s URL, render it, take a snapshot and generate an image. Tempting, but results tends to add delays, and I have to find a snapshot service and generate the code (well, this could be the fun part).
The simpliest would be to take a screen capture and create an image ourselves, then upload it.
I would rather propose something more user-friendly but I have no more clue.
Is anyone has some advice on it and do I get the picture right ?
Thank you.
ADDENDUM **
If I could, instead of the thumbnails, just embed the video (usually an iframe) into a with specific size, that could do the trick…
You can use the oEmbed functionality baked into WordPress. Typically any video host on this list will return a thumbnail to you using oembed.
Here is a list of default providers that WordPress uses for auto embedding in the content area. I’ve included non-video sources as well for the convenience of others.
-
http://www.youtube.com/oembed
- http://blip.tv/oembed/
- http://vimeo.com/api/oembed.xml
- http://www.dailymotion.com/api/oembed/
- http://www.flickr.com/services/oembed/
- http://api.smugmug.com/services/oembed/
- http://www.hulu.com/api/oembed.xml
-
http://lab.viddler.com/services/oembed/
- http://qik.com/api/oembed.xml
-
http://revision3.com/api/oembed/
- http://photobucket.com/oembed
-
http://photobucket.com/oembed
- http://www.scribd.com/services/oembed
-
http://wordpress.tv/oembed/
- http://polldaddy.com/oembed/
- http://www.funnyordie.com/oembed
The full list of possible providers is documented at the WordPress codex under:
Embeds – Okay, So What Sites Can I Embed From?
Select your provider then use the following to get your video information.
require_once(ABSPATH.'wp-includes/class-oembed.php');
$oembed= new WP_oEmbed;
$url="http://www.youtube.com/watch?v=oHg5SJYRHA0";
//As noted in the comments below, you can auto-detect the video provider with the following
$provider = $oembed->discover($url);
//$provider="http://www.youtube.com/oembed";
$video = $oembed->fetch($provider, $url, array('width' => 300, 'height' => 175));
$title = $video->title;
$html = $video->html;
$thumb = $video->thumbnail_url;
I realize VideoBuzzy is not on the list. It appears to be a YouTube knockoff site. You should ask them if they have oembed protocols. If they don’t, you can register a non oembed handler by using wp_embed_register_handler()
.
Hope this helps!