Image Processing Reference
In-Depth Information
26.3
Player or Plug-In—You Choose
If you are building a video-enabled web site, you must decide how you are going to pres-
ent the video within your content. Some say the best approach is to embed the video
within the web page with a plug-in, while others suggest that it is better to call up an exter-
nal player.
You must look carefully at this; the choice may determine whether your engineering
needs will be trivial or complex, and that will affect your bottom line.
Using a player is generally more portable. The player would have already been
installed and is mapped using the MIME-type mechanisms within the web browser in
order to select the helper application. This works similarly, regardless of the platform you
are playing back on. So long as there is a player available for all the target platforms, this
is fine. Some players force the viewer to read advertising that the player manufacturer
controls. You may be able to get extended developer licenses and re-skin the player to
reduce this effect.
26.4
Plug-Ins and JavaScript
If you decide to go with the plug-in approach, you may have to do significant amounts of
work to ensure that the plug-in works on all browsers and platforms. Back in 1998, the
BBC News Online web site deployed an audio/video console that uses frames and
JavaScript in order to solve these problems, but the implementation was technically chal-
lenging. Certain approaches did not work well. For example, changing the name of a clip
worked on some plug-ins but not on others; the page containing the plug-in had to be
reloaded from scratch because the JavaScript command to select a new URL was not hon-
ored. On some browser and platforms it was necessary to use an <EMBED> tag, while on
Windows it was necessary to use the <OBJECT> tag. Further challenges led to the
Windows code having to be created dynamically when used in the MSIE browser but not
in the Netscape browser. Creating HTML dynamically with JavaScript causes object bind-
ings to happen after the page begins loading. Those bindings are not properly resolved
until some time after the page has finished loading. Any onLoad event triggers might
cause scripts to run earlier than intended. They will then cause errors because the target
objects are not yet properly created (the technical term is instantiated).
Object creation and destruction on any dynamic basis is also prone to memory leaks
because it is an unusual thing to do and seems to slip through the Quality Assurance test-
ing processes when browser code is developed.
Another disadvantage of embedding is that the page with the video object must
remain loaded. Therefore, putting the video on a page that has any links to another loca-
tion takes the viewer away from the video very soon after accessing it. The optimum
approach is to create a pop-up window with the video object in it. The pop-up (console)
remains on-screen as long as the user needs it, without affecting subsequent browsing.
In 1998, another major problem was that the plug-ins supported different APIs for
JavaScript control. This is still not standardized. It would be very helpful if there were a
Search WWH ::




Custom Search