Dissecting the QuickTime Detection Test.

• Our test for detecting QuickTime is derived from scripting provided in the book QuickTime for the Web, 3rd edition:

 
Book Cover

The new third edition of QuickTime for the Web includes QuickTime 6 Pro and describes all the new features of QuickTime 6, including MPEG-4, AAC audio, 3GPP audio, video, and text for mobile devices, QuickTime ActiveX enhancements, and more.

ISBN 1558609040, 825 pages

 

Available from: Morgan Kaufmann, Amazon.com, Barnes and Noble, and your local bookseller.

 


• Perspective (quoting from p. 121)

  • Experiencing your website depends on the QuickTime plug-in (a term that includes the QuickTime ActiveX control), so you want to be sure your visitors have it. If they don't, you want to redirect them to a download page or to alternate content pages.
  • Detecting browser plug-ins tends to be a black art, due to inconsistencies among browsers, operating systems, ActiveX, JavaScript, and VBScript.
  • QuickTime uses a plug-in mechanism to display movies from your web page in the user's browser. You use an <EMBED> element to display QuickTime content within the browser, much like in this example:

    <EMBED src="sample.mov" width="160" height="144" autoplay="true" CONTROLLER="false" PLUGINSPAGE="http://www.apple.com/quicktime/download/"></EMBED>

  • For this <EMBED> tag to work, the user must have the QuickTime plug-in installed on his or her system. If the appropriate QuickTime plug-in is not installed, when an HTML page with QuickTime content is loaded into the user's browser, the movie is not visible. Instead, the browser replaces it with a "broken plug-in icon":
    QuickTime Plug-in Broken
    ...and attempts to assist the user in obtaining the required software.
  • Microsoft Internet Explorer for Windows, versions 5.5 SP2 , 6.0 and greater, no longer supports Netscape-style plug-ins, such as the plug-in installed as part of QuickTime 5.0.2 and earlier versions. Consequently, Windows customers using these versions of Internet Explorer who visit your site may be unable to view QuickTime content in the browser.
  • Because of this situation, the traditional QuickTime <EMBED> tag must now be embedded within a more comprehensive <OBJECT> tag that makes available the new ActiveX control for QuickTime. The ActiveX control for Windows allows you to direct any kind of media to QuickTime, without concern about the server or browser MIME type settings.
  • For examles of the QuickTime <EMBED> tags and their parameters, link to the page SAMPLER OF EMBEDDING PARAMETERS FOR QUICKTIME.

 


• Options for Detecting QuickTime

  • Once upon a time, it was sufficient for a website to check just for the installation of QuickTime or a version of QuickTime on an end user's computer. Once QuickTime was installed, along with the QuickTime plug-in for web browsers, anyone could enjoy the display and playback of QuickTime compatible content.
  • The browser plug-in installed as part of QuickTime worked for both Netscape browsers and Microsoft Internet Explorer on both Windows and Mac OS. However, today, Windows users who try to play a QuickTime movie in Internet Explorer version 5.5 SP2 or later will encounter the "broken plug-in icon" until they install a new QuickTime ActiveX control from Apple in addition to the QuickTime plug-in. Users of other browsers on either Windows or Mac OS are unaffected--they can continue to use the plug-in installed with QuickTime and do not need to get the new QuickTime ActiveX control. Once users have the new ActiveX control installed, they are also unaffected; they can view any existing pages.
  • So...detecting for QuickTime now has two routines:
    1. Is QuickTime installed on an individual's computer?
    2. Is the ActiveX control installed for Windows users of Internet Explorer version 5.5 SP2 or later?

 


• Is QuickTime installed? Sample of a Detection Routine.

The following discussion is an example of a relatively bullet-proof detection routine that you can add to the "front door" of your website in order to detect for a user's installation of QuickTime (as well as the ActiveX Control). If you can guarantee that all visitors will enter your site through the defined "front door," then this detection routine may exist only once somewhere in the first few pages of your site, depending on the structure of your content.

