Video Embed & Thumbnail Generator WordPress Plugin
In a future update (v4.7) this plugin will be changing its name to “Videopack” and removing old video players StrobeMediaPlayback and JW Player 6 that haven’t been supported for several years. Freemius will also be integrated on an opt-in basis to allow premium add-ons. More info in the support forum.
A plugin for the WordPress visual editor to make embedding videos, generating thumbnails, and encoding HTML5-compliant files a little bit easier.
Download from 
Installation
- Upload the entire video-embed-thumbnail-generator folder to the /wp-content/plugins/ directory.
- Activate the plugin through the ‘Plugins’ menu in WordPress.
- Make sure you have all your MIME types configured correctly. Many servers don’t have .mp4, .m4v, .ogv configured, and even more don’t have .webm. There are a number of ways to do this. In your public_html directory you can edit your .htaccess file and add the following lines:
AddType video/ogg .ogv AddType video/mp4 .mp4 AddType video/mp4 .m4v AddType video/webm .webm
Optional:
AddType video/mp4 .mov
will help with IE playback of .mov files but could interfere with other QuickTime players.
Or use your web host’s configuration panel (cpanel, etc) to add custom MIME types.
Just click the Add Media button to get started:
This plugin adds several fields to any video uploaded to the WordPress Media Library. Just choose a few options, make thumbnails, click “Insert into Post” and you’ll get a shortcode in the post editor that will embed a flexible, responsive HTML5 video player with Flash fallback for unsupported browsers.
Sample video:
[showshortcode][/showshortcode]2,068 views
Sample gallery:
[showshortcode][/showshortcode]Meanwhile ExcerptBronx Warrants ExcerptLove Sick Love ExcerptInside Out ExcerptCheech and Chong — Lets Make a Dope DealMarriage Ref - Frozen Tundra Promo






You have the option to use a few different video players:
- Video.js (files are included with the plugin)
- The WordPress default player using MediaElement.js, which was introduced in WordPress version 3.6
- JW Player 6 (if their old, discontinued plugin is already installed. This plugin does not work with JW Player 7 yet.)
- Adobe’s Strobe Media Playback Flash player (deprecated)
The Strobe Media Playback option hasn’t been updated since 2011 and is not recommended, but I’m keeping it around for longtime users of this plugin who don’t want to change. Most features of the plugin will work when using Strobe Media Playback, but new features will not be tested with it. Selecting Strobe Media Playback will default to a Flash video player if you’re using a Flash-compatible file (flv, f4v, mp4, mov, or m4v). Otherwise it will use the Video.js player as a fallback.
No matter which player you use, the video will responsively resize to fit the container it’s in. There is no need to use FitVids.js and in fact FitVids.js will break playback for some players. If you provide multiple H.264 resolutions, the plugin can automatically select the one closest to the size of the player or a resolution of your choice, and provide a button for users to select the resolution manually. If you have Google Analytics set up on your site, the plugin will automatically send Google Analytics Events when users start, reach 25%, 50%, 75%, and complete watching your videos.
You can also use the plugin to create a popup video gallery. The shortcode uses options similar to the WordPress image gallery shortcode. In its simplest form use the code [showshortcode]
[/showshortcode] will ignore the incompatible AVI file, but find those other formats and embed them.If you want to make it easier for users to save your videos to their computers, you can choose to include a link by checking the "Generate Download Link Below Video" button.
Sometimes for various reasons you might need to embed video files that are not saved in the WordPress Media Library. Maybe your file is too large to upload through the media upload form (if it is, I suggest the excellent "Add From Server" plugin), or maybe it's hosted on another server. Either way, you can use the tab "Embed Video From URL" in the Add Media window. Just enter the Video URL manually, and all other steps are the same as the Media Library options. The plugin will look for alternate encoded files in the same directory as the original, but this takes a long time when the video is on another server so it will only check for them once.
Once you've filled in all your options, click "Insert into Post" and you'll get a shortcode in the visual editor like this
To embed videos on other sites you can use an iframe like this
<iframe src='https://www.kylegilman.net/?attachment_id=2897&kgvid_video_embed[enable]=true' frameborder='0' scrolling='no' width='640' height='360'></iframe>
If you enable oEmbed provider data in the plugin settings, the URL of a post with a video shortcode in it or the URL of the video's attachment page will be converted to an embedded video on sites that allow oEmbed discovery. For example [code]https://www.kylegilman.net/2011/01/18/video-embed-thumbnail-generator-wordpress-plugin/[/code] is the URL for this plugin on my website, but it has the oEmbed header for the video embedded in it so the URL will be converted to an embedded video on sites with oEmbed discovery enabled. WordPress limits oEmbed providers to an internal whitelist for security reasons. This plugin has an option to enable oEmbed discovery for users with the unfiltered_html capability.
The JW Player 6 plugin has been removed from the WordPress plugin repository and JW Player 7 uses a very different system for embedding videos. JW Player 7 support is not available in this plugin yet. The Strobe Media Playback option hasn't been updated since 2011 and is not recommended, but I'm keeping it around for longtime users of this plugin who don't want to change. Most features of the plugin will work when using Strobe Media Playback, but new features will not be tested with it. Selecting Strobe Media Playback will default to a Flash video player if you're using a Flash-compatible file (flv, f4v, mp4, mov, or m4v). Otherwise it will use the Video.js player as a fallback.
If you want to further modify the way the video player works, you can add the following options inside the KGVID tag. These will override anything you've set in the plugin settings
- [code]id="xxx"[/code] video attachment ID (instead of using a URL).
- [code]videos="x"[/code] number of attached videos to display if no URL or id is given.
- [code]orderby="menu_order/title/post_date/rand/ID"[/code] criteria for sorting attached videos if no URL or ID is given.
- [code]order="ASC/DESC"[/code] sort order.
- [code]poster="http://www.example.com/image.jpg"[/code] sets the thumbnail.
- [code]endofvideooverlay="http://www.example.com/end_image.jpg"[/code] sets the image shown when the video ends.
- [code]width="xxx"[/code]
- [code]height="xxx"[/code]
- [code]align="left/right/center"[/code]
- [code]inline="true/false"[/code] allow other content on the same line as the video
- [code]volume="0.x"[/code] pre-sets the volume for unusually loud videos. Value between 0 and 1.
- [code]mute="true/false"[/code] sets the mute button on or off.
- [code]controlbar="docked/floating/none"[/code] sets the controlbar position. Video.js only responds to the "none" option.
- [code]loop="true/false"[/code]
- [code]autoplay="true/false"[/code]
- [code]pauseothervideos="true/false"[/code] video will pause other videos on the page when it starts playing.
- [code]start="mm:ss"[/code] video will start playing at this timecode.
- [code]watermark="http://www.example.com/image.png"[/code] or [code]"false"[/code] to disable.
- [code]watermark_link_to=home/parent/attachment/download/false"[/code]
- [code]watermark_url="http://www.example.com/"[/code] or [code]"false"[/code] to disable. If this is set, it will override the [code]watermark_link_to[/code] setting.
- [code]title="Video Title"[/code] or [code]"false" [/code]to disable.
- [code]embedcode="html code"[/code] changes text displayed in the embed code overlay in order to provide a custom method for embedding a video or "false" to disable.
- [code]view_count="true/false"[/code] turns the view count on or off.
- [code]caption="Caption"[/code]
- [code]description="Description"[/code] Used for metadata only.
- [code]downloadlink="true/false"[/code] generates a link below the video to make it easier for users to save the video file to their computers.
- [code]right_click="true/false"[/code] allow or disable right-clicking on the video player.
- [code]resize="true/false"[/code] allow or disable responsive resizing.
- [code]auto_res="automatic/highest/lowest"[/code] let the plugin select the best resolution for the size of the player.
- [code]pixel_ratio="true/false"[/code] account for high-density (retina) displays when choosing automatic video resolution.
- [code]schema="true/false"[/code] allow or disable Schema.org search engine metadata.
These options will add a subtitle/caption track
- [code]track_src="https://www.example.com/subtitles.vtt_.txt"[/code] URL of the WebVTT file.
- [code]track_kind=subtitles/captions/chapters[/code]
- [code]track_srclang=xx[/code] the track's two-character language code (en, fr, es, etc)
- [code]track_label="Track Label"[/code] text that will be shown to the user when selecting the track.
- [code]track_default="true/false"[/code] track is enabled by default.
These options will only affect Video.js playback
- [code]skin="example-css-class"[/code] Completely change the look of the video player. Instructions here.
- [code]nativecontrolsfortouch="true/false[/code] disable Video.js styling and show the built-in video controls on mobile devices. This will disable the resolution selection button.
These options will only affect Flash playback in Strobe Media Playback video elements. They will have no effect on HTML5 or Video.js playback.
- [code]autohide="true/false"[/code] specify whether to autohide the control bar after a few seconds.
- [code]playbutton="true/false"[/code] turns the big play button overlay in the middle of the video on or off.
- [code]streamtype="live/recorded/DVR"[/code] I honestly don't know what this is for.
- [code]scalemode="letterbox/none/stretch/zoom"[/code] If the video display size isn't the same as the video file, this determines how the video will be scaled.
- [code]backgroundcolor="#rrggbb"[/code] set the background color to whatever hex code you want.
- [code]configuration="http://www.example.com/config.xml"[/code] Lets you specify all these flashvars in an XML file.
- [code]skin="http://www.example.com/skin.xml"[/code] Completely change the look of the video player. Instructions here.
These options are available for video galleries (options work the same as standard WordPress image galleries)
- [code]gallery_thumb="xxx"[/code] width in pixels to display gallery thumbnails.
- [code]gallery_exclude="15"[/code] comma separated video attachment IDs. Excludes the videos from the gallery.
- [code]gallery_include="65"[/code] comma separated video attachment IDs. Includes only these videos in the gallery. Please note that include and exclude cannot be used together.
- [code]gallery_orderby="menu_order/title/post_date/rand/ID"[/code] criteria for sorting the gallery.
- [code]gallery_order="ASC/DESC"[/code] sort order.
- [code]gallery_id="241"[/code] post ID to display a gallery made up of videos associated with a different post.
- [code]gallery_end="close/next"[/code] either close the pop-up or start playing the next video when the current video finishes playing.
- [code]gallery_per_page="xx"[/code] or[code]"false"[/code] to disable pagination. Number of video thumbnails to show on each gallery page.
- [code]gallery_title="true/false"[/code] display the title overlay on gallery thumbnails.
For example
[showshortcode]
707 views
[/showshortcode]
These options can be added to the URL to further customize playback
Using the `kgvid_video_embed` query string any of the following options will modify playback: auto_res, autoplay, default_res, fullwidth, height, mute, nativecontrolsfortouch, pixel_ratio, resize, set_volume, start, width
Example: [code]https://www.kylegilman.net/portfolio-item/bronx-warrants-pilot/?kgvid_video_embed[start]=29&kgvid_video_embed[autoplay]=true[/code] autoplays the embedded video and starts 29 seconds in.
Translations included:
- Español por Andrew Kurtis de WebHostingHub.
- Français par F.R. 'Friss' Ferry, friss.designs@gmail.com
- Българска от Емил Георгиев, svinqvmraka@gmail.com
Developing on

