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 ?
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.
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
Hope this helps!
You can use this plugin WordPress Video Plugin and edit the code of this plugin and add the other sites in it.
You have to integrate FFMPEG in wordpress.