Basically, this routine consists of the following three HTML pages:

    1. "One Moment" Re-Direct: Warns the visitor that a detection routine is about to be run.
    2. "You Have QuickTime": Confirms the installation of QuickTime and re-directs the visitor back to the main website content.
    3. "You Need QuickTime": If the detection routine fails, provides options for getting or downloading QuickTime.

 

#1: "One_Moment" Re-Direct html page

This is a simple html page that can be branded with your web site's logos. It is a courtesy page warning visitors that something out of the ordinary is about to take place as the web browser is tested for QuickTime compatibility. An example of a One_Moment page is found in our NeuroLogic Exam web site as well as in the front door to this Digital Video site.

The html coding for the One_Moment page basically uses several media elements and parameters to run the detection routine. For a full explanation of the coding, please refer to the text QuickTime for the Web, 3rd Edition. Images and a QuickTime movie may be displayed and flash by. Once the routine is run, the end user either sees a confirmation web page that QuickTime is already installed and good to go (#2: "You Have QuickTime") or receives direction on how to download QuickTime (#3: "You Need QuickTime).

<html>
<head>
<title>NeuroLogic Exam QuickTime Detection</title>
<META HTTP-EQUIV="Refresh" CONTENT="5;URL=GetQT.htm">
</head>
<BODY>
< center>
< H1>&nbsp;</H1>
<img src="../images/SliceOfLifeLogo.gif" width="320" height="240">
< H1>Our web site will check if you have<br>
QuickTime installed and running
<br>
on your computer.</H1>
< HR>
< OBJECT WIDTH="320" HEIGHT="108"
CLASSID="clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B"
CODEBASE="http://www.apple.com/qtactivex/qtplugin.cab">
< PARAM NAME="src" VALUE="QEngine.mov">
< PARAM NAME="href" VALUE="HasQT.htm">
< PARAM NAME="autohref" VALUE="true">
< PARAM NAME="controller" VALUE="false">
< PARAM NAME="autoplay" VALUE="true">
< PARAM NAME="qtnext1" VALUE="HasQT.htm">
< EMBED SRC="GetQT5.qtif" TYPE="image/x-quicktime"
HEIGHT="108" WIDTH="320"
ALT="You need QuickTime: http://www.apple.com/quicktime/download"
QTSRC="QEngine.mov" HREF="HasQT.htm" AUTOHREF="True"
CONTROLLER="False" AUTOPLAY="True"
QTNEXT1="HasQT.htm"
PLUGINSPAGE="http://www.apple.com/quicktime/download">
< /EMBED>
< /OBJECT>

 

 

#2: "You Have QuickTime" html page

If the detection routine found in the previous page finds QuickTime is installed, then a confirmation web page is displayed for a few seconds before automatically redirecting the visitor back to the main content of the website. The re-direct metatag example is highlighted in red below.

You Have QuickTime

<HTML>
< HEAD>
< TITLE>Main Content</TITLE>
< META HTTP-EQUIV="Refresh" CONTENT="3;URL=../html/mainmenu.html">
< /HEAD>
< BODY bgcolor="#ffffff">
< H1 align="center">&nbsp;</H1>
< H1 align="center">You have QuickTime!</H1>
< hr>
< H1 align="center"><img src="../images/qlogo2.jpg" alt="You have QuickTime." width="208" height="160"></H1>
< hr>
< div align="center">Standby...
< /div>
< /BODY>
< /HTML>

 

#3: "You Need QuickTime": html page
If the user's web browser is failing the QuickTime detection test, then the web page will display improperly or a warning message will appear.

Typically, on a Windows computer without QuickTime installed, the following image appears to let the visitor see that something is not right with the media being used to detect for QuickTime.

No QuickTime at all

 

Sometimes, a broken QuickTime plug-in image appears on the web page to indicate that the computer is in trouble.

Broken QuickTime Icon

 

If an earlier version of QuickTime is installed, but the ActiveX Control for Windows and Internet Explorer is missing, the visitor may also see the following window. This window appears because the <OBJECT> tag has been used in the QuickTime Detection web pages.

Need ActiveX

 

Eventually, the end user will see the final and third page in the Detection Routine, "You Need QuickTime" and a link to the Apple QuickTime Download page is included. The actual wording on this page can be customized to match your needs. If you are including the stand-alone QuickTime installers on a CD-ROM product using html pages, then you would include instructions on how to find the installers on the CD-ROM and launch them, rather than navigating the Internet to the Apple website for QuickTime Download.

You Need QuickTime

<HTML>
< HEAD>
< TITLE>Get QuickTime</TITLE>
< /HEAD>
< BODY bgcolor="#ffffff">
< H1 align="center">&nbsp;</H1>
< H1 align="center">You need QuickTime!</H1>
< hr>
< H1 align="center"><img src="../images/qlogo2.jpg" alt="You need QuickTime." width="208" height="160"></H1>
< hr>
< div align="center">
<p>It appears you need to install QuickTime.<br>
Click on the URL or the &quot;<a href="http://www.apple.com/quicktime/download" target="_blank">Get
QuickTime</a>&quot; button below<br>
to reach Apple's free download
website:</p>
<p> <a href="http://www.apple.com/quicktime/download" target="_blank">http://www.apple.com/quicktime/download</a></p>
<p><a href="http://www.apple.com/quicktime/download" target="_blank"><img src="../images/quicktime_download.gif" alt="Download QuickTime" width="88" height="31" border="0"></a></p>
< /div>
< p align="center">&nbsp;</p>
< p align="center">If you reached this page in error,<br>
click on the &quot;<a href="../html/mainmenu.html">Main Menu</a>&quot; button below<br>
to continue browsing our website:</p>
< p align="center"> <a href="../html/mainmenu.html"><img src="../images/mainmenupageturn.gif" alt="Main Menu" width="70" height="70" border="0"></a></p>
< p>&nbsp;</p>
< p>&nbsp;</p>
< /BODY>
< /HTML>

 


• Is the ActiveX Control installed on Windows computers using Internet Explorer version 5.5 SP2 and greater?

  • Discussion from Apple

  • Updating QuickTime Embed Tags

    The required code consists of an HTML OBJECT element with an enclosed EMBED element as in the following example:


    <OBJECT CLASSID="clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B" WIDTH="160"
    HEIGHT="144" CODEBASE="http://www.apple.com/qtactivex/qtplugin.cab">
    <PARAM name="SRC" VALUE="sample.mov">
    <PARAM name="AUTOPLAY" VALUE="true">
    <PARAM name="CONTROLLER" VALUE="false">
    <EMBED SRC="sample.mov" WIDTH="160" HEIGHT="144" AUTOPLAY="true"
    CONTROLLER="false"
    PLUGINSPAGE="http://www.apple.com/quicktime/download/">
    </EMBED>
    </OBJECT>

    The CLASSID must always equal:
    clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B

    The CODEBASE must always equal:
    http://www.apple.com/qtactivex/qtplugin.cab

    The PLUGINSPAGE must always equal:
    http://www.apple.com/quicktime/download/


The attributes highlighted in red should be customized to your web page. You need to substitute "sample.mov" (in both SRC attribute elements) with the URL of the actual movie (and its pathway) to be played. You should also change the HEIGHT and WIDTH parameters to match the height and width of the movie (in pixels).


If you already have EMBED elements for the QuickTime plug-in on the relevant pages, you need to enclose each of them in an OBJECT element with CLASSID and CODEBASE parameter values as shown above and with SRC and other parameter values to match those in your existing EMBED element. The OBJECT element can use any EMBED attributes QuickTime understands. Visit http://www.apple.com/quicktime/authoring/embed.html for more information.


For existing web pages, it may be sufficient to add such an OBJECT element to the "front door" page of your site. Once the OBJECT element on the "front door" page has caused the user to install the ActiveX control, all subsequent pages with the original EMBED elements will work properly. In cases where you cannot be certain that the "front door" page is always visited, then all your pages should be revised to use these OBJECT elements.

 

  • ActiveX Auto-Update Utility

There is a utility which will automatically scour existing web site pages with existing QuickTime embed tags and update them with the appropriate Active X object tag. The utility is called QT Tag Converter. A URL link is provided below.



http://www.qtilities.com/qt_tag_converter/index.html
.

 

 

 

 

Return to Defining the End User's Computer