Developer Home Contents Search Feedback Support Intel(r)

Application Note

Digital Content Channels

Previous Section | Next Section
Table of Contents

Chapter 4 - Theater Channel Application

The theater application provides a preview of new movies being released in theaters. The application uses dynamic HTML to deliver high-quality video clips and information about released movies, and the application makes use of several key technologies: Indeo® Video 5.0 is used to deliver high-quality 30-FPS video on CD-ROM, Content management of the channel is done using Active Channel and a Link Resolver, and Microsoft’s Channel Definition Format is used to provide off-line browsing and update Web pages*. Web sites, meanwhile, deliver the latest movie information and trivia, videos are sold through e-commerce solutions on the Web, and push servers are used to push new content as well as advertising.


Figure 4-1. Theatre Channel Architecture

Client User Interface

The client interface for the theater application was written entirely in dynamic HTML and Java Script*. ActiveMovie is used to play Indeo Video 5 AVI movie trailers within the HTML page. A Java-based ad-banner control provides rotating ads to link to live Web sites The application takes advantage of the object oriented nature of the newest browsers and Java scripts to provide a robust application.


Figure 4-2 Theatre Channel User Interface

Dynamic HTML

Several features of Dynamic HTML were used to provide a better graphical interface. Dynamic HTML extends standard HTML by adding an object model. Objects in a Web page can be labeled and scripts written to dynamically change the objects. Special effects can be applied to graphics or text to liven up a static Web page. Dynamic HTML allows for dynamic positioning of objects within the browser window. This feature was used to properly position graphic buttons, active movie control and ad banners on top of the background. Controls and graphic elements where labeled to allow scripts to operate on these objects based on the interaction.

Active Movie

The active movie control is used to playback the Indeo video 5.0 video clips. The function DoPlay for changing the URL reference within the movie control is shown in Figure 4-2. This function is called whenever a navigation button is selected. The ShowControls and ShowDisplay are to turn off the multimedia controls and display counter within the active movie control. Autostart is set to false to run the movie clip as soon as it is loaded. The filename is set by calling DoPlay which calls the Link Resolver for the appropriate URL reference whenever the navigation buttons are hit.

<OBJECT ID="ActiveMovie1" WIDTH=320 HEIGHT=240

CLASSID="CLSID:05589FA1-C356-11CE-BF01-00AA0055595A" border="1" style="position: absolute; top: 136; left: 240">

<PARAM NAME="_ExtentX" VALUE="106">

<PARAM NAME="_ExtentY" VALUE="106">

<PARAM NAME="ShowDisplay" VALUE="0">

<PARAM NAME="ShowControls" VALUE="0">

<PARAM NAME="AutoStart" VALUE="-1">

</OBJECT>

function DoPlay(sURL){

var sNewLink

sNewLink = LnkRslv1.Resolve(sURL)

ActiveMovie1.FileName = sNewLink

}

 

Figure 4-3 Active Movie Control

Full-Screen Mode

The theater channel is run in full-screen mode to provide a fully branded interface without the normal browser controls or menus. Setting the Internet Explorer browser to full-screen mode requires the use of a starting HTML page that launches the theater page in full screen. The simple script to create a full-screen branded interface is shown below:

<script language=vbscript>

window.open "http:\\134.134.246.52\theater\theater.htm", "",

"toolbar=no, status=no, location=no,directories=no, fullscreen=yes"

window.close

</script>

Figure 4-4 Full Screen Mode Script

The toolbars, status bar, location window and directories are set to "no" so they will not be displayed. The full-screen parameter is set to "yes" to set Internet Explorer to full screen.

Advertising Banners

The theatre application includes advertising banners for rotating the latest movie releases. Microsoft FrontPage* supports a variety of Java applets to support advertising banners. Ads can include effects such as blinds, dissolves, box in or box out, and the effect is specified in the rotator effect parameter. The time specifies the number of seconds that the ad should be displayed. Finally, the URL parameter specifies the link to jump to when the ad-banner is pressed. The advertising banners can be of any width or height, and the banner is embedded on top of the background graphic by using dynamic positioning. The position of the banner is specified as absolute and offset 160 pixels from the top and 26 from the left.

