VLC Plugin Detector
There are a couple of issues with VLC detection that are worth mentioning.
First, the version numbers for the VLC player are a bit odd, in that they contain both numbers and letters. Some examples of version numbers are 0.8.6f, 0.8.6a, 0.8.6, 0.8.4a, and 0.8.4. It appears that the letter appears after the 3rd number. (Not all versions have letters)
PluginDetect will pay attention to the letters [a thru z] in the version numbers when using the getVersion() and isMinVersion() methods. For example, you could use PluginDetect.isMinVersion('VLC', '0.8.6a') if you wanted to make sure that the installed VLC plugin version is greater than or equal to 0.8.6a. You could also specify PluginDetect.isMinVersion('VLC', '0.8.6') which tells you whether the VLC plugin version is greater than or equal to 0.8.6.
And second, the ActiveX control for the VLC player is an issue for Internet Explorer 7+. When the ActiveX control is instantiated for the very first time in Internet Explorer 7+, the yellow security bar will pop up. The user will specifically have to click on the yellow security bar and choose to allow the control to run.
This is not an issue for Internet Explorer 6 or lower.
When PluginDetect attempts to do VLC detection in IE7+ for the very first time, the yellow security bar will pop up. There does not appear to be any way for PluginDetect to avoid this.
Perhaps some day the VLC installer will add the VLC classid to the pre-approved registry key to avoid this issue.
VLC plugin versions 0.8.2 and higher are detected by PluginDetect.
3rd party media players for VLC files
When PluginDetect detects the VLC player, it tries to detect only the genuine VLC player itself. Therefore it will try to ignore any 3rd party plugin that is similar to VLC, such as the Totem player. Totem (under Linux) tries very hard to fool plugin detectors into thinking that it is the genuine VLC player. But since we wish to distinguish between VLC and 3rd party imitators, PluginDetect will filter out the Totem player when detecting VLC.
Having said that, let us say that you have a VLC media file with a suffix of ".vlc" and a mimetype of "application/x-vlc-plugin". Let us also assume that you don't really care whether VLC or some 3rd party plugin plays the VLC media file in your browser. In that case, we would test for the presence of any player able to play a ".vlc" media file:
var $$ = PluginDetect;
var VLCfilePlayer = $$.isMinVersion('VLC', '0') >=0 || $$.hasMimeType("application/x-vlc-plugin") ? true : false;
A file with a ".vlc" suffix has a mimetype of "application/x-vlc-plugin".
isMinVersion('VLC', '0') will check if any version of VLC player is present. Note that isMinVersion('VLC') tries to filter out Totem when detecting VLC.
hasMimeType("application/x-vlc-plugin") simply checks for the presence of the "application/x-vlc-plugin" mimetype in your non-Internet Explorer browser. When present, it means that some plugin (either VLC, or Totem, or other plugin) is installed that can supposedly play ".vlc" files.
Please note that hasMimeType() only works for non-Internet Explorer browsers. It will return null for Internet Explorer.
Back to main page