Plugin compatibility issues (Definition)

Not all plugins behave the same.

The area where you may experience the most difficulty with plugins is to do with video and media. There are now three major competing technologies and many other minority plugins that can play audio and video.

If you just concentrate on the main players, you still have a lot of work to do. These are:

Functionally they are all very similar. Some of the protocols are shared between them and they all deliver multiple streams to a player plugin.

Other plugins that you'll encounter will be:

Beyond that, some prefer an <EMBED> while others prefer <OBJECT> tags. This is platform- and browser-dependent so on one browser a plugin may <EMBED> and on another, the same plugin will work best in an <OBJECT> tag.

Be aware that using the same plugin in the same browser and implementing it as an <OBJECT> or an <EMBED> may mean that certain functionality is only available in one or the other.

Given that you have got the plugin working with the correct tag and the features you need are available, the call-back messages they use are not the same, nor are the method calls you can make on the plugin. Indeed, for some plugins, you may only be able to talk to them from JavaScript with the very latest version. Older versions simply ignore the JavaScript messages.

Given that you now have your plugin running, in the right tags, and can talk to it, the functionality is different. Some plugins may allow the clip to be played backwards while others won't. Some may let you pause and play with different method calls, while at least one provides only a play_pause command. In that scenario, you can play or pause the clip but you won't actually know what state it is in.


See also:Compatibility, Plugin events