<applet code="fprotate.class" codebase="_fpclass/" width="120" height="175" style="position: absolute; top: 160; left: 26;">

<param name="rotatoreffect" value="boxOut">

<param name="time" value="5">

<param name="url" value="http://www.sony.com/" valuetype="ref">

<param name="image1" value="mibb.jpg" valuetype="ref">

<param name="image2" value="afob.jpg" valuetype="ref">

</applet>

Figure 4-5 Advertising Banner

Content Management

Content management in the movie channel uses Microsoft’s Tabular Data Control and Intel’s Link Resolver. The TDC acts as a database for storing movie information such as the actor names, director, price and movie genre. The Link Resolver Control resolves whether the asset resides on the hard drive, CD or on the Internet. To update the theatre application, a sample Channel Definition File is created to periodically search the Web site for the latest content. The application is centered around the Tabular Data Control and moves between records stored in the database text file.

Microsoft’s Tabular Data Control

The Tabular Data Control retrieves data within a delimited text file and displays it in a table in the HTML page. Each data element in the file is defined as the first line and separated by commas. Each additional line specifies the data set by a special delimiter. Each data element can then be assigned to a table entry within a dynamic HTML page or even an object.

The theater application stores information about each movie in the text file. The database file used in the theater application is shown below:

record|movie|studio|reldate|director|actor1|actor2|actor3|avifile|price|Type

!1!|!Air Force One!|!Columbia Pictures!|!7/2/97!|!Wolfgang Peterson!|!Glenn Close!|!Harrison Ford!|!Gary Oldman!|!e:\airforce one.avi!|!39.95!|!Action!

!2!|!Men In Black!|!Columbia Pictures!|!7/4/97!|!Barry Sonnenfield!|!Will Smith!|!Tommy Lee Jones!|!Linda Fiorentino!|!e:\mib.avi!|!39.95!|!Sci-Fi!

!3!|!Starship Troopers!|!Tri Star!|!7/4/97!|!Paul Verhoeven!|!Casper Van Dien!|!Michael Ironside!|!Rue Mcclanahan!|!e:\starship Troopers.avi!|!39.95!|!Sci-Fi!

 

Figure 4-5 Movie database stored in TDC Text Format

The definition of a movie control consists of specifying the data file, the text qualifier and the field delimiter. The initial record filter is set to 1, the first record in the database.

Moving Between Records

The theater application stores information about each movie in the text file. Dynamic HTML is used to process mouse clicks on the object. To move through the records, each of the button objects—browseleft and browseright—specify one click to call the functions previousrecord and nextrecord. The code used to define the TDC control (labeled Movie) and move between records is shown below.

On pressing the browseleft and browseright buttons, the record number is checked and incremented/decremented or set to the first/last record. The text database file is then searched for the appropriate record number with the Movie.Filter call. The data is updated with the Movie.Reset call.

This simple code allows for the inclusion of simple database records to dynamically change the text displayed in tables. Any object can be defined and tied to a record defined in the Movie TDC. This code is shown in Figure 4-7.

<object id="Movie" width="0" height="0" style="position: absolute; top: 0; left: 0" classid="CLSID:333C7BC4-460F-11D0-BC04-0080C7055A83">

<param name="TextQualifier" value="!">

<param name="FieldDelim" value="|">

<param name="DataURL" value="movie.txt">

<param name="UseHeader" value="True">

<param name="Filter" value="record=1">

</object>

browseleft.onclick = nextrecord

browseright.onclick= previousrecord

function previousrecord() {

if(recordno > 1)

{

recordno--

}

else

{

recordno=3

}

Movie.Filter="record=" + recordno

Movie.Reset()

DoPlay("http://134.134.246.52/" + recordno + ".avi")

}

function nextrecord() {

if(recordno < 3)

{

recordno++

}

else

{

recordno=1

}

Movie.Filter="record=" + recordno

Movie.Reset()

DoPlay("http://134.134.246.52/" + recordno + ".avi")

}

Figure 4-6 Tabular Data Control and Script for moving between records

