RealPlayer Plugin Detector

A few PluginDetect commands for RealPlayer detection

PluginDetect.getVersion('RealPlayer', instantiate): [Returns string or null]
   Returns the version (as a string) of the installed RealPlayer plugin. For non-Internet Explorer browsers, you may need to specify the instantiate input argument in order to detect the plugin version.
   Returns null when the version could not be determined (when plugin is not installed/not enabled, or plugin is installed but the version information is unavailable).

By default, the returned version string is comma delimited and has the format of "A,B,C,D". If you wish to change the getVersion() delimiter, then use:
   PluginDetect.getVersion(delimiter) where delimiter is a string with exactly 1 character.

For example,
   PluginDetect.getVersion(".");   // set delimiter
   var version = PluginDetect.getVersion("RealPlayer");    // version has the format of "A.B.C.D"

PluginDetect.isMinVersion('RealPlayer', minVersion, instantiate):
[Returns number]
   Returns 1 if RealPlayer is installed (& enabled) and plugin version is >= minVersion.
   Returns 0 if RealPlayer is installed (& enabled). The plugin version is unknown, and thus we are unable to determine if version >= minVersion.
   Returns -0.1 if plugin is installed & enabled, but plugin version is < minVersion.
   Returns -1 if plugin is not installed or not enabled.
   Returns -3 if you supplied a bad input argument to the isMinVersion( ) method.

minVersion: [string or number input argument]
   This is the minimum plugin version.
   Can be a string such as  '1,5,0,0' or '1.5' or '1,5,0,1' or '' etc...
   Can be a number such as 0 or 1.5 or 1.50 etc...
   If minVersion is not specified, then PluginDetect will assume minVersion is '0'.
   Strings are more versatile than numbers since '1,5,0,1' cannot be expressed as a number.

instantiate: [Boolean. Optional input argument.]
[The instantiate input argument has no effect on Internet Explorer. It only applies to non-IE browsers.]
   If instantiate is true, then an instance of the RealPlayer will be inserted into the DOM and queried to get the RealPlayer version. The disadvantage here is that your browser might show a security popup message asking for permission to run the plugin.
   If instantiate is false/undefined, then the plugin version may not be obtained for your (non-Internet Explorer) browser.

Different kinds of RealPlayers

There appear to be different kinds of RealPlayers out there:

1) Basic RealPlayer - the kind that most end users will have.

2) RealPlayer Plus - a paid version that has extra features. I believe the version numbers for the Plus are the same as the version numbers for the Basic.

3) RealPlayer Enterprise - a configurable player designed for corporate and education deployments. The version numbers for Enterprise are different from the version numbers of the basic/Plus RealPlayers.

4) Desktop vs mobile. I believe the version numbers for RealPlayer on mobile devices may be different from the version numbers for RealPlayer on desktop computers.

Detecting the Plugin Version

The RealPlayer plugin version is detected by the getVersion( ) method. The getVersion( ) method will return a value of either null or a string of 4 numbers "A,B,C,D" separated by a comma. Each of these 4 numbers is an integer >=0. When a version is detectable, then usually all 4 numbers "A,B,C,D" will be detected.

For Internet Explorer, PluginDetect will always reveal the plugin version for RealPlayer.

For certain other browsers, PluginDetect may only reveal the version if you use the instantiate input argument. The instantiate input arg will cause the RealPlayer plugin to run in your browser. But some browsers may display a security message asking for permission to run that plugin.

The version can only be detected on certain platforms. For example, PluginDetect can return a plugin version for Windows and Mac, but not Linux.

RealPlayer in Windows

The version numbers for RealPlayer under Windows are somewhat confusing to me. As near as I can tell, there are/were 4 numbers that can identify RealPlayer. They are:

1) The RealPlayer Release Version. Shown in the "About Realplayer" dialog box. This is the version of the RealPlayer parent application. [Update: in older releases, the parent application version was not necessarily exactly the same as the plugin version. In the newer releases, however, the two appear to be the same.]

2) The standalone build number. Shown in the "About RealPlayer" dialog box. This is the build of the RealPlayer parent application. [Update: in the newer releases, there no longer appears to be a build number]

3) The standalone installer version. When you look at a RealPlayer standalone installer file, right-click, and go to Properties. You will find a version #.

4) The RealPlayer browser plugin version. PluginDetect.getVersion("RealPlayer", true) will try to return the plugin version whenever possible. PluginDetect usually obtains this number by instantiating RealPlayer (either as an ActiveX control or as an embedded app in a web page), and then calling RealPlayer's GetVersionInfo( ) method. [The browser plugin makes it possible for RealPlayer to be embedded in a web page.]

The confusing part here is that the 4 numbers discussed above can be different from one another, and yet all still refer to the same RealPlayer. At least, that is what it seems like to me.

[Update: As of RealPlayer 15, the version numbers appear to be more consistent and reasonable.]

I created a table of these numbers for various RealPlayer releases (Windows only). This table is by no means complete. But hopefully it makes things a little bit easier to understand, if that is even possible. I also list the Digital Signature Timestamp for each RealPlayer standalone installer, which gives us a very rough approximation as to when that version of RealPlayer was released. Here is the table:

Release Version
Build #
Plugin Version,
GetVersionInfo( )
Digital Signature
Timestamp -- Aug 15, 2013 -- Nov 10, 2011 -- Sept 28, 2011 -- Jan 26, 2011 -- Nov 10, 2010
SP 1.1.5 July 01, 2010
SP 1.1.4 May 03, 2010
SP 1.1.3 March 22, 2010
SP 1.1.1 March 01, 2010
SP 1.1 Feb 16, 2010
SP 1.0.5 Nov 19, 2009
SP 1.0.2 Oct 14, 2009
SP 1.0 Aug 18, 2009
SP 1.0 (Beta) June 21, 2009
SP 1.0 (Beta) -- -- --
11.1.3 June 26, 2009
11.1.2 June 10, 2009
11.1.1 April 24, 2009
-- -- --
11.1 March 18, 2009
11.0.8 Feb 24, 2009
11.0.7.a Feb 12, 2009
11.0.7 Jan 30, 2009
11.0.6 Nov 4, 2008
11.0.5 Sept 17, 2008
11.0.4 July 07, 2008
11.0.3 April 10, 2008
11.0.1 (Beta) Jan 11, 2008
-- -- -- --
11 Nov 12, 2007
11 (Beta) Oct 23, 2007
11 (Beta) Sept 07, 2007
11 (Beta) Aug 09, 2007
11 (Beta) July 31, 2007
11 (Beta) June 26, 2007
11 (Beta) June 5, 2007
10.5 Oct 16, 2006
10.5 Sept 13, 2006
10.5 Feb 17, 2006
10.5 Nov 29, 2005
10.5 Oct 10, 2005
10.5 June 30, 2005
10.5 June 02, 2005
10.5 Feb 16, 2005
10.5 (Beta) -- -- --
10.0 June 30, 2004
10.0 -- -- --
RealOnePlayer 2.0 Jan 22, 2004
RealOnePlayer 1.0 Aug 15, 2002
8 Update 3 -- --
8 Update 2 -- --
8 Gold -- --
7 Update 1 -- --
7 Gold -- --
G2 Update 3 -- --
G2 Update 2 -- --
G2 Update 1 -- --
G2 Gold -- --

There are a number of observations we can make based on the table above...

1) You should note that the same plugin version can refer to more than one release version for RealPlayer. For example, plugin version refers to RealPlayer SP 1.0 thru RealPlayer SP 1.0.5. I do not know why they did this, but it would have been much better to have a unique plugin version for each release version. So when PluginDetect.getVersion('RealPlayer') returns a value, one does not know exactly which release version / build # that it refers to.

2) The above table does not list all possible versions of RealPlayer. For example, the above table lists RealPlayer SP 1.0 and SP 1.0.2 in consecutive order, but it is possible that at least one or more versions were released in between SP 1.0 and SP 1.0.2. It's just that I was unable to find any installers or any published data for those in between.

3) The presence of a "--" in the above table for the Digital Signature Timestamp indicates that I was unable to obtain an installer for that particular RealPlayer version. In that case, the data for that version came from a published source as opposed to actually testing that RealPlayer.

4) For Internet Explorer, PluginDetect queries a RealPlayer ActiveX object via the GetVersionInfo( ) method to get the plugin version. This has worked consistently well for all RealPlayer versions tested.

5) For all other browsers (ie. Firefox, Chrome, Opera, etc...), querying RealPlayer via GetVersionInfo( ) only works for RealPlayer 12 and higher. However, some of these browsers may show a security popup message asking for permission to run RealPlayer if RealPlayer is outdated.

6) The numbers in the above table can be discontinuous from one major release to the next. For example, when going from RealPlayer 10.5 to RealPlayer 11 (release versions), the plugin version skips from 6.0.12.xx to 11.0.0.yy. Also, notice how the plugin version skips from 12 to 14. Looks like a case of triskaidekaphobia to me.

7) As of RealPlayer 14, there no longer appears to be a standalone build number. Perhaps RealNetworks decided to simplify things and just get rid of the standalone build number?

8) As of RealPlayer 15, the version numbers appear to be consistent. The RealPlayer release version is the same as the installer version, which is the same as the plugin version. All (or most) of the RealPlayer component versions also appear to be consistent. This is a very good improvement over the older versions, and should eliminate any confusion over the version numbers for RealPlayer.

9) It would still be nice if they put the RealPlayer version in the browser's navigator.plugins[ ] array. This way, we would not have to put an instance of the plugin in a web page, just to find out what version of RealPlayer is installed in the browser.

RealPlayer in other Platforms

For Macintosh, PluginDetect can obtain the RealPlayer version when you specify the instantiate input argument.

For Linux, PluginDetect cannot obtain the plugin version by any means. PluginDetect can only tell you whether RealPlayer is installed or not installed. [RealPlayer 11 is the last known version released for this platform. RealPlayer is no longer being developed for Linux.]

For mobile platforms, I have no specific data at this time.

Top of Page