I'm not really a software developer. I'm just a film editor with some time on his hands who wanted to post video for clients and wasn't happy with the current state of any available software. But I want to really make this thing work, so please help me out by posting your feedback on Github or my WordPress support forum. I do not offer free email support.
FAQ
Why doesn't my video play?
Most of the time your video doesn't play because it's not encoded in the right format. Videos have containers like mp4, mov, ogv, mkv, flv, etc and within those containers there are video and audio codecs like H.264, MPEG-4, VP8, etc. The best option for this plugin is an mp4 container with H.264 video and AAC audio. It's confusing, but there is a codec usually identified simply as "MPEG-4" of "MPEG-4 Visual" which is not the same thing as H.264 even if it's in an mp4 container. mp4s with MPEG-4 video will not play in most browsers, and if you don't use AAC audio you won't get any audio. I highly recommend using Handbrake to make a file with H.264 video and AAC audio in an MP4 container.
Use MediaInfo to get really detailed information about your media files.
If your theme loads FitVids.js, it will break playback in Firefox. If you can figure out how to prevent your theme from loading FitVids.js you will not miss it.
Why does my video have to download completely before it starts playing?
mp4/m4v/mov files have something called a moov atom that gives the video player information about the content of the video (dimensions, duration, codecs, etc). Depending on the program you used to make your video, the moov atom can be at the beginning or the end of the file. Most video players will wait until they find the moov atom before starting playback. Otherwise it doesn't know how to display the information it's downloading. If it's at the beginning of the file, playback starts very soon after the user hits the play button. If it's at the end of the file, the whole video has to download before playback starts.
There are a number of ways to fix this problem. Most video encoding programs have an option like "Web optimized," "Streaming," "Fast start," or "Progressive download." Try to find and enable that option in your program. If you can't do that, there are programs designed to move the moov atom to the head of the file. Try QTIndexSwapperfor Adobe Air (cross platform), MP4 Faststart for Windows, or QTFastStart for Mac.
FFMPEG puts the moov atom at the end of the file, so this can be a problem. The plugin will fix this problem on newly encoded H.264 videos if you have a recent version of FFMPEG and enable the "movflags faststart" option in the plugin settings or if you have qt-faststart or MP4Box installed on your server.
Why doesn't this work with YouTube?
WordPress already has a built-in system for embedding videos from YouTube, Vimeo, Dailymotion, etc. Just put the URL into your post and WordPress will automatically convert it to an embedded video using oEmbed. You don't need this plugin to do that. If you're trying to generate new thumbnails from YouTube videos, I'm not going to risk Google's wrath by providing that functionality. I'm not even sure I could figure out how to do it anyway.
If you just want to change the skin or thumbnail of a YouTube video, use JW Player.
I'm getting an error message "FFMPEG not found at /usr/local/bin/. You can embed existing videos, but video thumbnail generation and Mobile/HTML5 video encoding is not possible without FFMPEG."
First off, don't panic.
This plugin can use FFMPEG or LIBAV to make thumbnails and create alternate video formats. Unfortunately most servers don't have FFMPEG installed and most shared hosting plans don't allow you to install FFMPEG because of the system resources it requires. You're getting this error message because you don't have FFMPEG installed in the most common directory. If you know you have FFMPEG installed on your server, you'll need to find the actual path to the program and enter it in the plugin settings field Path to applications on server
Most of the features of the plugin will work without FFMPEG. You can generate embed shortcodes for your videos and make thumbnails on any host because that part of the plugin is JavaScript running in your browser. But without FFMPEG you won't be able to automatically generate thumbnails or encode alternate formats on the server. If you don't have your own VPS or dedicated server, Dreamhost is one of the few shared hosts I know of that has FFMPEG installed and available for users.
How can I encode videos in directories protected by .htaccess passwords?
Enter the username & password in the plugin settings "FFMPEG Settings" tab, or use the "Embed from URL" tab and enter the URL in this format http://username:password@yourdomain.com/uploads/2012/01/awesomevid.mp4 in the Video URL field.
Version History
Version 4.6
4.6.28 - February 8, 2021
- Added setting to change default playsinline behavior on iPhones.
- Changed default sort order of video galleries created using the gallery_include parameter to maintain the order of IDs as entered in the parameter.
- Fixed bug that caused an error when saving Menus.
- Added Greek translation.
4.6.27 - January 6, 2021
- Fixed bug in testing FFMPEG execution.
4.6.26 - December 28, 2020
- Added option to disable shortcode URL rewriting if WordPress doesn't know your videos are hosted on a CDN.
- Added playsinline attribute to Video.js videos to allow iPhones to play videos inline on web pages.
- Added filter to manually rewrite shortcode URLs.
- Changed code that caused fatal error 'Can't use function return value in write context' on PHP versions before 5.5
- Made gallery thumbnail images responsive.
- Stopped using deprecated $user_ID global.
- Fixed bug that crashed WordPress Default player if text tracks were available but no default track was set.
- Fixed bugs that caused FFMPEG errors if application path contained a space.
4.6.25 - May 28, 2019
- Fixed bug that broke pop-up galleries when video title had a space in the name.
- Fixed bug that re-shuffled random gallery order every time a new gallery page was loaded.
- Fixed bug that disabled auto resolution switching when using the WordPress Default video player.
- Removed the built-in WordPress Default video player size limit for better responsive sizing.
- Reduced CPU load when responsive video resizing is enabled.
- Now selectively enqueuing Video.js resolution selector JavaScript file.
- Re-ordered resolution list so when original resolution is unknown, “Full” is at the top, enabled translation of the “Full” menu item and now automatically renaming it when video metadata is loaded.
- Better activation procedure that doesn’t generate errors and disables FFMPEG functions if FFMPEG is not found.
- No longer turning on all video encode formats by default.
- Fixed bug that couldn’t automatically discover alternate formats of videos on other servers via https.
- Fixed bug that broke tab switching on the settings page when other plugins modified the admin page.
- Code changes to allow for future child formats that aren’t videos.
4.6.24 - April 1, 2019
- Improved method for assigning Google Analytics Event labels.
4.6.23 - March 26, 2019
- Added option to override WordPress built-in [showshortcode]
[/showshortcode] shortcodes.
- Fixed bug that prevented generating in-browser thumbnails more than once without reloading the page.
- Stopped deleting existing thumbnails that are selected from the library.
- Changed filename of manually selected thumbnails to thumb1.jpg
4.6.22 - January 30, 2019
- Modularized video file formats that can be encoded by the plugin to allow other plugins to modify, delete, or create new formats.
- Added Custom WEBM VP9 format option.
- Renamed WEBM format to WEBM VP8.
- Fixed bug that deleted unfinished video encode queue entries every 24 hours.
- Fixed bug that created duplicate encodes of non-H.264 files in some situations.
- Fixed bug that inconsistently prevented thumbnail generation in the Media Library.
- Fixed bug that disabled embed from URL “insert into post” button if FFMPEG was not set up on server.
- Stopped appending timecode numbers to thumbnail filenames.
- Stopped removing special characters from the end of filenames of generated thumbnails and encoded files.
- Attempting to fix misconfigured locale settings that can sometimes cause video files with diacritics (accent marks, umlauts, etc) to generate “File not found” errors when using FFMPEG.
- Removed old Media Library video thumbnail display functionality that was preventing some Media Libraries from loading.
- Now allowing https FFMPEG input.
4.6.21 - October 6, 2018
- Updated Video.js to version 5.20.5
- Added option to constrain video gallery thumbnail aspect ratios when mixed aspect ratios are present in the gallery.
- Added option to use FFMPEG to add a watermark to thumbnails.
- Fixed WordPress Default player default subtitles not enabled on page load.
- Fixed manual thumbnail selection in Media Library page and Safari.
- Added gtag Google Analytics support.
- Restored freeze-frame while resolution switching in WordPress Default player and now maintaining video aspect ratio while in fullscreen mode for both players.
- Added cron check to ensure the rest of the queue encodes when user does not see encoding start.
4.6.20 - November 14, 2017
- Updated WordPress Default player resizing methods and speed and resolution selector plugins for the new player included with WordPress 4.9.
- Added 480p resolution option.
- Added option to hide unwanted encode formats from the attachment pages and encode queue.
- Fixed bug that prevented 360p encoding for videos less than 480p.
- Fixed bug that did not automatically select default encoding formats.
4.6.19 - November 2, 2017
- Fixed shorthand array declaration to retain compatibility with versions of PHP older than 5.4.
4.6.18 - November 2, 2017
- Updated Video.js to version 5.20.2
- No longer double encoding 360p formats for 360p or lower resolution original videos.
- Enabled subtitles for fullscreen iPhone videos when using the Video.js player.
- Now allowing external URLs without filename extensions.
- Fixed FFMPEG thumbnail generation when embedding videos from external URLs.
- Fixed “Warning illegal string offset ‘id'” errors.
4.6.17 - June 10, 2017
- Updated Video.js to version 5.19.2
- Better fix for big play button overlay remaining visible on autoplay Video.js videos.
4.6.16 - March 19, 2017
- Updated Video.js to version 5.18.4
- Added option for variable playback rates in Video.js and WordPress Default players.
- Fixed bug that didn't save views when quarter counting was enabled (new installations only).
- Fixed bug that allowed big play button to remain on screen when videos autoplayed in Firefox and Edge.
- Fixed query for converting URLs to post IDs when a blank _wp_attached_file is present in the database.
4.6.15 - February 27, 2017
- Updated Video.js to version 5.16.0
- Changed source filetype checking to account for URLs with query strings, which allows for signed URLs.
- Changed VP9 encoding CRF value to the H.264 setting. Using the WEBM setting led to unnecessarily high bitrates.
- Removed French translation files from distribution to allow updated language packs.
4.6.14 - January 24, 2017
- Updated Video.js to version 5.15.1
- Added option to restrict video player aspect ratio to the default aspect ratio.
- Added option to disable view tracking in the WordPress database.
- Added option to use FFMPEG's auto rotation feature for vertical videos, available in recent versions of FFMPEG and added a rotated video for testing.
- Added check for Video.js version in case another application loads an older version. The resolution selector feature will not load if Video.js is not 5.x or above.
- Added check for a new parent post if a video thumbnail is auto generated before a corresponding post is created. If a new parent exists, the thumbnail is set as the featured image for the new post. This is usually only necessary when used with frontend uploaders.
- Fixed mixed content warnings in galleries with multiple pages.
- Changed all
button-secondary
styles tobutton
. - Added hook for download logging using the single-click download method. An alpha version of a download logging add-on plugin is available on GitHub.
4.6.13 - January 5, 2017
- Updated Video.js player to version 5.14.1
- Fixed bug that disabled gallery page switching.
- Delayed automatic resolution switching until playback starts and now sorting sources to make the default resolution the first element and prevent unnecessary source switching after the page loads.
- Fixed bug that disabled resolution switching if preload is set to "none"
- Added preload as a shortcode attribute.
- Delayed loading videos in attachment editing page until needed for thumbnail creation.
- Fixed manual thumbnail selection in pop-up Media Library windows.
- Fixed bug that deleted completed same-resolution video files if other video formats were added or removed from the queue before encoding of secondary formats was completed.
- Fixed deprecated class constructor warning in PHP 7.
- Removed unnecessary Video.js player re-initializations.
4.6.12 - September 25, 2016
- Restored Video.js resolution selection in pop-up video galleries.
- Fixed thumbnail creation bugs in Chrome browser.
- Fixed missing 'starts' error message when video had never been played.
4.6.11 - September 17, 2016
- Fixed broken video galleries in AJAX-loaded pages when the option to always load plugin-related JavaScripts is enabled.
- Fixed untranslated "views" text after video is played.
4.6.10 - September 14, 2016
- Updated Video.js to version 5.11.6
- Now forcing Video.js controls to display on mobile devices if the video is not muted. Otherwise autoplay doesn't work and there's no way for the user to start the video.
- Moved native controls z-index in front of watermark overlay and hid Video.js play button on Android when using native controls option.
- Fixed bug that constantly reset checkboxes and prevented removing individual formats from the video encode queue.
- Fixed divide by zero error when video encoding is slower than 1 fps.
- Fixed missing nonce error when clearing video encode queue.
4.6.9 - July 25, 2016
- Updated Video.js to version 5.10.7
- Fixed bug that sometimes prevented thumbnail generation.
- Fixed bug that prevented selection of encoding error email setting in Network admin page.
- Added visual feedback while saving manually selected thumbnails.
4.6.8 - June 22, 2016
- Added keyboard control of video thumbnail selector. Spacebar to play/pause, arrow keys to move one frame forward or back, and JKL playback control. Reverse playback only works in Safari.
- Added option to pause other videos on the page when starting a new video (or disable it for WP Default player).
- Added option to always load plugin-related JavaScripts to support AJAX page loading.
- Added functionality to dynamically embed attached videos outside of the loop.
- Added check for changed filename extension if a video has been replaced by a different format but is still embedded using the old filename.
- Fixed bug that disabled styling for WordPress Default video players on the page when embedded after an audio file.
- Fixed bug that didn't record Video.js pop-up video gallery views or JW Player quarter playback stats.
- Fixed bug that prevented automatic clearing of old encode queue entries.
- Fixed bug that doubled non-H.264 video source tags.
- Fixed bug that prevented encoding 1080p and 720p H.264 videos if original video is not H.264 and has the same resolution.
- Improved iframe-embedded vertical video resizing.
- Changed iPhone play button to match Video.js button style.
- Tweaked embed code overlay styles.
- Set WordPress Default bottom margin to 0.
4.6.7 - May 26, 2016
- Updated Video.js to version 5.10.2
- Fixed bug that set Video.js players to the highest resolution no matter what was set as the default.
- Added a system to change video playback settings via URL query strings.
- Added "start" shortcode attribute to start videos at a particular timecode and an option to set the start time in the embed code overlay.
- Added left/right arrow navigation through video galleries.
- Changed resizing method when responsive video is disabled.
- Delayed autoplay command until metadata is loaded in Video.js player.
- Fixed bug that re-enabled default subtitles in the Video.js player every time play restarted.
- Fixed bug that left room for captions on all gallery videos if the first video had a caption.
- Fixed bug that incorrectly resized pop-up gallery window for vertical videos.
4.6.6 - May 21, 2016
- Added support for Yoast's custom Universal Google Analytics variable name.
- Modified resizing method for WordPress Default player container again.
- Updated WordPress Default player's fullscreen resolution calculation to match Video.js change made in v4.6.3
- Added filter hook to modify FFMPEG-generated thumbnail options.
- Increased WordPress Default play button z-index.
4.6.5 - May 13, 2016
- Removed anonymous function to allow the plugin to run on PHP versions lower than 5.3.
- Added 25%, 50%, and 75% video view tracking to the WordPress admin area.
- Fixed width="100%" vertical video aspect ratio bug and now allowing other players to work with this still-not-recommended method.
- Modified resizing method for WordPress default player container.
- Fixed temporary thumbnail display when switching resolutions in a Video.js player that is set to a different aspect ratio from the video file.
- Disabled background page rendering request on autosaves and revisions.
- Adjusted title bar CSS again and increased WordPress Default play button z-index.
4.6.4 - May 5, 2016
- Fixed bug that caused an error when feed pages were generated, possibly interrupting autosaves.
4.6.3 - May 5, 2016
- Updated Video.js to version 5.9.2
- Changed method for calculating automatic resolution when switching to fullscreen so it's the same as a regular resize event instead of always selecting the highest resolution available.
- Fixed bug that disabled JW Player selection in the plugin settings page.
- Fixed bug that always showed text track type selector as "subtitles" in the attachment edit window.
- Fixed bug that cropped the video title overlay when no sharing icons were enabled.
4.6.2 - May 2, 2016
- Fixed bug that disabled subtitles/captions button in the WordPress Default player.
- Fixed bug that broke Video.js players set to width="100%". This has never worked for the WordPress Default player. Using the plugin setting "Set all videos to expand to 100% of their containers" or the shortcode attribute fullwidth="true" is the recommended method, but players will work again for people using width="100%".
- Changed description of fullwidth setting to make it more clear.
4.6.1 - May 1, 2016
- Fixed bug that changed the way Video.js players were resized when the specified dimensions did not match the video's actual dimensions.
- Adjusted CSS for video overlay bar and z-index of the Video.js play button.
4.6 - April 29, 2016
- Still 100% free. More info in the support forum.
- Updated Video.js to version 5.5.3 which includes a revised skin.
- Added resolution switching for WordPress Default player.
- Added Twitter Player Cards.
- Added animated GIF video conversion.
- Added option to select a specific video resolution when the page first loads.
- Added option to ignore pixel ratios when calculating automatic resolution selection in order to prioritize lower resolutions on mobile devices.
- Added '-noreplace' filename option to prevent automatic video encoding for some videos.
- Added button to clear the whole video encoding queue.
- Added option to send an email when there is a video encoding error.
- Added Google Analytics Event tracking when users watch 25%, 50%, and 75% of a video.
- Added Twitter and Facebook share buttons.
- Significantly redesigned video sharing overlay appearance.
- Moved download link to an icon overlay and stopped inserting unnecessary downloadlink attribute in shortcode for videos in the WordPress database.
- Moved resolution switching icon to the left of the fullscreen button.
- Now showing paused video frame while switching resolutions instead of black frame or thumbnail (browser experience may vary).
- Updated oEmbed system to work with new oEmbed features introduced in WordPress 4.4.
- Revised Facebook Open Graph tags so they actually work on Facebook.
- Changed in-browser base64 thumbnail encoding to JPG in order to reduce data transferred when saving. Should reduce 404 errors.
- Improved user role security to prevent unauthorized users from modifying video settings or deleting encoded videos.
- Now using Yoast SEO or All In One SEO Pack post descriptions for description metadata, when available.
- Removed Spanish translation from the distribution in order to favor the newWordPress language packs.
- Fixed several multisite encoding queue bugs, particularly when videos have identical post IDs on different sites.
- Fixed bug that broke FFMPEG sample encode output and video rotation when a watermark overlay was enabled.
- Fixed bug that incorrectly interpreted FFMPEG output as an error when the last line came from the AAC encoder.
- Fixed bug that didn't initialize the nativecontrolsfortouch plugin setting.
- Fixed bug that didn't set featured images on some videos uploaded using frontend uploaders.
- Fixed bug that hid the wrong headers on the plugin settings tabs in WordPress 4.4+.
- Fixed bug that disabled the text track remove button when editing videos in the media library.
- Fixed bug that redundantly localized the frontend script every time a video was embedded on a page.
Version 4.5
- Fixed a number of potential infinite loops and other recursion issues related to longstanding WordPress bug #17817.
- Changed video player names with spaces (WordPress Default, JW Player) to one word camel case for JavaScript functions (WordPressDefault, JWPlayer).
4.5.4 - August 9, 2015
- Added option to disable native controls on mobile devices when using the Video.js player.
- Added Schema.org uploadDate and description tags which are required by Google for video listings.
- Updated Video.js to version 4.12.11
- Fixed undefined index error when editing videos with text tracks that don't have default enabled.
- Fixed and localized "Saving..." overlay when saving browser-generated thumbnails.
- Fixed bug that could generate an error when displaying the sample video on the plugin settings page.
4.5.3 - July 11, 2015
- Fixed error that could zero out view counts when editing videos.
- Fixed 'strlen' error when updating videos with subtitles.
- Attempting to enable 'default' subtitle tracks on more browsers, but implementation is inconsistent.
4.5.2 - July 10, 2015
- Fixed bug that failed to set the volume or count views when using the WordPress Default or JW Player.
- Fixed bug that failed to count views when WordPress Default player was on autoplay.
- Fixed Video.js inconsistent autoplay bug.
4.5.1 - July 9, 2015
- Fixed bug that accidentally deleted thumbnail image IDs from video meta when editing attachments.
- Prevented automatic re-writing of video URLs to a local address if a popular cloud storage address is entered in the shortcode (Amazon AWS, Rackspace, etc).
- Restored full-resolution thumbnails when width is set to a percentage.
4.5 - July 7, 2015
- This is probably the last completely free major release. Some advanced features will be converted to premium add-ons in the future. More info in the support forum.
- Consolidated most video metadata database entries into a single array. This might slow things down the first time you load the Media Library.
- Added pagination option for video galleries.
- Added oEmbed provider data and option to allow oEmbed discovery from other sites.
- Added experimental WEBM VP9 encoding format.
- Added option to make the watermark overlay image a link.
- Added video stats column to Media Library list view.
- Added options for vertical video rotation and metadata removal using FFMPEG, now that some browsers recognize rotation metadata.
- Added "default" attribute for subtitle/caption text tracks to turn tracks on when the video loads.
- Added attachment edit hook that updates video thumbnail's parent post when the video's parent post changes.
- Added error handling and reporting for in-browser thumbnails.
- Added Video.js localization. Automatically changes Video.js language to the current WordPress language.
- Updated Video.js to version 4.12.7
- Updated Spanish translation.
- Updated Facebook Open Graph video embedding tags.
- Re-enabled native video player controls on mobile devices when using Video.js player for better responsive resizing and to allow Airplay & Chromecast controls.
- Removed superfluous gallery height option.
- Stopped inserting unnecessary width and height shortcode attributes when videos are set to the default width and height.
- Stopped inserting unnecessary poster URL shortcode attribute when poster is set in the media library.
- Fixed several bugs related to hosting media library files on external servers like Amazon S3.
- Fixed bug that deleted replacement videos before encoding was finished when simultaneous encodes are enabled.
- Fixed bug that dropped videos from the video encode queue when multiple videos were added to the database simultaneously, specifically when using Add From Server.
- Fixed bug that created squashed encoded videos when they were shot vertically on a mobile device.
- Fixed bug that added bad content to Open Graph video tag when other shortcodes were found before KGVID in the post.
- Fixed bug that wrote multiple unnecessary meta entries to the database when image attachments were updated.
- Fixed bug that disabled "Choose from Library" buttons in Firefox.
- Fixed bug that incorrectly indicated thumbnail selection video files did not load in Firefox.
- Fixed bug that allowed video thumbnails to overflow their container in the Media Library modal window in Firefox.
- Fixed bug that allowed crossdomain in-browser thumbnails to load, but then fail when trying to save them in Safari.
- Fixed bug that kept end of video overlay images on screen when user hit play again.
- Fixed bug that incorrectly resized videos embedded through iframe.
- Fixed bug that did not assign a default value to the qt-faststart/MP4Box application path for new installations.
- Fixed bug that allowed selection of multiple thumbnails in Embed Video from URL window
- Fixed number formatting of video play counter.
- Fixed encode queue text indent bug.
Version 4.4
- Added Google Universal Analytics event tracking.
- Updated Spanish, French and Belgian translations.
- Updated Video.js to version 4.10.2
- Fixed bug that could prevent the media library from loading.
- Fixed bug that prevented pop-up gallery thumbnails from resizing responsively.
4.4.1 - October 28, 2014
- Fixed bug that loaded resolution selector plugin too late in the page.
- Fixed bug that displayed the video poster image while switching resolutions.
4.4 - October 28, 2014
- Added H.264 HTML5 video resolution switcher for the Video.js player. Automatically selects the appropriate resolution for the size of the displayed video and allows manual user switching on desktop computers.
- Added option to set videos to automatically fill their containers.
- Added buttons to manually set other videos in the media library as alternate formats for the current video.
- Added option to encode a custom resolution.
- Added option to replace original video with a lower-resolution H.264 video, WEBM or OGV.
- Added buttons to generate thumbnails and encode additional formats for all previously uploaded videos.
- Added plugin admin scripts to the frontend when Insert Media button is loaded. Works with bbPress now.
- Added option to encode 64 and 32 kbps audio.
- Added option to set a different application path for qt-faststart or MP4Box.
- Added option to disable stdin during FFMPEG encoding. Particularly useful for IIS users.
- Updated Video.js to version 4.9.1
- Changed download link to a forced download for videos in the media library. No right-clicking necessary.
- Changed pop-up video gallery to use inline code rather than an AJAX query.
- Changed embedded video IDs to allow the same video to be embedded multiple times on a page.
- Changed volume slider on plugin settings page to drop-down menu to fix settings save errors in Windows.
- Changed 480p video format label to 360p to accurately reflect resolution of 16:9 videos. Format has always been 480p only for 4:3 videos.
- Changed AAC encoder preference to libfdk_aac > libfaac > Native FFmpeg AAC encoder (aac) > libvo_aacenc.
- Restored display of moov atom fix process in FFMPEG test output.
- Fixed bug that made pop-up video windows 0 pixels wide in iOS 8.
- Fixed bug that couldn't find video attachements that have been redirected to a CDN.
- Fixed bug that quickly faded out the end overlay image in IE.
- Fixed bug that prevented replacing encoded videos if there were any other videos in the queue.
- Fixed bug that left the GUID as the original filename if replacing the video with an mp4 changed the extension.
- Fixed bug that incorrectly reported all encoding fps values over 99 as "10".
- Fixed bug that didn't recognize videos had completed encoding if there were audio frames left in the queue.
- Fixed bug that left title overlay on iOS videos using the WordPress Default player.
- Fixed bug that made video galleries display as inline-block when the inline video option was disabled.
Version 4.3
- Fixed responsive height for videos using WordPress Default player.
- Better fix for bug that prevented choosing thumbnails from the small video player in the new media library popup window in WordPress 4.0.
4.3.4 - September 10, 2014
- Updated Video.js to version 4.8.1
- Added default gallery end option to play the next video or close the popup window.
- Restored watermark overlay in fullscreen for Video.js and WordPress Default players.
- Restored browser thumbnail generation quality in WordPress 4.0.
- Fixed bug that prevented choosing thumbnails from the small video player in the new media library popup window in WordPress 4.0.
- Removed instances in which a video or watermark in the WordPress database would be input to FFMPEG through http instead of using the file path. Should fix some I/O errors, particularly with SSL.
- Now setting the thumbnail as the featured image for the video attachment regardless of plugin settings.
4.3.3 - July 20, 2014
- Changed .mov files back to type "video/mp4" to fix "No compatible source was found for this video" errors.
- Added "mute" shortcode attribute.
- Added default volume and mute options.
- Added option to set custom default shortcode attributes.
- Fixed WordPress default player alternate H.264 sources.
- Fixed WordPress default player volume and preload settings.
- Fixed Video.js volume slider appearance when using the custom skin.
- Disabled JW Player custom context menu when right-clicking is disabled.
4.3.2 - July 15, 2014
- Updated Video.js to version 4.6.4
- Added Spanish, French, and Bulgarian translations.
- Added ability to send advanced configuration attributes to JW Player. Any attributes added to the shortcode will be passed on without change.
- Added multisite option to restrict FFMPEG settings access to super admins only.
- Added better error reporting when FFMPEG isn't executing.
- Added subtitles/captions fields to "Embed Video from URL" tab.
- Added allowfullscreen to iframe embed codes.
- Added fitvidsignore class to Video.js videos to help defeat FitVids.js-induced playback problems.
- Added contentUrl schema.org metadata.
- Fixed some gettext calls for translation.
- Fixed bug that set alternate resolution H.264 videos to type "video/h264" instead of "video/mp4".
- Fixed bug that incorrectly added "Other user's video" to video encode queue entries.
- Fixed missing help icons on settings pages.
- Fixed bug that disabled aspect ratio locking in the "Embed Video from URL" tab.
4.3.1 - April 8, 2014
- Fixed errors when activating plugin for the first time and saving settings page in non-multisite installations.
- Updated Video.js to version 4.5.1
- Fixed pop-up gallery cross-origin bug for users with FORCE_SSL_ADMIN enabled.
- Fixed error on network settings page when pressing the "Save Changes" button and resetting network settings using "Reset Options" button.
- Added text-align:left to left-aligned galleries.
- Added gettext calls to some text for translation.
- Removed duplicate bitrate setting for WEBM encoding when using average bitrate.
4.3 - March 18, 2014
- Prepared plugin for internationalization. Translators welcome!
- Finally paying attention to multisite. Several FFMPEG settings and the encode queue are now controlled at the network level if the plugin is network activated.
- Added JW Player option if the JW Player WordPress plugin is active.
- Added video subtitle/captions support.
- Revised and simplified video gallery popup method. Switched to lighter SimpleModal plugin and no longer loading jQuery-ui libraries.
- Added "gallery_ended" shortcode attribute to set an action when a pop-up video gallery video ends.
- Added next and previous buttons to navigate between pop-up video gallery items.
- Updated Video.js to version 4.4.3
- Strobe Media Playback is now deprecated. New features added to the plugin might not work if this player is selected.
- Added option to add a watermark to videos encoded with FFMPEG/LIBAV.
- Added option to automatically generate multiple thumbnails when a video is uploaded.
- Added option to encode more than one video at the same time.
- Added option to turn on video download link by default.
- Added option to set video preload attribute.
- Added list of shortcode attribute options to the post edit help tab.
- Added "order" and "orderby" shortcode attributes to sort videos embedded without a URL or ID specified.
- Added float to inline videos to allow text to wrap around them.
- Added play button overlay to gallery thumbnails when using WordPress Default player.
- Applied video alignment setting to video galleries for center and right justifying galleries.
- Now only loading plugin-related JavaScripts when the shortcode is used on the page and moved links to the footer to speed up page loading.
- Added wpdb->prepare to all database queries for increased security.
- Added nonce check when recording video play counts for increased security.
- Fixed bug that broke responsive resizing in IE 8 and for all videos with apostrophes in their titles.
- Fixed bug that disabled FFMPEG if the path to WordPress had spaces in it.
- Fixed bug that generated an error if the exec function was disabled on the server using suhosin or safe mode.
- Fixed bug that caused video encode problems when FFMPEG output contained special characters.
- Fixed bug that generated misaligned play button arrows in some themes when using the Video.js player.
- Fixed bug that sometimes generated jagged rows in galleries with mixed aspect ratios.
- Fixed bug that attempted to generate thumbnails using FFMPEG if a user had previously installed FFMPEG, disabled in-browser thumbnails, then disabled FFMPEG.
- Fixed several user capability related bugs related to users who were not assigned any roles and capabilities that were not assigned to any roles.
- Changed video title overlay z-index to 103 to avoid floating over other elements.
Version 4.2
- Fixed bug that interfered with database queries that do not have post_meta (The Events Calendar revealed the bug, but it likely had an effect on other plugins).
- Fixed bug that assigned auto-encoded videos to nobody.
- Restored process to set featured image for video attachments when thumbnails are assigned.
4.2.8 – November 11, 2013
- Updated Video.js to version 4.3.0.
- Fixed iframe embedded video auto-sizing bug.
- Improved sizing of videos using the WordPress Default player.
- Removed shortcode text from RSS feeds.
- Now checking for cross-origin when making thumbnails. If video files are hosted on a different domain FFMPEG will make thumbnails to avoid cross-origin errors when saving canvas elements.
- Fixed bug that assigned auto-generated thumbnails to nobody.
- Fixed bug that would cause divide by zero errors when generating thumbnails from .mpg videos that had already encoded an alternate format with FFMPEG.
4.2.7 – October 24, 2013
- Fixed several video sizing issues.
- Updated Video.js to version 4.2.2.
- No longer loading Video.js files when using the WordPress Default player.
- Restored [/KGVID] closing tag to inserted gallery shortcodes to avoid confusion if more than one is in the post.
- Changed Settings and Donate links on Installed Plugins admin page and fixed 404 error on network dashboards.
4.2.6 – October 19, 2013
- Fixed bug that broke playback in some cases when using the shortcode without a URL.
- Fixed bug that ignored width and height saved in the attachment meta if width and height were not set in the shortcode.
- Fixed bug that broke WordPress Default player when embedding M4V files.
- Removed line breaks from generated code to avoid adding extra line breaks in the rendered video in some situations where wpautop is run after the code is created.
4.2.5 – October 12, 2013
- Fixed bug that disabled FFMPEG when other plugin settings were changed.
4.2.4 – October 12, 2013
- Fixed bug that ignored "Enlarge lower resolution videos to max width" plugin setting after thumbnails were generated.
- Fixed bug that caused in-browser thumbnail generation to fail after switching between several attachments in Chrome.
- Fixed bug that prevented fallback to FFMPEG/LIBAV when the video format was not compatible with the browser.
- Fixed bug that lost disabled plugin settings if the "Save Changes" button was pressed.
- Fixed bug that fixed moov atom incorrectly when using qt-faststart.
- Added verification of the "Path to applications folder on server" setting to strip extra slashes and unnecessary subfolders.
- Added "Fixing moov atom for streaming" section to FFMPEG test output.
- Added legacy FFMPEG libx264 flags manually so we don't have to rely on finding vpre files.
- Now multiplying H.264 level flags by 10 for better compatibility.
- Removed unnecessary & inconsistent check for existing thumbnail files on attachment pages.
4.2.3 – October 9, 2013
- Fixed bug that caused encoding on Windows servers to hang and not show progress.
- Fixed bug that only disabled right-clicking when using the Video.js player.
- Fixed bug that prevented encoding videos from the External URL tab.
- Fixed bug that showed an empty "Replace original with H.264" checkbox if the filename changed.
- Better error reporting when encoding or auto thumbnail creation fails.
- Modified method for determining video's dimensions from FFMPEG/LIBAV output. This will cause videos with single-digit resolutions to fail.
- Adjusted video gallery CSS.
4.2.2 – October 7, 2013
- Fixed bug that was setting the global $content_width to 2048 on every page.
4.2.1 – October 6, 2013
- Featured images are now set for the post currently being edited, which does not have to be the video's parent.
- Rounded offset values when generating thumbnails with FFMPEG and LIBAV for backwards compatibility with older versions of FFMPEG.
- Added check to ensure server supports ImageMagick or GD libraries necessary to save thumbnails created in the browser.
- Added check to avoid saving thumbnails twice.
- Fixed saving disabled plugin settings.
- Changed FFMPEG encoding string to double quotes for Windows compatibility.
4.2 - October 5, 2013
- THUMBNAILS FOR EVERYBODY! Added in-browser thumbnail generation. Any video in the media library that can be played natively in the current browser can now be used to generate thumbnails without requiring special software on your server.
- Updated shortcode to support the simplest possible implementation: . Without any additional information, it will automatically find and display all videos attached to the post.
- Added "id" and "videos" attributes to shortcode to display specific video IDs or show a specific number of attached videos.
- If a video thumbnail is set, the video will now use its thumbnail as an icon in the WordPress admin area instead of the generic "video" icon.
- To avoid clutter, additional video formats encoded by the plugin are now hidden from lists of media, unless "Video" is specifically selected.
- When a master video is deleted and additional video formats are not deleted, the next highest quality format automatically becomes the master video.
- Updated Video.js to version 4.2.1, updated the included skin to work with it, and removed the unused image video-js.png.
- Added option to use the WordPress default video player introduced in WordPress version 3.6.
- Added buttons to choose thumbnails, end of video image, and watermark from the media library.
- Added option to add Open Graph tags for posting videos on Facebook. However, for the many Facebook users who browse with https, your own videos must be served via https in order to work.
- Added options to automatically generate a thumbnail and encode videos to multiple formats as soon as they are uploaded (FFMPEG/LIBAV only).
- Added option to disable responsive video resizing.
- Added options to restrict thumbnail making and video encoding to particular user roles.
- Added option to enter username and password to give FFMPEG/LIBAV access to .htaccess protected videos.
- Added option to disable right-clicking on videos.
- Added option to replace original video file with an H.264 video of the same resolution.
- Added advanced FFMPEG/LIBAV encoding options. New options include choice between Constant Rate Factor and Average Bit Rate, H.264 profiles and levels, audio bit rate, disabling nice on Linux, and the ability to encode with more than one thread.
- Added -movflags faststart option available in newer versions of FFMPEG/LIBAV, eliminating the need for qt-faststart or MP4Box.
- Added a test encoding output on the settings page for easier troubleshooting.
- Split plugin settings page in to two tabs.
- Fixed saving plugin settings when multiple settings are changed rapidly.
- No longer starting video encodes using nohup command on Linux servers.
- FFMPEG vpre flag switched from slow to fast.
- Enabled actual support for encoding with libfdk_aac, and the experimental built-in aac encoder as a last resort.
- Fixed cases where the encode queue would not advance if an unexpected error happened.
- Fixed encoding library messages so the errors are saved to the encode queue and don't disappear immediately.
- Changed endOfVideoOverlay and endOfVideoOverlaySame options to lowercase.
- Revised method for determining if a video URL refers to an attachment in the WordPress database to account for differences between urls using http and https and filenames that slip into the database with spaces intact.
Version 4.1
4.1.5 – June 30, 2013
- Updated Video.js to version 4.1.0
- Restored code to show captions and download links in gallery pop-ups.
- Fixed conflict with fitVids.js by disabling the function whenever a video is embedded with the KGVID shortcode. fitVid.js is not compatible with the Video.js player and is not necessary to make videos responsive when you are using this plugin.
- Increased bitrate of encoded videos.
- Increased play button circle thickness and triangle size.
- Made video title overlay background slightly transparent and the title width fluid through CSS rather than JS.
4.1.4 – May 30, 2013
- Updated Video.js to version 4.0.3 which includes fixes when hitting esc to exit fullscreen that this plugin had previously dealt with through additional JavaScript.
- Restored ability to use percentages for video width (I didn't even know you could do this before and I apologize for breaking it arbitrarily).
- Fixed Video.js play button triangle vertical alignment problem on many themes (where were all the complaints on this one?) and tweaked the :hover settings.
- Moved play button overlay behind gallery thumbnail title if they happen to overlap.
- Changed WordPress user capability required to access plugin settings menu page from 'administrator' to 'manage_options' to allow access to multisite Super Admins and anyone else who has the manage_options capability.
4.1.3 – May 25, 2013
- Updated Video.js to version 4.0.2 which is supposed to solve IE play-button loading issues.
- Added option to show image at end of video in Video.js player (similar to the feature already available in Strobe Media Playback).
- Fixed bug that ignored
gallery_id
setting in gallery shortcodes and was preventinggallery_include
setting for videos that are not children of the current post. - Brought download link into shortcode rather than old method of inserting it into the post as text below the shortcode.
- Automatically adjust pop-up gallery window height to display captions, view counts, and download links.
- Rolled back responsive video resize method. Only the width of the immediate container will be used to calculate the correct size.
- For very small videos, Video.js controls are now selectively removed as the width drops below 260 pixels to prevent them from dropping outside of the video window.
4.1.2 - May 23, 2013
- Changed check for FFMPEG to use the H.264 sample video as input to avoid any PNG-related red herrings.
- Added
-f mjpeg
to thumbnail-generating command to maintain compatibility with versions of FFMPEG that can't figure it out on their own.
4.1.1 - May 21, 2013
- Removed second argument from json_encode() which caused video setup & resizing features to fail when servers were running PHP 5.2.
4.1 - May 19, 2013
- Updated Video.js to version 4.0 and created a new skin that approximates the old one. Older versions of Video.js had some security holes, so this update is highly recommended.
- Significantly reduced inline JavaScript generated by the plugin.
- Fixed bug that disabled Strobe Media Playback player and caused "TypeError: Error #1034" messages, particularly in Internet Explorer.
- Fixed bug that caused view count to be replaced by complete views when the end of the video is reached.
- Fixed bug that disabled video encode status monitoring in media modal popup when the same video was already in the post edit window.
- Fixed missing "document." in JavaScript when choosing thumbnails which prevented some users from properly selecting and saving generated thumbnails.
- Fixed bug that displayed WordPress thumbnail-sized poster image if no poster URL was in shortcode.
- Tweaked video resize method to support more kinds of themes.
- Added ability to turn off watermark on individual videos by entering
watermark="false"
in the shortcode. - Added option to disable embedding on other websites.
- Added option to allow videos to be placed next to each other on the page.
- Added support for AAC library libfdk_aac.
- Adjusted embedded video and gallery CSS to account for colored backgrounds.
- Renamed "Poster image" plugin setting to "Default thumbnail"
- Removed post meta box below post editing window until I can work out a way to generate them without disabling video encode status monitoring in media modal popup when the same video is already in the post edit window.
- Replaced deprecated ereg PHP function with preg_match and used a more precise regular expression when determining the height and width of videos.
Version 4
4.0.3 - May 01, 2013
- Fixed bug that caused video control text to display below videos on iPhones.
- Changed method for saving video plays to the database. Now more secure and accurate.
4.0.2 - April 25, 2013
- Plugin settings are no longer re-saved to the database on every page load. Should speed things up a little.
- Changed CSS to discourage theme styles from overriding embed code overlay styles.
4.0.1 - April 23, 2013
- Added options to display video title and embed code overlays on video player, and captions and view counts below videos.
- Added option to filter your theme's video attachment page template to display the video instead of WordPress's default behavior of just showing the title of the video. For backwards compatibility retained old method of completely replacing the video attachment template with a video player.
- Redesigned settings page to save using AJAX, and added a sample video player so changes are seen immediately.
- Added iframe method to embed your videos on other websites.
- Additional video formats encoded by the plugin are now added to the WordPress database as video attachments. To avoid a Russian nesting doll scenario these child attachments do not have the fields for creating thumbnails and encoding additional formats.
- Changed encoded H.264 extensions from .m4v to .mp4 to increase compatibility with WordPress 3.6's new video capabilities. Existing M4V files will still work.
- Checks only one time for alternate video sources when videos are embedded from other servers. This should speed up page load times considerably.
- Added ability to rotate and replace the original file for videos recorded vertically on cell phones.
- Added post meta box to posts with embedded videos that lists alternate formats found for each video.
- Added option to set a post's featured image to the most recently generated thumbnail, and a button to set all previously generated thumbnails as featured images.
- Added option to save generated thumbnails as children of either the video or the post the video is attached to, and a button to convert all thumbnails to the chosen hierarchy.
- Added option to delete associated thumbnails and additional encoded video formats when original video attachment is deleted.
- Added backwards compatibility for WordPress versions 3.2 and above.
- If Strobe Media Playback player is selected, the Video.js player is used in situations where Flash doesn't work (webm, ogg playback) instead of the ugly default browser players.
- Added watermark, view counts, volume attribute, and Google Analytics event tracking when using Strobe Media Playback player.
- Added alignment option to center or right-justify videos.
- Revised video player setup to properly resize the player if the containing DIV is smaller than the video, and resize again if the window size changes (or orientation changes on Android).
- No matter which player is selected, iOS now displays the built-in controls so AirPlay works.
- Added schema.org videoobject markup for improved SEO.
- Fixed FLV embedding with Video.js player and improved selection of embedded formats for Strobe Media Playback.
- Adjusted video gallery CSS and added a play button overlay to gallery thumbnails.
- Adjusted watermark and Video.js play button CSS so the overlays don't overwhelm small videos.
- Set Video.js controls to fade out on autoplay and on iOS, without having to mouseover the video.
- Fixed endless "loading" spinner shown at the end of videos in some browsers in Video.js player.
- Clicking "Insert into post" immediately after upload without changing any options now inserts shortcode instead of just the title of the video.
- Inserting shortcode without a thumbnail no longer attempts to save the nonexistent thumbnail. Thumbnail cleanup is handled better.
- Fixed error message "array_key_exists() expects parameter 2 to be array" when shortcode didn't have attributes.
- Escaped all shell commands for increased security.
- Fixed bug that made "Encode" button disappear if all formats were checked.
- Fixed missing argument for kgvid_clear_completed_queue() when scheduling cleanup.
4.0 - April 22, 2013
- Accidental release caused by programmer's incompetence.
Version 3.1
3.1.1 - March 5, 2013
- Fixed missing ) in uninstall.php
3.1 - January 30, 2013
- Added video watermark overlay option. (Video.js only)
- Changed front-end CSS file name to kgvid_styles.css and made it always available, not just when galleries are on the page.
- Removed my watermark testing logo which was accidentally inserted above videos in version 3.0.3.
- Added option to choose -b:v or legacy -b flags when encoding. Recent FFMPEG versions only accept -b:v.
- Added automatic encode queue cleanup. Any completed entry older than a week will be removed.
- Added deactivation hook to remove queue and scheduled queue cleanup on deactivation.
- Added uninstall.php to remove settings from the database on uninstall.
- Disabled "Delete Permanently" link while encoding is canceling.
- Checked for escapeshellcmd. If it's disabled on the server, encoding can't start.
- Fixed insert title and download link checkboxes. They will actually insert something now.
- Changed method for determining if a video has been played or paused and played again, for counting purposes.
- Fixed check for mime type when generating H.264 video encode checkboxes to avoid showing options for QuickTime files that are higher resolution than the original video.
Version 3
3.0.3 - January 29, 2013
- Fixed bug that added a blank line to JavaScript embedded in the page if "volume" wasn't set in the short code (Video.js only).
- If video player is set larger than the containing DIV and the player size is reduced to fit, the height is now rounded to the nearest integer.
3.0.2 - January 24, 2013
- Fixed bug that permanently disabled buttons on the Embed Video from URL tab.
- Disabled "Delete Permanently" option for encoded files found on other servers.
- Reduced the jQuery UI Dialog css and put it in its own scope to avoid conflicts with existing jQuery UI Dialog themes.
- Cleaned out some leftover code.
3.0.1 - January 24, 2013
- Fixed bug that inserted empty options into gallery shortcodes.
3.0 - January 23, 2013
- Updated to provide compatibility with several media changes in WordPress 3.5. With this version, thumbnail generating & video encoding will only work in WordPress 3.5 and above.
- Added popup video gallery.
- Changed shortcode tag to [showshortcode][/showshortcode]. Retained [showshortcode][/showshortcode] for backwards compatibility.
- Added Video.js player option. Older Strobe Media Playback Flash player is still included for backwards compatibility, but Video.js is highly recommended.
- Added video play counting which is recorded to the WordPress database (Video.js only).
- Added Google Analytics event tracking for video plays (Video.js only)
- Added ability to encode multiple H.264 video resolutions.
- Added video encoding queue.
- Added qt-faststart and MP4Box processing to MP4/M4V H.264 videos encoded by the plugin to allow playback of videos as they download.
- Added option to change default number of thumbnails generated by the plugin.
- Changed any https FFMPEG input to http.
- Thumbnail images are now added to the WordPress database as soon as they are selected.
- Added option to use LIBAV instead of FFMPEG for thumbnail generating and video encoding.
- Added wmode parameter to fix Chrome z-index issue. (Strobe Media Playback only)
- Improved swfobject.js script enqueuing method to prevent conflicts (Strobe Media Playback only)
- Rewrote plugin settings to work with the WordPress plugin settings API.
- Removed dropdown list for embedding alternate encoded formats of video. All formats are made available to the player and the browser chooses best compatible format.
- Removed mdetect.php and removed forced downgrading of quality when on mobile devices. Mobile browsers now automatically choose best compatible format.
Version 2
2.0.6 - April 27, 2012
- Removed swfobject.js from the plugin package. Now using the one included with WordPress. WordPress 3.3.2 contains a security fix for swfobject.js and the plugin will use the fixed version if you have upgraded WordPress (which is highly recommended).
- Added setting to customize the formatting of titles inserted by the plugin.
- Added settings to display a custom image when videos end instead of the first frame of the video (Flash only).
- Fixed problem with embedded FLV files giving message "Argument Error – Invalid parameter passed to method" when loading poster images.
2.0.5 - April 20, 2012
- Fixed "Wrong datatype for second argument" error on line 339 and subsequent automatic replacement of original videos with Mobile/H.264 versions whether they exist or not.
2.0.4 - April 19, 2012
- Once again changed the process checking for FFMPEG installations. Should be universal now.
- Added setting to turn on vpre flags for users with installed versions of FFMPEG old enough that libx264 requires vpre flags to operate.
- Added setting to replace the video attachment template with a page containing only the code necessary to display the video. Makes embedding your hosted videos on other sites easier.
- Fixed progress bar for older versions of FFMPEG.
- Added Flash fallback when OGV or WEBM videos are embedded.
- Removed restriction on number of thumbnails that can be generated at once and added a cancel button while generating thumbnails.
2.0.3 - February 24, 2012
- When working with file formats that can't be embedded (WMV, AVI, etc) the option to embed the original file will be disabled if Mobile/H.264, WEBM, or OGV files are found.
- Changed encoding bitrate flag back to -b instead of -b:v to retain compatibility with older versions of FFMPEG.
- Cosmetic changes in encoding progress bar.
- No longer deleting encoded files if progress can't be properly established.
- Added "nice" to the encode commond (not on Windows) to prevent FFMPEG from overusing system resources.
2.0.2 - February 21, 2012
- Fixed check for FFMPEG to work with Windows.
2.0.1 - February 21, 2012
- Fixed check for FFMPEG again. Should be more universal.
2.0 - February 20, 2012
- Large rewrite to fix several security issues. Full server paths are no longer exposed in the Media Upload form, all AJAX calls are handled through wp_ajax, and nonces are checked.
- Added video encoding progress bar on Linux servers.
- Added button to cancel encoding.
- Added option to encode 720p or 1080p H.264 videos.
- Changed requirements for AAC encoding. Will work with libfaac or libvo-aacenc.
- Improved error reporting to help diagnose problems.
- Videos recorded on phones in portrait mode (tall and skinny) will not end up sideways if FFMPEG version .10 or later is installed.
- Thumbnail generation process uses fancy jQuery animation.
- Fixed check for FFMPEG. Should actually work in Windows now.
- Fixed unenclosed generate, embed, submit, delete strings in kg_call_ffmpeg
Version 1.1
1.1 - January 8, 2012
- Includes Strobe Media Playback files so Flash Player is now hosted locally, which allows skinning.
- Added skin with new, more modern looking play button. Upgraders should check the plugin settings for more details.
- Fixed "Insert into Post" button in "Embed from URL" tab when editor is in HTML view mode. Used to do nothing! Now does something.
- Added option to override default Mobile/HTML5 encode formats for each video
- Added check for FFMPEG. Generate & Encode buttons are disabled if FFMPEG isn't found.
Version 1
1.0.6 - November 6, 2011
- Resetting to defaults on the plugin settings page resets to actual values now, instead of undefined constants.
1.0.5 - November 6, 2011
- Fixed "Embed from URL" thumbnail creation. Generated thumbnails don't disappear anymore.
1.0.4 - November 4, 2011
- More thorough check made for existing attachments before registering poster images with the WordPress Media Library. Avoids registering duplicates or medium/small/thumb image sizes if they're used as poster image.
- Added loop, autoplay, and controls options to HTML5 video elements.
- When saving attachments, won't try to delete thumb_tmp directory if it doesn't exist.
1.0.3 - October 27, 2011
- Revised thumbnail cleanup to make sure temp files aren't deleted when generating thumbnails for more than one video at a time.
1.0.2 - October 21, 2011
- Fixed a shocking number of unenclosed stings in get_options() calls. Bad programming. Didn't affect functionality, but will stop generating errors.
- Removed clumsy check for FFMPEG running. Was preventing encoding if ANY user on the server was running FFMPEG. Be wary of overusing your system resources though.
1.0.1 - October 21, 2011
- Quick fix to add mdetect.php to the plugin package from WordPress
1.0 - October 20, 2011
- Huge re-write.
- Integrated with WordPress Media Library and added WEBM support.
- Increased control over thumbnail generation.
- Added tab to Insert Video dialog box for adding by URL (like the old version).
Version 0.2
0.2.1 - October 9, 2011
- Check made to ensure iPhone/iPod/Android compatible encode video height is an even number when HTML5 video encodes are made.
0.2 - January 18, 2011
- First Release
Hi, Kyle,
I’ve been using your plugin for more than a year now and it has worked fine historically. I recently created a new page (link provided in the ‘Website’ field of this comment form) and implemented a video gallery. I’ve been notified of an error message from one of the website’s users. They’re getting a pop-up with ‘TypeError – Error 1034’ after clicking on the videos on that page. I’m on a Mac using Chrome, Firefox, Safari, etc., and it works fine for me; and this user is on a PC (Windows OS version unknown). Any ideas? I’ve searched your forum, and it appears no one else has had this issue. Sounds like a type conversion issue after searching on Google (???). I don’t work with Flash much, so I’m in the dark. Any help is appreciated, as I’m on deadline to launch marketing materials for this page tomorrow.
Thanks!
@Brianne I would first try switching your player from Strobe Media Playback to Video.js (it’s the first option in the plugin settings) because it’s a much better player in general and it will most likely solve your problem.
@Kyle thanks, I got those errors sorted.Seems FFMPEG is a tricky program to get installed an running properly on some servers. Along with that, now I’m getting an error when I try to encode WEBM from an MP4:
Error: Error while opening encoder for output stream #0:0 – maybe incorrect parameters such as bit_rate, rate, width or height
Have you seen this error before?
Here’s my fmpeg setup:
ffmpeg version N-52668-gf685aee Copyright (c) 2000-2013 the FFmpeg developers
built on May 3 2013 04:37:48 with gcc 4.4.7 (GCC) 20120313 (Red Hat 4.4.7-3)
configuration: –enable-gpl –enable-nonfree –enable-postproc –enable-avfilter –enable-pthreads –enable-libxvid –enable-libx264 –enable-libmp3lame –disable-ffserver –disable-ffplay –enable-libvorbis –disable-ffplay –enable-shared –arch=x86_64 –enable-libtheora –enable-libvpx –enable-libfaac –disable-ffserver –disable-ffplay –enable-pthreads
libavutil 52. 27.101 / 52. 27.101
libavcodec 55. 6.100 / 55. 6.100
libavformat 55. 4.100 / 55. 4.100
libavdevice 55. 0.100 / 55. 0.100
libavfilter 3. 62.100 / 3. 62.100
libswscale 2. 2.100 / 2. 2.100
libswresample 0. 17.102 / 0. 17.102
libpostproc 52. 3.100 / 52. 3.100
thanks again for your help
@LvX you’re wrong about one thing. FFMPEG is a tricky program to get installed and running properly on EVERY server. If I could use anything else I would.
I’ve never seen that error from a WEBM before. Usually when you get that error it’s because you’re using an old version of FFMPEG with libx264. They don’t play nice together and I included an option in the plugin to turn on -vpre flags to fix that error. You could try that setting, but it shouldn’t make any difference with WEBM encoding and you are using a new version of FFMPEG. Can you encode OGV and H.264 without errors?
Try this from the command line to approximate what the plugin is doing:
{full path to ffmpeg}/ffmpeg -i {full path to MP4} -b:a 128k -b:v {3 times the height of the video}k -threads 1 {full path to MP4 but change the filename to .webm}
If you get the same error, adjust the bitrate or remove the -threads 1 flag. If that doesn’t work, add in
-s {width}x{height}
after the bitrateWhat are the dimensions of your video? Actually, can you send me a link to the video?
Yes, OGV and 460p encode fine. I’ll run some from the command line using the flags you provided. I just recompiled to the bleeding edge stable versions of everything and still getting the error.
Question, If I have a video in the Media Library checked and queued for encoding, does it stay in the queue until finished or is it flushed on any errors? Reason is, I’m seeing a tip: WEBM entered on existing queue entry 2 – Does that mean there’s another that’s ahead of it somewhere and is it trying to run queue 1 beforehand?
Here’s links to a couple of videos I’m having issues with:
https://d1bif8r5501zjb.cloudfront.net/bc1/wp-content/uploads/2013/04/CA-LOTTERY-construction.iphone5.mp4
http://d1bif8r5501zjb.cloudfront.net/bc1/wp-content/uploads/2013/04/BOOKING.COM-Booking.Yeah_.iphone5.mp4
Funny thing is, I was able to run this perfectly on another server using CentOS 5.9 – Switched to a new switched to a new server on 6.1 and having issues.
@Kyle – well it looks like I fixed it. I had two versions of libvpx installed. One using Yum and one compiled. FFMPEG was getting confused. For anybody interested: yum remove libvpx* and compile libvpx from source did the trick – Thanks Mate
Great! I was able to encode those videos as WEBMs on my own server so I was about to run out of ideas.
Hi Kyle,
On Chrome 26 with wordpress Version 3.5.1, the plugin sometimes works, sometimes doesn’t work. Is there any known issue going on? I will attach the example page here:
http://junichirokoyama.com/napoleon/
Thanks!
I love this plugin. It would make it even more amazing if you would make it insert a responsive video.
Thanks Kevin. What do you mean by responsive? The video resizes based on the size of its container, and only offers up resolutions that the device can play (assuming multiple resolutions are made available). What specifically do you want it to do that it doesn’t do?
Perhaps I am incorrect then. If it does what this plugin does already then I have no suggestion!
http://wordpress.org/extend/plugins/responsive-video-embeds/
@Kevin, it doesn’t do what that plugin does. That plugin is only for oEmbed videos like YouTube and Vimeo, which my plugin does not touch and I have no plans to change that. However, my plugin tries to be as “responsive” as possible for videos that you host yourself.
That’s awesome then, because that’s exactly what I wanted! I didn’t want anything working with youtube. I appreciate your feedback. I wasn’t sure if yours was responsive or not. Thanks
@Kevin, I should make that clear in the plugin’s description. It’s an important feature that’s caused me all kinds of headaches in implementation.
Hi this is Tom, everything worked fine but when I use the embed and I use a url like website.com/nameofvideo.mp4 and I generate thumbnails it generates them puts them in a temp dir after a few min’s that dir is deleted and the image is gone not in the upload folder like upload/5 how can I fix this? Thanks btw emial is tom@myfootjobs.com please if you or anyone knows how to fix this please send me an email asap once I get this all working 100% ill send you over some Paypal for the help.. Thanks again
TOM
@Tom, this is a problem that some people have and I don’t know what’s causing it. I hope to get to the bottom of it eventually.
Hi Kyle..Well I’ve had much luck with your plugin thanks. Encode about 50 or so videos without incident until recently, just a very strange error has started happening. Any video or thumbnails I create in the original file’s properties, attach themselves to about 100+different posts and media objects around my site. And it looks like its running in the background. As if it’s spawning itself and everytime I refresh the media’s listing, it has attached itself to more objects. No settings have been changed, during this process. Just been humming along encoding video, when I suddenly couldn’t see saved thumbnails.
Here’s a partial screenshot; http://i42.tinypic.com/10hls3m.png – This has happened to the last 2 videos I’ve tried to encode.
Here’s a screenshot of other entries showing single attachments: http://i39.tinypic.com/66kgzk.png
No problems there – Many of the above entries were encoded about an hour beforehand in the plugins normal process..
It feels like there’s a memory leak or something. Is there a log file attached to the plugin that shows what’s happening?
UPDATE: upon further inspection it looks like the encoded media is attaching itself the everything that’s been created or deleted, in order. I also see that it matches the plugin’s queue entries in order..Very strange
@LvX, even before you posted that update I was pretty sure that’s what it’s doing. When an attachment is created the plugin is putting in some sort of wildcard for the parent field. It must be a parent/child situation that I didn’t plan for. Do you have this problem with every new thumbnail or is there something different about the posts you’re working with? Is it a custom post type maybe? In the plugin settings do you have it set to attach thumbnails to videos or posts?
@Kyle, the plugin has the thumbnails attaching to video rather than post in settings. I’ll crack open phpmyadmin and see if a flag in the database for that setting is different than my settings show.
@LxX I wouldn’t expect to see anything different from that in the database, but I wanted to know for my own testing. My first thought is still that there’s something different about the recently uploaded videos. What are the video’s parents listed as in the media library? Have you tried re-creating thumbnails for videos that had worked normally before? Do the new thumbnails attach to everything, or do they only attach to the video?
Just installed the player today and really like it. However I cannot get a thumbnail to show. I get this message on the settings page: FFMPEG not found at /usr/local/bin. You can embed existing videos, but video thumbnail generation and Mobile/HTML5 video encoding is not possible without FFMPEG.
Can you advise please how I can correct this? Thanks again! Allen Harp, Hagerstown, MD.
Do you have FFMPEG installed on your server? If not, then you can’t make thumbnails. Most shared hosts do not have FFMPEG and do not allow users to install FFMPEG.
Hi Kyle, thx for the previous input..again the error I had turned out to be on my server’s end..We’re up and running again. Now I’m wondering…my site uses very specific sizes of thumbnails for each post. Is it possible to tweak or adjust the thumbnail output to two different sizes?
I know ffmpeg allows you to specify a thumbnail size in the command line..Where in the code is the size set..I’m thinking maybe I can put a radio button between the two sizes I need and when I generate the thumb it creates the size I chose.. what do you think?
Or even better, I’m hoping that somebody has asked this before and you have a good solution handy 🙂
Thx..hope you received my donation from pp.brgroup!
That’s great news. In case it’s relevant to other users, can you give me a summary of the server problem you fixed?
Thumbnails are initially created at the same resolution as the video, then when they’re saved to the database, WordPress should create all the various image sizes you’ve set up in your theme, just like it does when you upload an image yourself. If it’s not creating those additional image sizes, then there’s a problem. If they are being created, but not used, where exactly would you like to use those specific image sizes?
The problem on my end, was that cPanel/WHM was set to backup an enormous (6+ GB) site that is hosted on the server. The server holds 1TB of space total, but nfortunately it was set to use directory in the / partition which was partitioned to only hold about 8GB – that, with the operating system and my sites video, pushed it over the edge causing MYSQL to shut down and not receive anymore updates.
Yes, the thumbs are created, but a bug in my chosen theme is not choosing the correct resized images. So WordPress was resizing the images via HTML from as big as 1920×1080 down to 220×150 thumb size!!
I mentioned the bug to the developer and it seems there will be a fix coming soon hopefully.
BTW – if anyone wants to take a look at how your video and thumbnails have turned out go to:
http://broad-cast.info
Plugin rocks..you’ve done a great job, and being in the entertainment business. I’ll definitely use it on my personal website as well..
Hi Kyle,
May you can help me.
On my homepage, I got my post with my video. All is fine.
But on my article, I got a problem :
http://www.lo-geek.fr/je-fonds-avec-ce-suchard.php
Above the video there is a text, and the video seems broken.
Can you help me?
You have some sort of plugin that goes in and adds links to words in your posts that are tags on your site. It doesn’t seem to do it on the homepage, but in your post it added links every time the word “geek” appeared in your post, and since the word is in your site’s URL it’s going crazy adding links to every single link and messing up the video’s code.
Hi Kyle, I’m just playing around with your plugin a little bit to see whether it suits my/my clients needs.
I have two questions:
1) is it possible to read out and display the length of a video?
2) is it possible to restrict embedding or even downloading of a video?
Thanks a lot!
Tomas
If you have FFMPEG on your server and you do any of the plugin’s FFMPEG-related functions (either generate a thumbnail or encode a new format) then the duration of the video in seconds is saved as post meta for the video attachment with the key ‘_kgflashmediaplayer-duration’.
WordPress 3.6 is going to include a bunch of video metadata automatically. The duration of all videos will be stored in the ‘_wp_attachment_metadata’ array with the keys ‘length’ and ‘length_formatted’
Security with HTML5 video is really difficult. I am working on some ways to make it a little more difficult to download videos, but that’s going to take a long time for me to implement. As it is now, there is no restriction on what people can do with your videos once they have access to them.
It would be easy for me to allow users to disable video embedding on other websites. It won’t stop people from saving the files to their computer and then doing whatever they want with them, but it would deter casual sharing. I will add that as an option in the future.
Thanks Kyle, I really appreciate your super fast answer 🙂
I know: there is no a 100% security – and the “bad guys” will always find a way to break any restrictions. But for the let say 95% of the rest of us it shouldn’t be too easy… 😉
Cheers, Tomas
Hi, I am attempting centrally align my video on the page, it is currently on the left hand side. I used to align=”right” command within the KGVID , however it is not working. can you please help? thanks
Have you tried align=”center” ? Also, can you show me the page where it’s not working?
I get this error on my site when I try to use this:
Warning: json_encode() expects exactly 1 parameter, 2 given in /home/madiyoun/public_html/wp-content/plugins/video-embed-thumbnail-generator/video-embed-thumbnail-generator.php on line 809
Can you help?
http://madiyoung.com/?p=28
This json_encode() error was a problem with version 4.1 and is fixed in 4.1.1
For some reason I can’t the plugin to recognize ffmpeg. I’m changing the path in the setting, but still no luck. I even asked customer service with my hosting company. This is what I got:
“Unfortunately this error doesn’t make much sense. ffmpeg is installed and functioning properly, and nothing is blocking PHP from using it. I even tried pointing it directly to the ffmpeg directory (/usr/local/bin/ffmpeg is a symlink) with no luck. Do you know if there’s a version requirement for this script? Your current ffmpeg version is SVN-r14473 ”
Do you have any idea what the issue might be?
Accessing FFMPEG is one of the most difficult things this plugin does. I try to make it work on all kinds of servers (including Windows) that have all kinds of configurations I can only guess at. Look through the change log and you’ll see more entries for changing the FFMPEG test method than anything else.
Try entering this at the command line: /usr/local/bin/ffmpeg -i /path/to/wordpress/wp-content/plugins/video-embed-thumbnail-generator/flash/skin/images/PlayNormal.png /path/to/wordpress/wp-content/uploads/2013/05/ffmpeg_exists_test.jpg
Replace /path/to/wordpress with your full path to WordPress which would usually be something like /home/username/public_html/
It looks like I can not access ffmpeg when I ssh in – ffmpeg is highlighted pink in putty, broken symbolic link? Anyways, before I ask support about this, is the ffmpeg version on my server okay? SVN-r14473
Thanks.
I can’t possibly keep track of all the FFMPEG SVN revision numbers, but as far as I know, every version of FFMPEG can work with the plugin.
Here is what I got trying that command you recommend:
[root@koko.kokokolario.com /home/koko/public_html]$ /usr/local/bin/ffmpeg -i /home/koko/public_html/wp-content/plugins/video-embed-thumbnail-generator/flash/skin/images/PlayNormal.png /home/koko/public_html/wp-content/uploads/2013/05/ffmpeg_exists_test.jpg
FFmpeg version SVN-r14473, Copyright (c) 2000-2008 Fabrice Bellard, et al.
configuration: –prefix=/usr/local/cpffmpeg –enable-shared –enable-nonfree –enable-gpl –enable-pthreads –enable-liba52 –enable-libamr-nb –enable-libamr-wb –enable-libfaac –enable-libfaad –enable-libmp3lame –enable-libtheora –enable-libvorbis –enable-libx264 –enable-libxvid –extra-cflags=-I/usr/local/cpffmpeg/include/ –extra-ldflags=-L/usr/local/cpffmpeg/lib –enable-cross-compile
libavutil version: 49.7.0
libavcodec version: 51.62.0
libavformat version: 52.18.0
libavdevice version: 52.0.0
built on May 15 2009 18:29:24, gcc: 4.1.2 20080704 (Red Hat 4.1.2-44)
[image2 @ 0x8ad22d0]Could not find codec parameters (Video: png)
/home/koko/public_html/wp-content/plugins/video-embed-thumbnail-generator/flash/skin/images/PlayNormal.png: could not find codec parameters
Do I have to rebuild ffmpeg with zlib?
Thanks for your quick responses!
Well, there you go. One more thing I had no idea about. FFMPEG does appear to require zlib to open PNG files. FFMPEG isn’t supposed to require you to turn it on manually though, so that indicates that when FFMPEG was compiled your server didn’t have zlib enabled or because you’re using that ancient version then FFMPEG didn’t include it automatically. Out of curiosity, if you’re able to rebuild FFMPEG, why are you using that 5-year-old version?
I will work on an update to avoid using PNG files in my test, since they aren’t actually required for the rest of the plugin. I just had no idea it was possible to make a version that couldn’t read them.
ETA: Can you try this out on the command line?
/usr/local/bin/ffmpeg -i /path/to/wordpress/wp-content/plugins/video-embed-thumbnail-generator/images/sample-video-h264.mp4 /path/to/wordpress/wp-content/uploads/2013/05/ffmpeg_exists_test.jpg
The rebuild was an option given by support – a $65 an hour option. So you’re saying zlib is not required to make the plugin work?
I’m still trying to figure out why the plugin can’t see FFMPEG on my server..
Thanks again.
Yikes. Do not pay for that. Did you try the new command I posted?
The plugin doesn’t find FFMPEG on your server because it looks indirectly. Simply checking that the path /usr/localbin/ffmpeg exists doesn’t work because some servers hide those folders and on Windows everything is different. So in order to “find” FFMPEG the plugin executes a command that I thought would work with any build of FFMPEG. However, it does not work with your build, so it fails the test.
Hi Kyle,
thanks for integrating the “disable video embedding” function – great!
Today I have two other questions:
1) how do I get the URL of a video to use it in my custom type template for a lightbox? (is it just an attachment?)
2) we don’t have ffmpeg on the server and my client doesn’t want to use it anyway. But I’d like to have a simple way of adding a video thumbnail and was thinking about using the post thumbnail. Is there a simple way of doing this? A hook maybe? 🙂
Thanks a lot!
1) You can’t just use a URL to show in a lightbox because the embed disabling feature you requested involves disabling that capability. What you probably want is do_shortcode(). You could create it dynamically with post_meta fields.
2) When you create the shortcode string in your template, you could pull get_post_thumbnail_id() and then use that to generate a url for the “poster” attribute. Depending on your media setup you’ll probably want the medium-sized version of the image or a custom size. Here’s an example for the whole process. You’ll probably want to throw in some error catching:
$shortcode = '[KGVID ';
$post_thumbnail_id = get_post_thumbnail_id();
$poster = wp_get_attachment_image_src( $post_thumbnail_id, 'medium');
$shortcode .= 'poster="'.$poster[0].'"';
$movie_url = get_post_meta( get_the_ID(), 'video_url' );
$shortcode .= ']'.$movie_url.'[/KGVID]';
My example assumes you’ve entered the video file’s url in the post_meta field “video_url” but you could also enter the video’s attachment ID and then use that to get the video’s url the same way you got the poster url. Or to be really fancy about it, if you’ve attached the video to the custom post, you could find the post’s first video attachment using get_children() and figure out the URL from there so you or the user wouldn’t need to enter any post_meta.
$shortcode = '[KGVID ';
$post_thumbnail_id = get_post_thumbnail_id();
$poster = wp_get_attachment_image_src( $post_thumbnail_id, 'medium');
$shortcode .= 'poster="'.$poster[0].'"';
$args = array(
'numberposts' => 1,
'post_mime_type' => 'video',
'post_parent' => get_the_ID(),
'post_status' => null,
'post_type' => 'attachment',
);
$video_attachments = get_children($args);
$movie_url = wp_get_attachment_url( $video_attachments[0]->ID );
$shortcode .= ']'.$movie_url.'[/KGVID]';
I haven’t tested this at all, but the basic outline should be correct.
Great! I tried the second code and it really inserts the thumbnail into the player! 🙂
But for now, the video won’t play.
I get two notices
Notice: Undefined offset: 0
Notice: Trying to get property of non-object
in relation to the line
$movie_url = wp_get_attachment_url( $video_attachments[0]->ID );
I send you the URL of the page via email so maybe you can have a look at it?
Thanks a lot!
I was wrong about using $video_attachments[0]. get_children returns an object not an array. Like I said, I didn’t test this out. Figure out how to access the ID of the first element that get_children returns. Your best bet is probably doing a for each loop on $video_attachments.
I got it working 🙂
………………………..
$shortcode = ‘[KGVID ‘;
$post_thumbnail_id = get_post_thumbnail_id();
$poster = wp_get_attachment_image_src( $post_thumbnail_id, ‘medium’);
$shortcode .= ‘poster=”‘.$poster[0].'”‘;
$args = array(
‘numberposts’ => null,
‘post_mime_type’ => ‘video’,
‘post_parent’ => get_the_ID(),
‘post_status’ => null,
‘post_type’ => ‘attachment’,
);
$video_attachments = get_posts($args);
$movie_url = wp_get_attachment_url( $video_attachments[0]->ID );
$shortcode .= ‘]’.$movie_url.’[/KGVID]‘;
echo do_shortcode(“$shortcode”);
………………………..
One last question:
How can I show the number of views within the loop?
I wanna show it on the page with all clips (for each clip).
I didn’t find an entry for it in the database.
Excellent!
Views are stored in the post_meta field
_kgflashmediaplayer-starts
I can’t get this work.
I wrote something like this:
echo intval(get_post_meta($post->ID, ‘_kgflashmediaplayer-starts’, true))
The result is always “0”
My loop looks something like this (I stripped down all the html):
‘playing’,
‘nopaging’ => true
);
$the_query = new WP_Query( $args );
while ( $the_query->have_posts() ) : $i++;
$the_query->the_post(); ?>
ID, ‘_kgflashmediaplayer-starts’, true)) ?>
…………….
What could be wrong with it?
It’s hard to read all of that since WordPress is doing all kinds of reformatting. Put any code you post between code tags to retain the formatting.
Are you sure that the value’s not 0? Can you see the
_kgflashmediaplayer-starts
field in phpmyadmin? Also, I think inside the loop you’re better off usingget_the_ID()
instead of$post->ID
I found ‘_kgflashmediaplayer-starts’ in the database but the related ‘post_id’ doesn’t match the actual ID of the post where the video is in.
It seems it is much more linked to the video attachment rather than the post.
My attempts to get it work were rather fruitless.
Do you have any hint on this?
My code looks something like this:
$args = array(
'post_mime_type' => 'video',
'post_type' => 'attachment',
'numberposts' => 1,
'meta_key'=>'_kgflashmediaplayer-starts',
'post_status' => null,
'post_parent' => get_the_ID(),
);
$counter = get_posts($args);
$clip_counter = wp_get_attachment_metadata( $counter[0]->ID );
echo $clip_counter;
right now i’m not getting anything out of it 🙁
Got it:
$args = array(
'post_mime_type' => 'video',
'post_type' => 'attachment',
'numberposts' => 1,
'meta_key'=>'_kgflashmediaplayer-starts',
'post_status' => null,
'post_parent' => get_the_ID(),
);
$counter = get_posts($args);
$clip_counter = intval(get_post_meta($counter[0]->ID,'_kgflashmediaplayer-starts',true));
echo $clip_counter;
Thanks once again for your support!
Didn’t even see the new command..
Here is the response I got from it:
[petercop@koko /]$ /usr/local/bin/ffmpeg -i /home/petercop/public_html/wp-content/plugins/video-embed-thumbnail-generator/images/sample-video-h264.mp4 /home/petercop/public_html/wp-content/uploads/2013/05/ffmpeg_exists_test.jpg
FFmpeg version SVN-r14473, Copyright (c) 2000-2008 Fabrice Bellard, et al.
configuration: –prefix=/usr/local/cpffmpeg –enable-shared –enable-nonfree –enable-gpl –enable-pthreads –enable-liba52 –enable-libamr-nb –enable-libamr-wb –enable-libfaac –enable-libfaad –enable-libmp3lame –enable-libtheora –enable-libvorbis –enable-libx264 –enable-libxvid –extra-cflags=-I/usr/local/cpffmpeg/include/ –extra-ldflags=-L/usr/local/cpffmpeg/lib –enable-cross-compile
libavutil version: 49.7.0
libavcodec version: 51.62.0
libavformat version: 52.18.0
libavdevice version: 52.0.0
built on May 15 2009 18:29:24, gcc: 4.1.2 20080704 (Red Hat 4.1.2-44)
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x88af2d0]negative ctts, ignoring
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x88af2d0]Could not find codec parameters (Data: tmcd / 0x64636D74)
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from ‘/home/petercop/public_html/wp-content/plugins/video-embed-thumbnail-generator/images/sample-video-h264.mp4’:
Duration: 00:00:01.00, start: 0.000000, bitrate: 91 kb/s
Stream #0.0(eng): Video: h264, yuv420p, 960×540, 23.98 tb(r)
Stream #0.1(eng): Audio: libfaad, 48000 Hz, stereo
Stream #0.2(eng): Data: tmcd / 0x64636D74
Unable to find a suitable output format for ‘/home/petercop/public_html/wp-content/uploads/2013/05/ffmpeg_exists_test.jpg’
Thanks.
My mistake. The command should be this /usr/local/bin/ffmpeg -i /path/to/wordpress/wp-content/plugins/video-embed-thumbnail-generator/images/sample-video-h264.mp4 -vframes 1 /path/to/wordpress/wp-content/uploads/2013/05/ffmpeg_exists_test.jpg
Here is the response:
[petercop@koko /]$ /usr/local/bin/ffmpeg -i /home/petercop/public_html/wp-content/plugins/video-embed-thumbnail-generator/images/sample-video-h264.mp4 -vframes 1 /home/petercop/public_html/wp-content/uploads/2013/05/ffmpeg_exists_test.jpg
FFmpeg version SVN-r14473, Copyright (c) 2000-2008 Fabrice Bellard, et al.
configuration: –prefix=/usr/local/cpffmpeg –enable-shared –enable-nonfree –enable-gpl –enable-pthreads –enable-liba52 –enable-libamr-nb –enable-libamr-wb –enable-libfaac –enable-libfaad –enable-libmp3lame –enable-libtheora –enable-libvorbis –enable-libx264 –enable-libxvid –extra-cflags=-I/usr/local/cpffmpeg/include/ –extra-ldflags=-L/usr/local/cpffmpeg/lib –enable-cross-compile
libavutil version: 49.7.0
libavcodec version: 51.62.0
libavformat version: 52.18.0
libavdevice version: 52.0.0
built on May 15 2009 18:29:24, gcc: 4.1.2 20080704 (Red Hat 4.1.2-44)
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x935d2d0]negative ctts, ignoring
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x935d2d0]Could not find codec parameters (Data: tmcd / 0x64636D74)
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from ‘/home/petercop/public_html/wp-content/plugins/video-embed-thumbnail-generator/images/sample-video-h264.mp4’:
Duration: 00:00:01.00, start: 0.000000, bitrate: 91 kb/s
Stream #0.0(eng): Video: h264, yuv420p, 960×540, 23.98 tb(r)
Stream #0.1(eng): Audio: libfaad, 48000 Hz, stereo
Stream #0.2(eng): Data: tmcd / 0x64636D74
Unable to find a suitable output format for ‘/home/petercop/public_html/wp-content/uploads/2013/05/ffmpeg_exists_test.jpg’
Thanks again.
Apparently you’ve managed to find an incompatible version of FFMPEG. I should be able to fix this though. Let’s try another command. /usr/local/bin/ffmpeg -i /path/to/wordpress/wp-content/plugins/video-embed-thumbnail-generator/images/sample-video-h264.mp4 -vframes 1 -f mjpeg /path/to/wordpress/wp-content/uploads/2013/05/ffmpeg_exists_test.jpg
Lucky me. Here’s the response:
[petercop@koko /]$ /usr/local/bin/ffmpeg -i /home/petercop/public_html/wp-content/plugins/video-embed-thumbnail-generator/images/sample-video-h264.mp4 -vframes 1 -f mjpeg /home/petercop/public_html/wp-content/uploads/2013/05/ffmpeg_exists_test.jpg
FFmpeg version SVN-r14473, Copyright (c) 2000-2008 Fabrice Bellard, et al.
configuration: –prefix=/usr/local/cpffmpeg –enable-shared –enable-nonfree –enable-gpl –enable-pthreads –enable-liba52 –enable-libamr-nb –enable-libamr-wb –enable-libfaac –enable-libfaad –enable-libmp3lame –enable-libtheora –enable-libvorbis –enable-libx264 –enable-libxvid –extra-cflags=-I/usr/local/cpffmpeg/include/ –extra-ldflags=-L/usr/local/cpffmpeg/lib –enable-cross-compile
libavutil version: 49.7.0
libavcodec version: 51.62.0
libavformat version: 52.18.0
libavdevice version: 52.0.0
built on May 15 2009 18:29:24, gcc: 4.1.2 20080704 (Red Hat 4.1.2-44)
[mov,mp4,m4a,3gp,3g2,mj2 @ 0xa03a2d0]negative ctts, ignoring
[mov,mp4,m4a,3gp,3g2,mj2 @ 0xa03a2d0]Could not find codec parameters (Data: tmcd / 0x64636D74)
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from ‘/home/petercop/public_html/wp-content/plugins/video-embed-thumbnail-generator/images/sample-video-h264.mp4’:
Duration: 00:00:01.00, start: 0.000000, bitrate: 91 kb/s
Stream #0.0(eng): Video: h264, yuv420p, 960×540, 23.98 tb(r)
Stream #0.1(eng): Audio: libfaad, 48000 Hz, stereo
Stream #0.2(eng): Data: tmcd / 0x64636D74
Output #0, mjpeg, to ‘/home/petercop/public_html/wp-content/uploads/2013/05/ffmpeg_exists_test.jpg’:
Stream #0.0(eng): Video: mjpeg, yuvj420p, 960×540, q=2-31, 200 kb/s, 23.98 tb(c)
Stream mapping:
Stream #0.0 -> #0.0
Press [q] to stop encoding
frame= 1 fps= 0 q=6.2 Lsize= 13kB time=0.04 bitrate=2618.2kbits/s
video:13kB audio:0kB global headers:0kB muxing overhead 0.000000%
Thanks,
Success! I will release a patch pretty soon, but for now if you want to edit the plugin you should be able to get it working by making these changes:
find this line:
$cmd = escapeshellcmd($options['app_path'].'/'.$options['video_app'].' -i '.plugin_dir_path(__FILE__).'/flash/skin/images/PlayNormal.png '.$uploads['path'].'/ffmpeg_exists_test.jpg');
and replace it with this:
$cmd = escapeshellcmd($options['app_path'].'/'.$options['video_app'].' -i '.plugin_dir_path(__FILE__).'/images/sample-video-h264.mp4 -vframes 1 -f mjpeg '.$uploads['path'].'/ffmpeg_exists_test.jpg');
Then find this line:
$ffmpeg_options = '-y -ss '.$movieoffset.' -i "'.$moviefilepath.'" '.$movie_info['rotate'].' -qscale 1 -vframes 1 "'.$thumbnailfilename[$i].'"';
and replace it with this:
$ffmpeg_options = '-y -ss '.$movieoffset.' -i "'.$moviefilepath.'" '.$movie_info['rotate'].' -qscale 1 -vframes 1 -f mjpeg "'.$thumbnailfilename[$i].'"';
If you want to encode any H.264 videos make sure you turn on the two FFMPEG legacy options in the plugin settings page. They’re designed to help older versions of FFMPEG work.
Everything is working perfect! Thank you very much for your time!
We’ve always had a problem where videos would play on all browsers except for IE which we have never been able to figure out. I just updated the plugin along with our version of WP and now videos will no longer encode so I decided to install the most current ffmpeg and still no luck. It will show “encoding” then shortly after will show “error:” but doesn’t say what the error is. We are running a Windows 2008 Small Business Server and we had no issues encoding videos prior to updating just not being able to get videos to play on IE. The previous version we were using was about 8 months old.
Windows servers are really hard for me because I don’t have access to one that I can mess around with. Are you sure that the encoding actually stops or is it just saying “error”?
I’m beginning to suspect that IE is more picky about H.264 than other browsers. Have you tried changing your filenames from .m4v to .mp4?
Also, your template doesn’t load any of the JavaScript or CSS files that my plugin uses, so you’re just using a plain HTML5 video player. I think that’s because you’re not running wp_head();
Another option. Instead of configuring m4v as mime-type video/mp4 (which I always thought was correct) consider changing it to video/x-m4v
Yes I have tried changing from .m4v to .mp4 with no luck.
I am sure that it is not encoding, if I load a new video not even Firefox will play it now. Looks like I’m going to have to do a restore on my Windows Server to get the old version of the plugin and WP back since at least the encoding worked and the vids would play on all the other browsers.
Firefox won’t play your video because Firefox can’t play H.264 videos and your theme doesn’t run wp_head() so it doesn’t load the Flash player that you need in order to play H.264 videos in Firefox. The old version of my plugin you were running used some bad, lazy methods to load JavaScript that didn’t run through wp_head() so you were able to get away with it. I’m surprised that you haven’t had other problems with plugins since a lot of stuff happens in wp_head(). Just adding
wp_head();
before thetag in your theme’s header would solve your Firefox problem.
I’m still interested in the details of your H.264 file’s encoding. Since your theme is not loading any of the JS and CSS that make my plugin work, you are working with a plain HTML5
video
tag. That actually helps us with the troubleshooting since it eliminates a lot of other variables.Going to be honest, I cannot figure out which file or where the wp_head(); should go. The person who created our theme and designed our site is no longer around so even though I’m great with the server side stuff when it comes to the back end of WP I’m not too familiar with it. Even then the biggest issue we have is that the videos no longer encode so until that can be figured out I need to go back to the old version of the plugin.
Not sure if this means anything to you but I noticed this error when I went into the video encode queue to remove the error encodes (still nothing encodes since the updates)
Notice: Undefined offset: 720 in C:\inetpub\wwwroot\wp-content\plugins\video-embed-thumbnail-generator\video-embed-thumbnail-generator.php on line 1135
It means there’s something wrong with your video encoding queue, but you already knew that. I don’t know yet why that particular error would happen. Was it there as soon as you went to the queue page or did it show up after you cleared the queue?
I thought you had given up on this version so I didn’t want to force you through a round of troubleshooting, but if you are up for it, I have some things to try.
Pick a test video. Open up the folder that your video is in on the server (presumably /wp-content/uploads/2013/06 or similar). In WordPress, start encoding a 480p version of that video. Check the folder to see if a log file is created. If there is a log file, open it up and see if there’s any text in it. Copy that text into another document. Wait until you get the error message from WordPress and then see if the log file is still there. If it’s still there, give me the full text of the log file.
And I just want to make sure, the files are not really encoding in the background right? You’ve checked to make sure they aren’t there? Just because my plugin’s giving you an error message it doesn’t guarantee that there’s no encoding going on. The only thing I know for sure at this point is that the log file isn’t working correctly. What about thumbnails? Do those work?
What am i doing wrong here? Here’s my code
bp_portfolio_item_url() Passes a URL fine until i try this code.
Thanks
Jake, I missed this comment before. If you still need help, can you post the code again but between
<code>
tags? Otherwise it just gets stripped out by WordPress. You might also have better luck at the support forums at http://wordpress.org/support/plugin/video-embed-thumbnail-generatorHey! I’ve been using yoru plugin forever, you’ve helped me with tech support in the past too and you are just awesome. my newest issue is that a lot of my backed up code has “width=”100%” and a height setting in the shortcode and with th enewest update, everything shows up in a 100×100 pixel box. i’m using video.js – i am wondering if i will have to go through every page and delete the size in each shortcode or if you’ve got a better way.
thanks!
Oh no! I didn’t know you could even do that in old versions. If you want to fix it right away I think you can just delete the line
set_width = parseInt(set_width);
from the kgvideo_video_embed.js file in my plugin. It’s at /wp-admin/plugin-editor.php?file=video-embed-thumbnail-generator%2Fjs%2Fkgvid_video_embed.js&plugin=video-embed-thumbnail-generator%2Fvideo-embed-thumbnail-generator.phpHmm, I deleted that line and it didn’t work. Let me be more specific. Here is a link to one of my posts (nsfw but on the tamer side) http://www.indiepornrevolution.com/courtney-troubles-curves – notice how the video is tiny. the shortcode used for this video is: [FMP poster="http://www.indiepornrevolution.com/poster-image-file" width="100%" height="360"]http://www.indiepornrevolution.com/wp-content/uploads/video-file.m4v[/FMP] nothing changes when i deleted that line. thanks for your help
Sorry this took me so long to check up on, but it seems like that did work. Are you still seeing the problem? Make sure you refresh your cache or try it on a different computer.
Is there an easy way to add a URL redirect after the video ends?
That shouldn’t be too difficult. I might put that on the list for future features. You could do it yourself by modifying the kgvideo_video_embed.js file and adding a line to the
player.on('ended'
section. It would look something like:player.on('ended', function kgvid_play_end(){
kgvid_video_counter(id, 'end');
setTimeout(function() { jQuery('#video_'+id+' > .vjs-loading-spinner').hide(); }, 250);
if ( video_vars.endOfVideoOverlay != "" ) {
jQuery('#video_'+id+' > .vjs-poster').css({
'background-image':'url('+video_vars.endofvideooverlay+')'
}).fadeIn();
player.on('timeupdate', kgvid_timeupdate);
}
window.location.replace('http://www.yourwebsite.com/redirect.php'); // <----- This is the line you'd add });
We have been trying to get the videos to play on Android phones with no success. Works fine on PCs running IE, Chrome, Firefox and Safari. Tried with Native Browser, Chrome and Firefox on a Galaxy S3 running Android 4.1.2. Same result on a HTC Inspire running Android 2.3.5 with Flash support. Then We tried it on the videos on your blog https://www.kylegilman.net/blog/ with the same failure. I don’t know if you encoded those videos with HTML 5 support. If you can provide any guidance we would appreciate it.
Android phones are extremely picky about video formats. I wouldn’t expect any of the videos on my blog to work since they were encoded with settings that won’t work on Android. Does this one work for you though? https://www.kylegilman.net/project/bronx-warrants-pilot/
The important thing for Android compatibility is the H.264 profile. It only officially supports up to Baseline. You can see the profile of your videos if you use the MediaInfo tool. A lot of compressors don’t give you the option to constrain the profile. I’m a big fan of Handbrake for ensuring compatibility.
Hi, I have a question regarding this plugin. Desire to generate thumbnail images of the videos embedded but I get the following message: EXEC PHP is disabled in settings. You can embed existing video, but video thumbnail generation and Mobile/HTML5 video encoding will not work. Contact your System Administrator to find out if you can enable EXEC.
then in the plugin settings option gives the option to put the path of the video supposedly I want to generate the thumbnail image, in my case the video is at the root then I guess it would be something like: /usr/local/bin/ffmpeg-i/laeradelabiotecnologia.com/biotecno/public_html/ebenpagan.mp4
the video is: ebenpagan.mp4
my website: laeradelabiotecnologia.com
my user: **deleted by Kyle for security**
and again I get the following message: EXEC PHP is disabled in settings. You can embed existing video, but video thumbnail generation and Mobile/HTML5 video encoding will not work. Contact your System Administrator to find out if you can enable EXEC.
what is the solution? Please urgent
Just like the error message says, your server has the EXEC PHP function disabled. Sometimes EXEC is disabled for security reasons and cannot be enabled. I have no ability to tell you how to enable EXEC on your server because I don’t know why it is disabled. If you can enable EXEC and you have FFMPEG installed on your server then you can make thumbnails. Most shared hosts don’t allow you to install FFMPEG.
Hi Kyle,
I just upgraded to your most current version of this plugin. I checked off “overlay embed code,” but it’s not overlaying it. I’m wondering if one of my “Better WP Security” settings is blocking it. But I’m not sure which one that would be. Although I disabled the plugin and it still wouldn’t create the embed button at the top.
Is there a way to generate the embed code without that feature checked? Where do I find what I would need to include in the string?
Also, when I click on “Save Changes” at the bottom, it redirects me to a page not found. Not sure why.
Thanks in advance for your help with this.
Laura
By the way, I input the URL for all my videos and posters when creating the initial code with your plugin.
Hi again Kyle. Just sending you an update and another question. I think I figured out that you can’t use the embed code feature unless the media is in the WP media library, and not pulled in directly from a URL. So I have it working that way. But now I have another issue. The studio press theme I use forces me to limit the width of my videos to no greater than 580. This cuts off the text for “XX Views” so it says “XX View..” with only the left one third of the “s”. Is there a way that I can adjust it so it doesn’t cut it off?
That is correct. You can’t embed videos outside of the WP Media Library.
A 580 pixel width shouldn’t be a problem on its own. There must be something else going on. Can you post a link for your site so I can troubleshoot it?
Ok, I figured it out. The 100% width of the DIV below the video is extending the views text a few pixels beyond the bounds of the video. I’ll add it to the next update. You can fix it now by removing the line
width: 100%;
from the.kgvid_below_video
class in the css/kgvid_styles.css file. The link to edit the file is wp-admin/plugin-editor.php?file=video-embed-thumbnail-generator/css/kgvid_styles.css&a=te&scrollto=1530Hi Kyle, you rock! Thanks so much for everything.
Mobile Safari Question. Hi again Kyle. Different topic. I have the embed code working on a client’s website, pulling the video from my website. But it’s pulling an image of my websites home page, instead of the video. It’s even clickable inside the video window frame. It doesn’t do it on iPhone Chrome, though. I’m on a 4GS still running iOS 5 (jailbroken, so I can’t upgrade yet). Any ideas on why it’s doing that?
I can’t replicate the problem on my own site. I also don’t have an actual iOS 5 device, but it seems to work in the iOS Simulator. Can you post a link to the site you’re having a problem on?