<table id="shop_tbl" border="1" datasrc="#Movie" cellspacing="0" cellpadding="0" width="120" style="position: absolute; top: 158; left: 650;" height="145">

<tr>

<td bgcolor="#FFFF00" height="12"><p align="center"><big></big><span datafld="movie"></span>

</td>

</tr>

<tr>

<td bgcolor="#00FF00" height="12"><p align="center"><font face="Georgia" color="#0000FF"></font><span datafld="studio"></span></td>

</tr>

<tr>

<td bgcolor="#FF8000" height="12"><p align="center"><font face="Georgia" color="#000080"></font><span datafld="director"></span></td>

</tr>

<tr>

<td bgcolor="#00FFFF" align="center"><font face="Georgia" color="#000080"></font><span datafld="actor1"></span></td>

</tr>

<tr>

<td bgcolor="#00FFFF" align="center"><font size="24" face="Georgia" color="#000080"></font><span datafld="actor2"></span></td>

</tr>

<tr>

<td bgcolor="#00FFFF" align="center"><font face="Georgia" color="#000080"></font><span datafld="actor3"></span></td>

</tr>

</table>

Figure 4-7 Table definition linking data fields to TDC database

Link Resolver ActiveX Control

The Link Resolver is a simple ActiveX control that redirects a URL reference from an Internet access to a local CD or hard drive. The control has several parameters. The first is the CD-ROM name, which is verified to ensure that the CD containing the asset is the correct one and is inserted into the CD-ROM drive. In addition to specifying the parameters, the link control is called with the appropriate URL to be checked, and then it will resolve the appropriate reference. The function for the Link Resolver is called when processing database records. The ActiveMovie.Filename is set to the URL consisting of the TCP address for the server, the record number and the ".avi" extension. The appropriate movie assets are stored on the CD and played accordingly.

<OBJECT ID="LnkRslv1" WIDTH=0 HEIGHT=0

CLASSID="CLSID:4E401503-7DCB-11D0-A060-00AA00C0F5D6">

CODEBASE="lnkrslv.ocx#Version=1,0,0,001">

<PARAM NAME="_Version" VALUE="65536">

<PARAM NAME="_ExtentX" VALUE="0">

<PARAM NAME="_ExtentY" VALUE="0">

<PARAM NAME="_StockProps" VALUE="5">

<PARAM NAME="CD-ROMLabel" VALUE="Hybrid">

<PARAM NAME="LinkName" VALUE="">

<PARAM NAME="PushDataDir" VALUE="c:\demo\movie\assets">

<PARAM NAME="Text" VALUE="">

</OBJECT>

Figure 4-7 Link Resolver Control and Code to update Active Movie Filename

CDF Channel Definition Format

The theater application can be turned into an Internet Explorer* channel by adding a channel definition format (CDF) file for caching the theater HTML pages on the user’s hard disk. This improves performance and allows for off-line browsing of content. Defining a channel is a simple process. The steps involved are:

Set up the channel, specifying channel bitmaps, channel title and the abstract describing the channel.

Specify the pages to be included in the channel.

Specify whether the channel pages should be cached or not.

Define the channel as an e-mail notification, screen saver, desktop component, channel or hide it.

Schedule the channel for updates.

There are several tools for defining the CDF format. Frontpage97* from Microsoft provides a simple wizard for defining a channel. The final output for the wizard is shown below. The channel is described as the Theatre channel and includes the two Web pages in the theater application.

<?XML Version="1.0" Encoding="iso-8859-1" ?>

<Channel HREF="start.html" BASE="http://134.134.246.52/" SELF="channel.cdf">

<A HREF="http://134.134.246.52/start.html">

</A>

<Title>Theatre Channel</Title>

<Abstract>The Theatre channel provides the latest previews of the latest movies</Abstract>

<Logo HREF="movie.bmp" Style="Image" />

<Logo HREF="moviei.bmp" Style="Icon" />

<Schedule>

<IntervalTime DAY="7" />

</Schedule>

<Item HREF="start.html" Precache="Yes">

<A HREF="http://hybridtest2/start.html">

</A>

<Title>start.html</Title>

<Usage Value="Channel">

</Usage>

</Item>

<Item HREF="theater.htm" Precache="Yes">

<A HREF="http://hybridtest2/theater.htm">

</A>

<Title>This is sample text</Title>

<Abstract>The Theatre channel provides the latest releases for preview.</Abstract>

<Usage Value="Channel">

</Usage>

</Item>

</Channel>

Figure 4-8 Sample Channel Definition Format

Content Delivery

The theatre channel distributes movie trailers on CD-ROM. The application uses the Channel Definition Format and Active Channels to keep the Web pages updated. Push Technology could deliver the latest movies based on the user’s preferences.

CD- or DVD-ROM

The CD-ROM delivers 30-FPS videos of movie trailers and the interface for the movie application. With either Indeo Video 5.0 or MPEG2 video, the movie trailers would be high-quality. Users could get quarterly updates of the latest movies being released on the CD-ROM.

DVD would be the ideal storage choice for delivering movies encoded in MPEG2 video and AC3 audio. With 4.7–17 GB of storage, 144 minutes of video can be stored on a DVD. That represents at least one full-length movie, but for the movie application, that would represent 144 trailers at 1 minute each in length. If it were MPEG1 or Indeo Video 5.0, more than a 1,000 trailers could be stored on a DVD. Full-length movies could be distributed with software included to run the channel as well. The application could be delivered with every DVD movie purchased, enhancing the value of the DVD over just purchasing the movie, as consumers get the benefits of a DVD movie, plus the added features and information a channel application could provide.

Push

The push servers could update users subscribed to the channel with the movie trailers of recent releases. Indeo Video 5.0 could be used to provide scaleable video downloads online. MPEG2 clips take considerable bandwidth, but over broadband they could easily be distributed. Local demographics could be used to deliver theater locations where the movie is being shown. The movie trailers themselves represent the best form of advertising, and ad banners could be pushed showing specials for online VHS or DVD movie purchase.

Push servers could also deliver movie trailers based on the user preferences, such as movies in which favorite actors appear. The user is then receiving the movies that interest him or her the most. Advertising could be tailored to highlight the latest releases and specials on movie merchandise.

Server Components


Figure 4-9 Theatre Server Architecture

Web Site

The Web site would contain information on new releases, directors, actors and background information on films. Online reviews by major movie critics could be stored on the Web site, and users could go online to learn interesting facts. Special effects, location and set information could all be available for users to download, and a movie could also provide material on characters and story lines as well as background or historical information. Character profiles could be expanded to give movie fans a better understanding of each character. These are just few possibilities for enhancing the movie channel application.

The other major online feature would be electronic commerce.

E-commerce

A big part of major movie releases is the promotion of merchandise. Blockbuster hits such as Jurassic Park and Star Wars make millions of dollars on sales of products related to the movie. Star Wars action figures, for example, could be sold on the Internet, and movies based on novels could help sell books online. Ad banners promote products and link fans to movie Web sites.

Live Interviews with Stars and Directors

Movie fans could bring up live interviews with movie actors or even directors, who could give insights into the production and shooting of the movie. Special effects artists could describe how certain special effects were created; costume designers could describe the different fashions and clothes used in the movie. Live interviews provide great opportunities for direct movie promotion.

Summary

A full-featured movie channel can add more value than just a simple Web site alone. The current versions of Microsoft’s Internet Explorer* and Netscape Navigator* add the concept of channels. Updates to a Web site can be downloaded on the user’s machine for off-line browsing. The theatre channel used Active Channels to download and keep updated the Web pages used in the movie application. The Link Resolver and Dynamic HTML was used to create a channel with richer multimedia. Movies are promoted best by delivering what makes them great in the first place—great-looking video. Anything short of full 24- or 30-FPS video degrades the user’s experience. Integrating video stored on CD or DVD along with Dynamic HTML creates a more compelling theater channel.

 

 

*Other brands and names are the property of their respective owners.

© 1997 Intel Corporation. All rights reserved.


* Legal Information © 1998 Intel Corporation