US 20020088O11A1 (19) United States (12) Patent Application Publication (10) Pub. No.: US 2002/0088011 A1 Lamkin et al. (43) Pub. Date: Jul. 4, 2002

(54) SYSTEM, METHOD AND ARTICLE OF Publication Classification MANUFACTURE FOR A COMMON CROSS PLATFORM FRAMEWORK FOR (51) Int. Cl...... H04N 7/16; G06F 9/00; DEVELOPMENT OF DVD-VIDEO CONTENT G06F 9/46 INTEGRATED WITH ROM CONTENT (52) U.S. Cl...... 725/142; 725/135; 709/328 (76) Inventors: Allan B. Lamkin, San Diego, CA (US); Todd R. Collart, Los Altos, CA (US) Correspondence Address: (57) ABSTRACT FITCH EVEN TABN AND FLANNERY 120 SOUTH LASALLE STREET A method for providing enhanced content for play acroSS SUTE 1600 multiple play platforms employs Steps of delivering media CHICAGO, IL 60603-3406 (US) content to a client device; delivering HTML content to a (21) Appl. No.: 09/898,479 client device, the HTML content being accessible and usable by a plurality of client device platforms, activating a (22) Filed: Jul. 2, 2001 browser to access the HTML content, the browser being Related U.S. Application Data located on and compatible for use with the client device; activating firmware on the client device to access the media (63) Non-provisional of provisional application No. content; and incorporating the accessed HTML content with 60/216,822, filed on Jul. 7, 2000. the accessed media content.

120 - NETWORK (135)

N 1 118 134

CO MMUNICATIONADAPTER

A38 Patent Application Publication Jul. 4, 2002. Sheet 1 of 7 US 2002/0088011 A1

Patent Application Publication Jul.• 4,T. 2002 Sheet 2 Oof 7 US 2002/0088011 A1

Content Development

ROM/ HM Content

208

Browser/Presentation Enhanced DVD Engine Experience

DVD Firmware/Navigator

Figure 2 Patent Application Publication Jul. 4, 2002. Sheet 3 of 7 US 2002/0088011 A1

insert disc

Initial No FIG. 2A

Yes

ls this a DWor is his a DVD

System player node interActual?

Launch standard Yes Launch standard playback playback Platforn Platform

specific specific launch binaries? binaries? DEFAUTHM from memory

Yes

Yes

Launch Launch interActual terActual Can we platform specific platform specific connect to the CD-DA binaries. DVD binaries, internet? Can We Can we cornect to the confect to the internet? internet?

Title found in online databse

Lanch NEXML from Wo ROM

Yes launch page designed for title Launch the from web server. updated content updated content for CD for WD Patent ApplicatiOn Publication- - 1 Jul. 4, 2002 Sheet 4 of 7 US 2002/0088011 A1

Online? & prefe Yes HTML update Yes 306

to check online? available?

Stat. TX.HTM No front web

3O8

No

Yes 312

Start TX.HTM in Common No platform directory directory exists?

31 O Yes 314 Play as normal CommonStart X.HTM directory if DVD-Video

Figure 3 Patent Application Publication Jul. 4, 2002 Sheet 5 of 7 US 2002/0088011 A1

byte 1

Figure 4 Patent Application Publication Jul. 4, 2002. Sheet 6 of 7 US 2002/0088011 A1

Figure 5 Patent ApplicatiOn Publication- - 1 Jul. 4, 2002 Sheet 7 of 7 US 2002/0088011 A1

RECORD DVD CONTENT ONO A DSC

GENERATING DVD-ROM CONTENT

PROVIDENTHE DVD-ROM CONTENT, 606 A PLURALITY OF DIRECTORIES CAPABLE OF USE WITH A PLURALTY OF PATFORMS

RECORDING TEH DVD-ROM 608 CONTENT, INCLUDING THE

DIRECTOREES, ON TO THE

RECORDING MEDIUM

DETERMINE THE 610 PLATFORM OFA

CEN DEVICE

612 CALL AN APPROPRIATE DIRECTORY FROM THE PLURALITY FROM AMONG

THE PLURALITY OF DIRECTORIES

Figure 6 US 2002/0O88011 A1 Jul. 4, 2002

SYSTEM, METHOD AND ARTICLE OF mode requires 307,200 bytes of storage, if the data is not MANUFACTURE FOR A COMMON CROSS compressed. Vector-based images are created by defining the PLATFORM FRAMEWORK FOR DEVELOPMENT end points (corners), thickness, color, pattern and curvature OF DVD-VIDEO CONTENT INTEGRATED WITH of lines and Solid objects within an image. Thus, a vector ROM CONTENT based image includes a definition that consists of a numeri 0001. This patent document claims priority to Provisional cal representation of the coordinates of the object, refer Patent Application No. 60/216,822 under 35 U.S.C. S enced to a corner of the image. 119(e). 0006 Bit-mapped images are the most prevalent type of image Storage format, and the most common bit-mapped BACKGROUND OF THE INVENTION image file formats are as follows. A file format referred to as BMP is used for Windows bit-map files in 1-, 2-, 4-, 8-, and 0002 The present invention relates to enhancement of 24-bit color depths. BMP files contain a bit-map header that multimedia content and more particularly to a System, defines the Size of the image, the number of color planes, the method and apparatus for enhancing multimedia content type of compression used (if any), and the palette used. The with Supplemental content. Windows DIB (device-independent bit-map) format is a 0.003 Multimedia computer systems have become variant of the BMP format that includes a color table increasingly popular over the last Several years due to their defining the RGB (red green blue) values of the colors used. Versatility and their interactive presentation Style. A multi Other types of bit-map formats include the TIF (tagged media computer System can be defined as a computer System image format file), the PCX (Zsoft Personal Computer having a combination of Video and audio outputs for pre Paintbrush Bitmap) file format, the GIF (graphics inter Sentation of audio-visual displayS. A modern multimedia change file) format, and the TGA (Texas Instruments computer System typically includes one or more Storage Graphic Architecture) file format. devices such as an optical drive, a CD-ROM, DVD (DVD 0007. The standard Windows format for bit-mapped Video or DVD Audio etc), Laser Disc, Video Disc or Audio images is a 256-color device-independent bit map (DIB) Disc, or a hard drive. Audio and Video data are typically with a BMP (the Windows bit-mapped file format) or Stored on one or more of these mass Storage devices. In Some Sometimes a DIB extension. The standard Windows format file formats the audio and Video are interleaved together in a single file, while in other formats the audio and Video data for vector-based images is referred to as WMF (Windows are Stored in different files, many times on different Storage meta file). media. Audio and Video data for a multimedia display may 0008 Full-motion video implies that video images shown also be Stored in Separate computer Systems that are net on the computer's Screen Simulate those of a television Set worked together. In this instance, the computer System with identical (30 frames-per-Second) frame rates, and that presenting the multimedia display would receive a portion of these images are accompanied by high-quality Stereo Sound. the necessary data from the other computer System via the A large amount of Storage is required for high-resolution network cabling. color images, not to mention a full-motion video Sequence. For example, a single frame of NTSC video at 640-by-400 0004 Multimedia computer systems have become pixel resolution with 16-bit color requires 512K of data per increasingly popular over the last Several years due to their frame. At 30 flames per second, over 15 Megabytes of data Versatility and their interactive presentation Style. A multi Storage are required for each Second of full motion video. media computer System can be defined as a computer System Due to the large amount of Storage required for full motion having a combination of Video and audio outputs for pre Video, Various types of Video compression algorithms are Sentation of audio-visual displayS. A modern multimedia used to reduce the amount of necessary Storage. Video computer System typically includes one or more Storage compression can be performed either in real-time, i.e., on the devices such as an optical drive, a CD-ROM, a hard drive, fly during video capture, or on the Stored Video file after the a Videodisc, or an audio disc, and audio and Video data are Video data has been captured and Stored on the media. In typically Stored on one or more of these mass Storage addition, different video compression methods exist for still devices. In Some file formats the audio and Video are graphic images and for full-motion video. interleaved together in a Single file, while in other formats the audio and Video data are Stored in different files, many 0009 Examples of video data compression for still times on different Storage media. Audio and Video data for graphic images are RLE (run-length encoding) and JPEG a multimedia display may also be Stored in Separate com (Joint Photographic Experts Group) compression. RLE is puter Systems that are networked together. In this instance, the standard compression method for Windows BMP and the computer System presenting the multimedia display DIB files. The RLE compression method operates by testing would receive a portion of the necessary data from the other for duplicated pixels in a Single line of the bit map and Stores computer System via the network cabling. the number of consecutive duplicate pixels rather than the 0005 Graphic images used in Windows multimedia data for the pixel itself. JPEG compression is a group of applications can be created in either of two ways, these related Standards that provide either lossless (no image being bit-mapped images and vector-based images. Bit quality degradation) or lossy (imperceptible to Severe deg mapped images comprise a plurality of picture elements radation) compression types. Although JPEG compression (pixels) and are created by assigning a color to each pixel was designed for the compression of Still images rather than inside the image boundary. Most bit-mapped color images Video, Several manufacturerS Supply JPEG compression require one byte per pixel for Storage, So large bit-mapped adapter cards for motion video applications. images create correspondingly large files. For example, a 0010. In contrast to compression algorithms for still full-screen, 256-color image in 640-by-480-pixel VGA images, most Video compression algorithms are designed to US 2002/0O88011 A1 Jul. 4, 2002 compress full motion video. Video compression algorithms over the product. Even if the product is delivered under for motion Video generally use a concept referred to as license rather than out right Sale, it has traditionally been interframe compression, which involves Storing only the difficult to prevent a customer from copying the content or differences between Successive frames in the data file. providing the content to any number of friends So that they Interframe compression begins by digitizing the entire might illegally copy the content. image of a key frame. Successive frames are compared with 0015 The now familiar compact disk preserves informa the key frame, and only the differences between the digitized tion as a Series of microscopic pits and Smooth areas, data from the key frame and from the Successive frames are oriented in concentric circular or helical tracks, on the Stored. Periodically, Such as when new Scenes are displayed, otherwise Smooth, planar Surface of an annular disk. new key frames are digitized and Stored, and Subsequent Recorded information is read from a compact disk by comparisons begin from this new reference point. It is noted directing a focused laser beam along the recorded tracks, and that interframe compression ratioS are content-dependent, detecting variations in the intensity of the laser beam along i.e., if the Video clip being compressed includes many abrupt the recorded tracks, and detecting variations in the intensity Scene transitions from one image to another, the compres of the laser beam as it encounters the microscopic pits and Sion is less efficient. Examples of Video compression which Smooth areas on the disk. The coherence and relatively short use an interframe compression technique are MPEG, DVI wavelength of laser radiation enables large Volumes of and Indeo, among others. information to be written onto very Small Spaces of a 0011 MPEG (Moving Pictures Experts Group) compres recording medium. Sion is a set of methods for compression and decompression 0016 Compact disks were first introduced in the music of full motion video images that uses the interframe com recording industry in 1982, and now account for 43% of all pression technique described above. The MPEG standard recorded music Sales. In the United States alone, over three requires that Sound be recorded simultaneously with the hundred million compact disks are Sold annually, with a Video data, and the video and audio data are interleaved in retail value of over three billion dollars, according to the a Single file to attempt to maintain the video and audio Recording Industry ASSociation of America. The most Synchronized during playback. The audio data is typically prevalent format for recording multimedia events onto Such compressed as well, and the MPEG standard specifies an disks is Digital Video or Versatile Disk (DVD). The DVD is audio compression method referred to as ADPCM (Adaptive a read only format for recording a relatively large amount of Differential Pulse Code Modulation) for audio data. high quality data. When delivered to a user, the disk is input 0012. A standard referred to as Digital Video Interactive into a CD-ROM player on a client device such as a com (DVI) format developed by Intel Corporation is a compres puter. Software on the client device allows the DVD for Sion and Storage format for full-motion video and high matted data to be read. fidelity audio data. The DVI standard uses interframe com 0017. Once the DVD disk has been manufactured the pression techniques similar to that of the MPEG standard content is essentially fixed. The content that the user can and uses ADPCM compression for audio data. The com acceSS from the disk is limited to the content provided when pression method used in DVI is referred to as RTV 2.0 (real the disk was manufactured. In order to update the informa time video), and this compression method is incorporated tion, a new disk must be created and delivered to the user. into Intel's AVK (audio/video kernel) software for its DVI This is an expensive and inconvenient Solution. product line. IBM has adopted DVI as the standard for 0018 Thus there remains a need for a system for easily displaying video for its Ultimedia product line. The DVI file and efficiently updating content provided on a DVD-disk. format is based on the Intel i750 chipset and is supported Such a system would preferably allow update information to through the Media Control Interface (MCI) for Windows. be delivered via a network Such as the Internet. In addition, Microsoft and Intel jointly announced the creation of the DV Such a System would take advantage of Software capabilities MCI (digital video media control interface) command set for already present on the client device, and would importantly Windows 3.1 in 1992. be able to function on the many different possible platforms 0013 The Microsoft Audio Video Interleaved (AVI) for of client devices, such as for example Macintosh, PC or a set mat is a special compressed file Structure format designed to top box. enable video images and Synchronized Sound Stored on 0019 Disc technologies that are re-writeable like a CD CD-ROMs to be played on PCs with standard VGA displays RW or technologies that allow multiple sessions can be used and audio adapter cards. The AVI compression method uses for adding additional or updated content directly to the disc. an interframe method, i.e., the differences between Succes Thus for multi-session discs, where the first session of the Sive frames are Stored in a manner Similar to the compres disc is write-once and additional Sessions on the disc can be Sion methods used in DVI and MPEG. The AVI format uses either write-one, or rewriteable, additional or updated con Symmetrical Software compression-decompression tech tent can be added to these additional Sessions of the disc. niques, i.e., both compression and decompression are per This includes such technologies as the “Orange Book” formed in real time. Thus AVI files can be created by specification for CD-ROM, including CD-PROM and Mul recording video images and Sound in AVI format from a timedia discS Such a Dataplay. VCR or television broadcast in real time, if enough free hard disk Space is available. 0020 Flash memory based and other similar memory technologies can be used for Storing multimedia and addi 0.014 AS discussed above, such audio and video content tional or updated content as well. This includes IBM tech is often stored on media such as CD-ROM or digital video nology that uses a USB interface to coupled a personal disc (DVD). However, once a vendor has delivered such computer to a storage device Such as a “keychain' memory content to a customer, the vendor loses any practical control device. US 2002/0O88011 A1 Jul. 4, 2002

0021. The present invention advantageously addresses of describing the general principles of the invention. The the above and other needs. scope of the invention should be determined with reference to the claims. SUMMARY OF THE INVENTION 0035 FIG. 1 illustrates a system for providing enhanced 0022. The present invention advantageously addresses DVD content for play across multiple user platforms. Both the needs above as well as other needs by providing the DVD-Video content and HTML content are recorded on enhancement of multimedia content and more particularly to DVD discs and provided to a user. The HTML content providing a System, method and apparatus for enhancing includes various directories that allow it to be accessed by multimedia content with Supplemental content. multiple platforms of user devices. Once inserted into a user 0023. In one embodiment, the invention can be charac device, browser Software on the user device accesses the terized as a method for providing enhanced content for play HTML content and Supplies Supplemental update informa acroSS multiple play platforms. The method employs Steps of tion to enhance the play experience provided by the DVD delivering media content to a client device; delivering Video content. The Supplemental update information can be HTML content to a client device, the HTML content being either retrieved via a network Such as the Internet or can be accessible and usable by a plurality of client device plat provided directly from the HTML data itself stored on the forms; activating a browser to access the HTML content, the DVD disc. browser being located on and compatible for use with the 0036). In various embodiments, the client devices may client device; activating firmware on the client device to take the form of computers, televisions, Stereos, home access the media content; and incorporating the accessed appliances, or any other types of devices. In one embodi HTML content with the accessed media content. ment, the client apparatuses and the host computer each 0024. In another embodiment, the invention can be char include a computer Such as an IBM compatible computer, acterized as a method for enhancing multimedia content. Apple Macintosh computer or UNIX based workstation. The method employs Steps of providing a recording 0037. A representative hardware environment is depicted medium; recording content onto the recording medium; in FIG. 1, which illustrates a typical hardware configuration integrating HTML content with the recorded content; of a WorkStation in accordance with a preferred embodiment accessing the recorded content and the HTML content; and having a central processing unit 110, Such as a micropro playing a multimedia event based on the accessed content. ceSSor, and a number of other units interconnected via a system bus 112. The workstation shown in FIG. 1 includes BRIEF DESCRIPTION OF THE DRAWINGS a Random Access Memory (RAM) 114, Read Only Memory (ROM) 116, an I/O adapter 118 for connecting peripheral 0.025 The above and other aspects, features and advan devices such as units 120 (i.e. DVD playback tages of the present invention will be more apparent from the device) to the bus 112, a user interface adapter 122 for following more particular description thereof, presented in connecting a keyboard 124, a mouse 126, a speaker 128, a conjunction with the following drawings wherein: 132, and/or other user interface devices Such as 0.026 FIG. 1 is a schematic diagram of a hardware a touch screen (not shown) to the bus 112, communication implementation of one embodiment of the present invention; adapter 134 for connecting the WorkStation to a communi cation network (e.g., a data processing network) and a 0.027 FIG. 2 is a schematic diagram of a system for display adapter 136 for connecting the buS 112 to a display enhancing a DVD multimedia experience; device 138. The workstation typically has resident thereon 0028 FIG. 2A is a flow chart illustrating steps traversed an operating system such as the Microsoft Windows upon insertion of a DVD disk (or other media) into a device, NT/2000 or Windows 95/98/ME Operating System (OS), such as a DVD player; the IBM OS/2 operating system, the MAC OS, or UNIX 0029 FIG. 3 is a flowchart illustrating logic for incor operating System. Those skilled in the art will appreciate that porating update information to Supplement a DVD multi the present invention may also be implemented on platforms media play experience; and operating Systems other than those mentioned. 0038 A preferred embodiment is written using JAVA, C, 0030 FIG. 4 is graphical representation of data layouts HTML and the C++ language and utilizes object oriented for bitmap layers, programming methodology. Object oriented programming 0031 FIG. 5 is a flowchart illustrating a method for (OOP) has become increasingly used to develop complex providing an enhanced multimedia experience; and applications. AS OOP moves toward the mainstream of Software design and development, various Software Solu 0032 FIG. 6 is a flowchart illustrating a method for tions require adaptation to make use of the benefits of OOP enhancing DVD content with ROM content. A need exists for these principles of OOP to be applied to a 0.033 Corresponding reference characters indicate corre messaging interface of an electronic messaging System Such sponding components throughout the Several views of the that a set of OOP classes and objects for the messaging drawings. interface can be provided. 0039. A preferred embodiment of the invention utilizes DETAILED DESCRIPTION OF THE Hypertext Markup Language (HTML) to implement docu PREFERRED EMBODIMENTS ments on the Internet together with a general-purpose Secure 0034. The following description of the presently contem communication protocol for a transport medium between the plated best mode of practicing the invention is not to be client and the Newco. HTTP or other protocols could be taken in a limiting Sense, but is made merely for the purpose readily substituted for HTML without undue experimenta US 2002/0O88011 A1 Jul. 4, 2002

tion. Information on these products is available in T. Bern a language Standpoint, Java's core feature Set is based on ers-Lee, D. Connoly, “RFC 1866: Hypertext Markup Lan C++. Sun's Java literature states that Java is basically, “C++ guage-2.0” (November 1995); and R. Fielding, H, Frystyk, with extensions from Objective C for more dynamic method T. Berners-Lee, J. Gettys and J. C. Mogul, “Hypertext resolution.” Transfer Protocol-HTTP/1.1: HTTP Working Group Inter net Draft” (May 2, 1996). HTML is a simple data format 0052 Another technology that provides similar function used to create hypertext documents that are portable from to JAVA is provided by Microsoft and ActiveX Technolo one platform to another. HTML documents are SGML gies, to give developerS and Web designers wherewithal to documents with generic Semantics that are appropriate for build dynamic content for the Internet and personal com representing information from a wide range of domains. puters. ActiveX includes tools for developing animation, HTML has been in use by the World-Wide Web global 3-D virtual reality, video and other multimedia content. The information initiative since 1990. HTML is an application of tools use Internet Standards, work on multiple platforms, and ISO Standard 8879; 1986 Information Processing Text and are being Supported by over 100 companies. The group's Office Systems; Standard Generalized Markup Language building blocks are called ActiveX Controls, Small, fast (SGML). components that enable developerS to embed parts of Soft ware in hypertext markup language (HTML) pages. ActiveX 0040. To date, Web development tools have been limited Controls work with a variety of programming languages in their ability to create dynamic Web applications which including Microsoft Visual C++, Borland Delphi, Microsoft span from client to Server and interoperate with existing Visual Basic programming System and, in the future, computing resources. Until recently, HTML has been the Microsoft's development tool for Java, code named dominant technology used in development of Web-based “Jakarta.” ActiveX Technologies also includes ActiveX solutions. However, HTML has proven to be inadequate in Server Framework, allowing developerS to create Server the following areas: applications. One of ordinary skill in the art readily recog 0041) Poor performance; nizes that ActiveX could be Substituted for JAVA without 0042. Restricted user interface capabilities; undue experimentation to practice the invention. 0053. In accordance with one embodiment, a cross-plat 0043 Can only produce static Web pages; form DVD specification defined, which is called InterActual 0044) Lack of interoperability with existing appli Technologies Cross Platform, hereafter referred to by the cations and data, and name ITX. By following the ITX Specification, DVD authors can create HTML-enhanced DVD-Video/Audio 0045 Inability to scale. content that can play reliably acroSS multiple playback 0046) Sun Microsystem's Java language solves many of platforms, ranging from computers (such as Windows and the client-side problems by: Macintosh) to Internet-connected Set-top devices (such as the Sony PlayStation II and Nuon-enhanced consumer DVD 0047 Improving performance on the client Side; players). The general requirements for enhanced DVD 0048 Enabling the creation of dynamic, real-time authoring and the requirements for the playback devices, Web applications; and both hardware and Software are described herein. 0049 Providing the ability to create a wide variety 0054) The ITX enables DVD-Video/Audio (hereafter of user interface components. referred to only as DVD-Video) content developers to create products that Seamlessly combine the Internet and/or other 0050. With Java, developers can create robust User Inter DVD-ROM capabilities with DVD-Video to create a richer, face (UI) components. Custom “widgets” (e.g., real-time more interactive, and personalized entertainment experience Stock tickers, animated icons, etc.) can be created, and for their customers. All this is accomplished without the client-side performance is improved. Unlike HTML, Java need for content developers to create special content for Supports the notion of client-side validation, offloading each unique playback platform, and without the need of appropriate processing onto the client for improved perfor becoming an expert programmer on Windows, Macintosh, mance. Dynamic, real-time Web pages can be created. Using and other platforms. Additionally the present invention the above-mentioned custom UI components, dynamic Web allows for customized content and functions tailored for pages can also be created. Specific platform(s). 0051 Sun's Java language has emerged as an industry recognized language for “programming the Internet.' Sun 0055 Internet connectivity is not a requirement for the defines Java as: “a simple, object-oriented, distributed, inter use of ITX. A stand-alone system with HTML browser preted, robust, Secure, architecture-neutral, portable, high functionality is all that is required. In addition, CD-DA performance, multithreaded, dynamic, buZZWord-compliant, (standard music CDs) can also be enhanced by use of ITX. general-purpose programming language. Java Supports pro 0056. The following terms are defined as follows: gramming for the Internet in the form of platform-indepen dent Java applets.” Java applets are Small, Specialized appli cations that comply with Sun's Java Application Programming Interface (API) allowing developers to add Term Description “interactive content to Web documents (e.g., simple ani BCA . Area near inner mations, page adornments, basic games, etc.). Applets ring on a DVD disc where custom data execute within a Java-compatible browser (e.g., Netscape can be imprinted Navigator) by copying code from the server to client. From US 2002/0O88011 A1 Jul. 4, 2002

recorded onto the DVD disc. The disc 104 is inserted into a -continued client device 208 that contains Browser/Presentation Soft ware 210 thereon. The client device hardware also includes Term Description a DVD Firmware/Navigator 212 that reads the DVD-Video ATVEF Advanced Television Enhancement Forum content. In addition, the client device 208 includes a (spec allows combining HTML and TV Browser/Presentation Engine software 110, which reads the programming) PIP Picture in Picture ROM/HTML Content. The Browser/Presentation Engine DVD-Video A disc authored in accordance with can be for example Netscape Navigator or Some other the DVD-Video specification. Any engine commonly available on personal computers. After place where the term DVD-Video is reading the ROM/HTML content, the browser software 110 used it also applies to DVD-Audio, Searches the Internet to find Supplemental information unless specifically excluded. UOP User Operations (as defined DVD-Video related to the DVD content and incorporates the Supplemen and DVD-Audio specifications) tal information into the DVD content 202, 206 to create an Internet Enhanced DVD Experience 214. 0064. To better understand the purpose and goals of ITX 0057 The following documents are incorporated by ref three possible usage Scenarios are described, each with an CCCC. increasing level of complexity. 0065 DVD-Video disc with movie script provided: HTML Cross Platform Authoring Guidelines 0066. A movie is authored with the entire screenplay ISO-966O provided on the DVD disc in HTML format. Clicking on any ATVEF Specification (http://www.atvef.com) scene visually represented in the HTML immediately links DVD-Video (Book 3) and DVD-Audio (Book 4) the user to that scene within the DVD-Video. Besides being specifications a finer granularity than the normal chapter navigation pro vided on DVD-Video, the HTML-based script could contain 0.058. The ITX specification provides a common frame other media (pictures, audio) and/or live web links for other work whereby content developers, browser providers, and information (stored either on the DVD disk, or accessible hardware manufacturers can Successfully create and play through the Internet). Further, the text of the screenplay in HTML could automatically “scroll” with the DVD-Video to back Internet-enhanced DVD and CD products. give the appearance of being Synchronized with the DVD 0059. This description of the embodiments is divided into Video. Although many of these types of features (minus live three major Sections, targeting three different audiences: web links and Synchronized Scrolling) could be authored in 0060 Content Development Requirements: DVD-Video, HTML authoring is much more efficient, Addresses issues specific to DVD authors and con immediate and widely known. tent creators. The target audience includes DVD 0067 More complex menus: authoring facilities, web designers, and graphics and creative production facilities. This Section outlines 0068 A DVD-Video is shipped with a simple HTML the integration of DVD-Video with Web Pages, page that does little except Start a movie. However, the Programming Interfacing, and other cross-platform HTML page also uses the Internet and checks to see if that DVD-Video and DVD-ROM authoring consider movie has any web site updates. If it does, then the HTML ations. page launches a new movie menu that is downloaded from the Web. This new menu might have e-commerce opportu 0061 Browser Requirements: Addresses issues spe nities (buy gifts based on the movie; buy tickets for the cific to browser implementation. The target audience sequel to the DVD, etc.). Because the new movie menu is includes establishments such as: PlanetWeb, Spy not on the DVD-Video, but rather is on a server accessible glass, Liberate, and VM Labs (with a custom imple via the internet, the window of time during which the mentation of the Spyglass browser). This section choices on the new movie menu is available can be decided outlines basic browser requirements to Support ITX by the studio long after the DVD-Video has shipped. The titles and integration of a DVD-Video programming new movie menu may have new links to an actors web site, interface. which can be particularly advantageous if, for example, the 0062 Platform/Hardware Requirements: Addresses actor has become a Star Since the movie was made, and issues specific to DVD-Video hardware platforms. therefore wasn’t given star treatment in the original DVD The target audience includes Specialized chip manu Video. The new movie menu may just be a more convenient facturers, consumer DVD-Video player, game SyS way to navigate the disc to a finer granularity than the tem manufacturers (Sony PlayStation, Nintendo, chapters provided. Advantageously, in accordance with the Sega), and any others who might incorporate web present embodiment, the DVD can have new movie menus connectivity into DVD player products. This section Stored on a Server accessible through the internet, and that outlines display requirements, browser interfaces, can be changed over time. If the DVD-Video is played and other hardware-Specific requirements. without ITX, the DVD-Video operates in a conventional C. 0063. With reference to FIG. 2, in an embodiment, a system 200 is provided for enhancing an internet play 0069 Live webcast with the director or stars in live chat: experience. ROM/HTIM content 202 is recorded onto a 0070 A DVD-Video movie is shipped with an HTML DVD disc 204. Additionally DVD-Video content 206 is also page that links the user to an ITX web site. This site (and US 2002/0O88011 A1 Jul. 4, 2002

Studio advertising) notifies the user of the date/time of a the media is a DVD disk or Some form of CD disk. For “live chat” with, for example, the movie's director, who will CD-DA, there may or may not be a file structure formatted discuss the making of the movie. Near the event starting on the CD-DA disk, Such as described herein and therefore time, the user connects to the web site with the DVD-Video the CD-DA disk table of contents must be read per the in his/her DVD player. At the start time, the director begins “red-book' specification. Sending voice (Such as Streaming audio, e.g., Real Audio) over the Internet. The director controls the DVD player of 0075) An ITX-compatible DVD or CD is detected by the user, as well as other DVD players, by Sending play, checking for the existence of a file named index.htm in a pause, fast-forward, and rewind commands, etc. (Latecom directory named common. The ITX-API version informa ers are automatically Synchronized). User (if they have, for tion can be found in a mediated area in the index.htm file, example, a browser with a keyboard) can enter questions. which is an HTML file. The director can choose which questions to answer and 0076. The index.htm file provides JavaScript that detects control every DVD player to an appropriate Scene in the the particular type of device into which the DVD disk has movie and discuss the Scene. Through the use of bitmap been inserted, and the device is “navigator,” and provides overlay layerS and drawing tools, the director can pause the general framework for interactive playback. For a disk not video and draw on the screen (like a football play) to better authored in accordance with the ITX content, a content explain the details involved in creating a certain Scene, for homepage is employed, i.e., file named default.htm is example. AS the director moves from one question to another employed. The default.htm file may be stored in memory on the Video can use transitions and Special effects to make the the device. presentation more professional and entertaining. CONTENT DEVELOPMENT REQUIREMENTS 0071. In order to support the above-described function ality, the present embodiment is as follows. An ITX disk can 0077. This section describes the requirements for content contain DVD Video and ITX-compatible ROM data, DVD developers, DVD authors, and creative houses. This section Audio and ITX-compatible ROM data, CD-Audio and ITX outlines how DVD-Video can be integrated with ROM compatible ROM data, or the like. The ITX compatible content for playback acroSS multiple hardware platforms and ROM data can be any digital file type including HTML and multiple browsers. For more information regarding croSS graphics, including for example, HTML graphics, Subject to platform HTML development (independent of integration file system limitations described below. There is no theo with DVD-Video), refer to the InterActualTM HTML Cross retical limit to the amount of ITX compatible ROM data that Platform Authoring Guidelines document. This reference can be placed on a DVD disk, except for physical constraints document outlines platform/browser detection, use of Java of the DVD disk (or in an alternative embodiment CD-disk). Script files (.js files) and other HTML authoring techniques. 0.072 An ITX-compatible disk adheres to rules regarding 0078 DVD/ROM Authoring Considerations: capability, detection, file System, directory Structure, and 0079 ITX Directory and File Naming Conventions content location, each of which is described in further detail (mandatory compliance) When making an ITX disk, DVD herein. AS multi-platform Support is a goal of the present Video Zone files must be placed physically at the beginning embodiment, an ITX disk provides for both platform-spe of the ITX disk, contiguously, in the order specified by the cific behavior and general-purpose behavior. Platform-spe DVD-Video specification, likewise, DVD-Audio Zone files cific behavior can be accomplished using the ITX-API must follow the DVD-Video files in contiguous order. described above, by either placing platform-specific binaries on the DVD disk in predefined directories, described herein, 0080. The DVD specifications for DVD-Video and or by authoring general purpose HTML content that uses, for DVD-Audio require that each disc contain Specific directo example, ECMAScript or JavaScript and the ITX API to ries and files. For example, the DVD-Video files are con detect Specific platforms and to "serve' web pages Specifi tained in a directory (or folder) with the name VIDEO TS; cally designed for a particular platform, i.e., particular type DVD-Audio files in the AUDIOTS directory. The of device. General purpose content can be created for VIDEO TS and AUDIOTS directories should be the first playback on multiple platforms using HTML content and the entries in the directory descriptor (the true order of the ITX API. Both approaches can be combined so that plat directory and file entries is usually hidden, Since most form-specific behavior can be employed with certain operating Systems list them in, for example, alphabetical devices, while other devices, Such as devices developed after order). There is no such requirement for “DVD-ROM" release of the DVD disk, can be supported with general content, and, thus, developerS can arrange other files on a purpose behavior. disc in any desired manner. It is best to place ROM-Zone files in Subdirectories versus the root directory. The place 0.073 For personal computers, such as personal comput ment of files on a dual-layered disk (DVD-9, DVD-14, or ers operating under Microsoft Windows, ITX content can be DVD-18) is generally independent of layer details. DVD viewed through a proprietary browser client per the ITX Video and DVD-Audio files must begin on layer Zero. content viewed through the proprietary browser client can be ROM-Zone files are beginning after the DVD-Video (or the same content that is displayed on, for example, a DVD-Audio) files and can cross layer boundaries, if needed. browser-enhanced consumer electronics System, Such as a In order to prevent problems that can arise from this open Set top box, a game console, or an internet-connected DVD aspect of the Specifications, ITX provides a convention for player or the like. ordering and naming files. 0.074 The device must provide a capability to determine 0081 Files stored for use with ITX can be in any DVD the type of media that has been inserted into the device. disc directory. However, there must be a method that allows Specifically, the device must be able to determine whether the platform-specific browser and/or playback engine to US 2002/0O88011 A1 Jul. 4, 2002 identify the initial starting HTML file in the case were there 0090 Note that any new platform directory names should is no executable file. Also, in order to Simplify Support, it is be reserved and assigned before use. However, each plat Strongly Suggested that the full convention described below form developer can control the directory Structure under its be followed on all ITX-authored discs. reserved top-level directory name. For example, Sony could 0082 ITX Naming Standard: create a PS2 and PS3 directory under the SONY directory. 0.083 Each DVD-Video authoring system and tool set 0091. This directory structure allows for proprietary supports different naming capabilities; such as ISO-9660, executable binary files for each platform. For example, a ISO-96.60 with Joliet extensions, Macintosh file names, current PCFriendly DVD (i.e., a DVD in accordance with Support for Macintosh resources, hybrid discs, etc. Some the present embodiment) can utilize the directory structure authoring tools go even further by forcing a certain character by placing the Windows version of Software in a WIN case (e.g., the Toshiba authoring System forces all characters directory, and a Macintosh version of software in a MAC to uppercase). These issues must be taken into account as directory. Upon insertion of the disc, the platform will part of the development process Since Some playback plat initiate execution of the appropriate binaries (based on Some forms may operate differently depending on the physical platform-specific autorun feature) and then the binaries will layout and file Structure on the DVD. As a specific example, load the ITXHTM file. Windows and Macintosh operating Systems are case insen 0092. The set-top player browser shall locate its starting Sitive, whereas Unix and Linux operating Systems are case file via the following logic: Sensitive. 0093 Check for online updates enabled and online 0084. For ITX compliance, the following naming stan dard must be followed: 0094) If OK, then check web for update and use, if found 0085 UDF 1.02 and ECMA 167 (second edition) 0095 Else check for its platform-specific directory. 0086) Support for hybrid Windows/Macintosh discs (whereby resource forks for the Macintosh operating 0096. If the platform-specific directory exists and System are preserved) the ITX.HTM file is found, then start; 0.087 All files and directories must be developed with 0097 Else if the COMMON ROM directory exists case Sensitivity in mind. The recommended approach is to and the ITX.HTM file is found, then start; use only capital letters for all directories, file names, and HTML references. To be safe, only use A-Z, 0-9 and the 0.098 Else the disc is not an ITX disc and it should underScore. The initial HTML file shall have a name of be played as a DVD-Video disc. ITXHTM. 0099] The above-described structure allows for device Specific executable binary file for each type of device 0088) ITX Directories: supported by a particular DVD disk. The platform-specific 0089. The ITX.HTM file must be located in a directory directory Structure and its associated Set of binaries enable that follows these rules. Other files, based on individual any platform to run executables Specifically designed for any authoring needs may be located in any directory following device provided that Such executables are available on the any convention. There may be more than one ITX.HTM file. particular DVD disk being utilized. This capability, in For example, there could be a different one for each platform essence, allows the device Specific binaries to override Supported, or just one primary one and one alternate for a general purpose ITX content or override a Standard browser Single platform that requires special operations. mechanism. While the actual ROM content may reside in a device Specific directory, it is recommended that all content reside in the common directory when possible. The common directory can Support any number of Subdirectories, includ Directory Naming Conventions ing device Specific Subdirectories. Directory name Platform 0100. The common directory stores, in most cases, the COMMON All (default) actual ITX content (versus platform specific binaries). It is LINUX linux operating recommended that all ITX content (even platform specific system MAC Macintosh ITX content reside in the common directory as this provides NINTENDO Nintendo Dolphin an intuitive content development approach. By maintaining SONY Playstation II and a single content directory, Java Script can easily be used to CE detect platforms and render appropriate HTML players NUON WMLabs WIN Windows pages tailored to Specific devices. SEGA Sega Dreamcast TOSHIBA Toshiba 0101 There may be cases where device specific binaries WIN Windows may be included on the DVD disk, but still the general ZORAN Zoran purpose content. For example, an ITX disk can utilize the To be determined all other ITX directory structure by placing a Windows version of soft directory names must be registered to ware in the WIN directory, and the Macintosh version of the insure no conflicts. Software in the MAC directory. Upon insertion of the ITX disk, the platform will initiate execution of the appropriate binaries (based on a device specific feature, Such as autorun) US 2002/0O88011 A1 Jul. 4, 2002

and then the binaries will load the index.htm file located in connection to an on-line database can be attempted, So that the common directory, the Starting point for any general the database can be interrogated to determine whether a purpose ITX disk. server containing content associated with the DVD disk is 0102) The starting or entry point is the index.htm file, available. If Such content is available, an interactive expe with which resides in the top level of the common directory. rience similar to that available on ITX disk can be offered to It is recommended that all ITX content (with the exception the user of the device. When the device is in “play” mode, of device-specific binaries) be stored in the common direc then ITX disk can display an icon, to signify that ITX tory. Java Script can then be used to detect platforms and content is available from the DVD disks ROM area. If the render appropriate HTML pages tailored to Specific plat user Selects the icon, a content home page is displayed, i.e., forms. The index.htm file will be the background “con default.htm, so that the user can Switch to ITX mode. tainer web page while Standard playback occurs. This page 0109). With reference to FIG.3, a process 300 for obtain enables JavaScript event handlers to be loaded and activate ing update information is described. The process 300 begins to handle events during playback. The meta-data of the with a decision step 302 wherein a determination is made as index.htm file contains the ITX-API version information. to whether the user is online and whether the user prefers to 0103) Referring to FIG. 2A, a flow chart is shown of check for updates online. If the answer to decision step 302 Steps traversed upon the coupling of a Storage medium with, is no, then in another decision Step 304 a determination is e.g., insertion of a DVD disk into, a device, e.g., a personal made as to whether HTML update information is available. computer, a consumer electronicS device, a game console, or If such information is available then in an operation 306, the the like. Steps traversed upon insertion of the DVD disk into ITX.HTM is started from the web and the update informa the device are divided into phases as follows. During the first tion is retrieved. If the answer to question 302 or both phase, a disk detection algorithm determines if the disk has questions 302 and 304 are no, then in yet another decision content in accordance with the present embodiment, i.e., step 308 a determination is made whether a platform direc whether the disk is an ITX disk, i.e., whether the disk tory exists, the platform directory applicable to the platform contains ITX content. This determination is made by exam of the user device. If an appropriate platform directory does ining whether a file named index.htm is located in a “com exist, then in an operation 310, ITX.HTM is started in the mon” directory on the DVD disk. platform directory. If an appropriate platform directory does not exist, then in a decision Step 312 a determination is made 0104. If the index.htm file exists, then the DVD disk is an as to whether a common directory exists which can be used ITX disk. Otherwise, the DVD disk is determined not to be with the platform of the user device. If such a common an ITX disk. During a second phase, a determination is made directory does exist, then ITX.HTM is started in that direc as to whether the DVD disk is a DVD-Video or a DVD tory. If Such a common platform directory does not exist, Audio, or whether a disk of another type has been inserted, then in a step 316 the DVD is played a normal video without Such as a CD-DA. Logic for performing the Second phase is Internet enhancement. included, generally, in the device, and this is not discussed in detail further herein. (Such logic is known.) 0110. It is recommended that each player have a user setup that allows the ITX functionality to be overridden, 0105. During a third phase, a determination is made as to Such as: a default playback mode of the device. This is determined by reading a "player mode” from the property, e.g., InterActu 0111 Check for ITX and start as ITX if found al. PlayerMode. If the device is configured for “play” mode, (default Setting) ITX content, e.g., HTML content, is bypassed, whereas if the device is configured for ITX mode, then the ITX content 0112 Check for ITX and give the user a menu is launched beginning with the index.htm file in the common choice of ITX or Standard directory. The ITX content itself can then be updated 0113 Show the ITX icon on the screen for several dynamically if the device is connected to the Internet, or an seconds when ITX is found (include a remote control equivalent network. There is no Internet connection, or function that restarts discs in ITX mode equivalent connection, the device renderS ITX content from a ROM portion of the DVD disk. 0114. Play all discs as DVD-Video, ignoring ITX 0106 For non-ITX disks, when the device is configured 0115) ITX Programming Interface (mandatory compli for ITX mode, a default content home page (called ance): default.htm) is displayed and an Internet connection, or equivalent, is attempted to provide potential ITX content for 0116. This section describes the ITX application pro the non-ITX disk. gramming interface (API) for controlling and Scripting ITX 0107 During a fourth phase, platform specific file detec enhanced discs. The API is divided into five sections: tion occurs, and a determination is made as to whether there 0117 Embedding. Syntax for embedding DVD are platform specific binary files on the DVD disk for the Video within a web page. This Section also addresses device. This is accomplished by Searching for a predefined displaying video full Screen and in a window. directory, as described above, associated with the device. 0118 Commands. Commands control the playback 0108. During a fifth phase, a determination is made as to and search mechanisms of a DVD-Video disc. whether a connection to the internet or Similar network, can be made. This step is performed for ITX disks in order to 0119 Properties. Properties are used to query determine whether updated content is available from a attributes of the DVD-Video and set certain configu server. Additionally, for DVD disks without ITX content, a ration properties. US 2002/0O88011 A1 Jul. 4, 2002

0120 Events. Events are used to trigger notification 0132 All commands Support return values as shown of various playback conditions, Such as time above. changes, title changes and UOP changes. Events are 0.133 See notes at the end of the table and for a essential for Scripting and Synchronizing the Video description of the optional time and FX parameters with other assets. designated by . 0121 Embedding: 0134) Items in Square brackets are optional. 0122) This section describes how to embed DVD-Video within an HTML page and control its layout. 0123 Computer operating systems shall embed DVD Video using currently available embedding techniques. ITX Command Summary Examples for each of the major computer operating Systems DVD CD Suppo is are provided below: Play rt ITX Commands Description e DA Level Range Open(filenam Opens specified Both Y Base e type) file name. Examples for embedding DVD-Video in HTML See note 1. Play(II) Start playback of Both Base Operating he DVD. System Example Pause(II) Pause playback of Both Base he DVD Windows (Pause Off) Apple/Macintosh

the most frequently used capability will be bpp 0166 As described in the next section, some commands values of 1 or 2 to be used for image markup, like a may be modified with time parameters and Special effects or chalkboard with 1 to 4 colors. Bpp values of 15, 16, transitions. Of particular note to the bitmap layer commands 24 and 32 allow images to be used on a layer. are the ChangePalette() and VectorDraw() commands. A 0157) Errors and Warnings VectorDraw() command with a time duration simply draws 0158 All commands shall return one of the following a line incrementally. However, the ChangePalette() com error codes mand with a time duration should be implemented Such that there are three complete palettes, the original, the final and the current palette. At each time increment every palette table entry is interpolated towards its final value. The Error and Warning Summary ShowLayer( ) and HideLayer( ) commands may have a number name description commands timed Special effect applied to them Such as a wipe or fade. O OK Successful all 0.167 Transitions, Special Effects and Timing: 1. General Other or Unknown error all Error condition 1. FileNot File not found Open, 0168 Similar to how an author might use transitions and Found DisplayImage Special effects during video editing, ITX allows a Subset of 2 NotSupp File type or feature not these types of capabilities, depending on the unique capa orted supported 3 NoDisc Attempt to play with no Play, + others? bilities of each playback System. If a System cannot produce disc the effect due to hardware or Software limitations then it 4 BadPara Parameter Out of range many should gracefully degrade to Some emulation or simply 5 Paramer Parameter Out of range many produce no effect at all, but concluding at the Same logical O for current disc or end point. current condition 6 NoMem Not enough memory for CreateLayer, operation DisplayImage 0169 Transitions can be used, for example, when Switch 7 QueueFu Command queue is full Time delayed ing from one Scene to another with a time Search or chapter 11 command Search. If no effect is specified, then the playback System 8 OueueFa Timed command error Time delayed il (such as Overlapping command would normally produce a Standard cut or possibly insert command) black frames between the Scenes. However, if a wipe left is 9 QueueWa Timed command accepted, Time delayed Specified, then the final Still frame of Scene 1 is shown and but action may be command scene 2 wipes in from the left at the specified rate. (No emulated attempt is made to provide a moving image for both Scenes Simultaneously.) 0159. Layers and pixel formats: 0170 The following table details the optional parameters 0160. With reference to FIG. 4, a data layout 400 for a and their ranges: layer with 2 bpp, resolution is depicted. Also depicted is a data layout 402 for a layer with a 4 bpp resolution. The pixel formats for data in a layer may be stored (internally) in any format. The diagrams on the next page illustrate how it Optional Parameter format for timed commands might work in one implementation. The data in the LUT and special effects (lookup table) is provided as a color palette by CreateLayer( Description range ) or ChangePalette(). Each entry in the palette is a 32-bit XXX(?tl,t2.fxp) Command XXX with optional integer as follows: see command list parameters as follows: in 2.1.2.2 where t1: time 1 (0 or relative t1: O-2 0161 byte 0: blue (least significant byte) * is replaced by start time) t1,t2.fx.p t2: time 2 (duration (if t2: O-231 0162 byte 1: green t1=0) or relative end time) fx: special effect number fx: 0-999 0163 byte 2: red p: extra parameter based on p: 32-bit fx value 0164 byte 3: alpha based on X There are two basic modes: all 0.165 An alpha value of 0 indicates a transparent color 1. If t1=0, then t2 is the unsigned (i.e. the Video shows through) and 255 is a Solid opaque command duration. 32-bit color (i.e. no video shows through). The first entry in every 2. If t1>0, then t1=starting integers relative time and t2=ending color palette should consist of 4 bytes of Zero, a clear color. relative time. The default color value, c, in CreateLayer() should normally t1 and t2 are unsigned 32 be Zero to initialize the layer to a clear color. Special visual bit integers in effects can be created by use of other values, Such as milliseconds. initializing a layer to red, then erasing it off with a Series of The possible choices for the variable numbers of drawing commands and/or by changing alpha values, in the parameters are: color palette, etc. Layers and data on them are not affected t1 (not allowed) by Video transitions and Special effects having to do with Video playback. US 2002/0O88011 A1 Jul. 4, 2002

-continued -continued Optional Parameter format for timed commands List of Transitions and Special Effects and special effects ale description parameters Description range revealing new scene 5 slide new scene slides on, LRTB covering old scene 6 push new scene pushes old scene LRTB Notes: off 1. Immediate Execution 7 peal old scene is peeled off LFTB To cause a timed command or special effect to start immediately, the t1 (like a wipe, but 3D) parameter must be set to Zero (or to a value less than the current relative 8 corner wipe from a corner ULURLLLR time). The t2 parameter contains the duration of the command (when t1 = wipe O). If t1 is greater than Zero, but less than the current relative time then 9 corner reveal from a corner ULURLLLR the duration is equal to t2-t1. A negative duration is treated as the shortest reveal possible time for that operation. 10 corner slide from a corner ULURLLLR 2. Delayed Execution slide To cause a command to be queued for later execution, the t1 parameter 11 corner peel from a corner ULURLLLR must be set to a non-zero value greater than the current relative time. To peal accomplish this the current relative time can be queried via the GetRel 12 random random boxes poke holes in box size in Time property. Alternatively, the relative time can be set using the SetRel boxes old scene revealing new pixels Time command. Once a command has been queued, the player shall con SCCC vert the relative time to an absolute time for its scheduled execution and 13 blinds horiz or vert blinds wipe blind size in cannot be changed. (However, the command queue can be flushed.) off revealing new scene pixels 3. SpecialFX. 14 reserved for other Any immediate or delayed execution command can have a special effect transitions or transition (with optioannl parameter) added to modify its operation. All 99 special effects and transitions must be accepted by all players but may be 100 none standard video and audio Ole emulated or ignored if the effect cannot be performed. The same is true of 101 YUV adjustments are made to luma byte 0: V the timed nature of various commands-if a player has a fixed duration for and chroma byte 1: U executing a particular command, then the requested duration is ignored. byte 2: Y 4. Command Macros byte 3: Macros of commands can be created by using the SetRelTime and then reserved O issuing various commands based with offsets from that time. (signed byte 5. Command queue adjustments) The player must support a command queue with a depth of at least two items (eight is recommended; PC/Mac: 64 is recommended). That is, two 102 snow snow is added to the display O = none items are pending execution at a later time while further commands con 255 = maximum tinue to execute. 103 ripple video is played like O = none If a command is accepted for the queue, then it must be executed (unless underwater 255 = maximum flushed or some other operation negates or overrides its action). Times 104 reserved stored in the queue should be in an absolute machine time (not relative time and not DVD playback time) so that subsequent changes to the rela 999 tive time do not affect commands already queued. 1OOO assignable for specific 6. Conflicting commands and system effects Because it is possible to schedule commands that have overlapping times, up these must be checked prior to acceptance for the queue. Non-conflicting, overlapping operation can be accepted. Conflicting overlapping operations Notes: may be accepted also if the operations can still be logically completed. LRTB: 1 = left, 2 = right, 3 = top, 4 = bottom Conflicting Overlapping operations that are accepted shall return a warning ULURLLLR: 1 = upper left, 2 = upper right, 3 = lower left, 4 = lower code. right An example of a conflicting operation would be to schedule a chapter All transitions and/or effects do not make sense with each command. The advance with a 5 second fade in and a second chapter advance after only guiding philosophy should be to implement only those that make sense. 2 seconds. Robust internally interlocks must be used if there is any chance The following table is the recommended set features for the most of an erroneous program to lock up a machine due to the use of timed or advanced playback systems with Y being the most basic to Y, the most delayed execution commands. A fallback to basic sequential operation is advanced. Suggested. 0172 0171 Exemplary transitions and special effects according to an embodiment of the invention include the following. Recommended Commands and Special Effects Matchups time List of Transitions and Special Effects delayed time effect/tr ITX Command (queued) duration ansition ale description parameters ChangePalette Y, Y O none standard cut, no effect Ole (b.p.) 1 dissol old scene dissolves away, Ole ChapterPlay (t Y, Y, Y, we new scene appears c.) 2 fade old fades to color, new color: 32-bit DisplayImage ( Y, Y. Y. scene fades in ARGB f, b, a.) 3 wipe old scene is wiped off LRTB FastForward (I Y, Y, Y, revealing new scene x, *) 4 reveal old scene is pulled off, LRTB FullScreen (w Y, Y. US 2002/0O88011 A1 Jul. 4, 2002 16

be used to coordinate advertising messages in HTML while -continued the video is playing: when James Bond is driving his BMW, an appropriate web page (BMW or auto Sales site) can Recommended Commands and Special Effects Matchups automatically be displayed at the same time. time delayed time effect/tr 0.175. The value of events is that these external media do ITX Command (queued) duration ansition NOT have to be embedded or even be known at the time the DVD-Video is authored. This flexibility keeps DVD-Video *I) authoring on Schedule and greatly minimizes the authoring GotoBookMark( Y, x, *) costs while adding valuable and unique features to each disc. GotoMenuID (x Y, Y, Y, *I) 0176) Events can be used by the calling application HiddenGroupPl Y, (HTML, C++, or other) to receive notification of DVD ay (g, ) playback Status. If a platform does not Support an event, then Hidden TimePla Y, an error code must be returned when its use is attempted. y (h.m.s.) HiddenTrack.pl Y, Supported events are: ay (g,t) HideLayer (b. Y, Y. Y. *I) Menu (x,) Y, Y, Y, ITX Events Summary NetConnect (u Y, *II) CD NextChapter (I Y, Y, Y, Support *I) TX Events Description DA Level Range NextDisplay (I Y, Y, Y, *I) TitleEvent (t) Called when title Base 1-99 Pan (x,y) Y, Y, changes. Returns the Pause (II) Y, Y, Y, new title number in t. Play (II) Y, Y, Y, ChapterEvent (c) Called when chapter Base 1-99 PrevChapter (I Y, Y, Y, changes. Returns the *I) new chapter number in PrevDisplay (I Y, Y, Y, C. *I) TitleGroupEven Called when title Base 1-tbd Resume (II) Y, Y, Y, t(g) group changes. Returns Rewind (x, Y, Y, Y, the new title group I) number in g. SaveBookMark ( Y, TrackEvent (t) Called when the track Y Base 1-tbd x *) changes. Returns the SetMixVolume ( Y, new track number in t. x, *) TimeEvent (e.t) Called on time change. Base e: 1 SetVectorDraw Y, Returns elapsed time 231 (b,c,w,1) in e and total time in t: 1 ShowControls ( Y, Y. Y. t. Both in 231 X.y.) milliseconds. (-224 ShowLayer (b., Y, Y. Y. is *I) pract Slow (x,) Y, Y, Y, ical SlowReverse (x Y, Y, Y, limit *I) DisplayChange ( Called when Base tbd Step (In,*) Y, X) slide/display list StillOff (II) Y, changes. Returns slide Stop (II) Y, Y, Y, number in X. TimePlay (h.m, Y, Y, Y, AngleEvent (x) Called on angle Base 1-9 s.f, *) change. Returns new TitleGroupPla Y, angle number in X. y (g,*) StateEvent (x) Called when play state Base 0-6 TitlePlay (t, Y, Y, Y, changes (i.e., play to *I) pause). Returns state TrackPlay (g,t Y, in X. *I) See CurrentState VectorDraw (x, Y, Y. property for values. y,b, *) SpeedEvent (x) Called when speed Base 1-32 VectorMove (x, Y, Y. changes (i.e., play to y,b, *) scanning). Returns new VideoBlending Y, Y, speed in X. (a,c,*) UOPSEvent (n) Called when any UOP Base 32 Zoom (x,y) Y, Y, changes. Returns UOPs 16 array in n. bit value S 0173 ITX Events Domain Event (x) Called when domain Base 0.174 Events are integral to synchronizing DVD-Video changes. Returns domain in X. with other media. With these events, web pages can be Menu Event (x) Called when menu ID Adv Synchronized with the audio or Video. For example, each changes. Returns the ChapterEvent (start of new chapter) can change an HTML ID of the new menu in Storyboard that corresponds to the movie. Time events can US 2002/0O88011 A1 Jul. 4, 2002 17

0179 The following properties are supported: -continued ITX Events Summary ITX Properties Summary CD Support CD Support TX Events Description DA Level Range ITX Property Description DA Level Range X. CurrentElapsed Elapsed time of Y Base O-231 Menujutton Even Called when user Adv 1-32 Time current title (in t (x) clicks a button on a milliseconds) menu. Returns the ID CurrentTotalTi Total time of current Base O-231 of the button selected le title (in in X. milliseconds) MouseBvent (b.x, Called when the user Adv CurrentTitle Currently playing Base O-99 y) clicks either the left title or right mouse button. 720 CurrentTitleGr Currently playing Base O-99 Returns mouse button Oup title group in b, X coordinate in CurrentChapter Currently playing Base O-99 X, and y coordinate in 576 chapter y. CurrentTrack Currently playing Y Base O-99 AudioEvent (x) Called when user Y Base 1-tbd track changes audio track. CurrentDisplay Currently playing Base O-99 Returns audio number display list item Li X. CurrentState Current play state Y Base 0-6 SubpictureEven Called when user Base 1-32 (0=None, 1=Scanning, t (x) changes subpicture 2=Stop, 3=Pause, track. Returns 4=Play, 5=Slow Play, subpicture number in 6=Menu) X. Current Domain Current domain Base bd AngleEvent (c.m.) Called when user Base c: 1 CurrentAudio Current audio track Y Base O-99 changes video angle. 9 CurrentSubpict Current sub picture Base -31 Returns current angle m: 1 e track number in c and total 9 Current Angle Current video angle Base 1-9 number of angles in m CurrentMenuLan Current menu language Base 1-8 Base 1-tbd S. Menu LanguageEv Called when user NumAudio Number of audio Base 1-8 ent (x) changes menu language. languages/tracks Returns menu language currently available number in X. NumSubpicture Number of subpictures Base 0-31 TextLanguageEv Called when user Base 1-tbd currently available ent (x) changes text language. NumAngles Number of angles Base 1-9 Returns text language currently available number in X. NumMenu Lang Number of menu Base 1-8 VideoErroreven Called when an error Base tbd languages available t (n) occurs. Returns error GetAudioLangua Returns audio language Base O-99 number in n. ge (x) (and extensions) for ParentalEvent ( Called when parental Adv p: 1-8 Specified audio number p,c) control changes. c: thc X. Returned audio Returns level in p and language is the 2 country in c. digit locale. GetSubpictureL Returns subpiucture Base O-99 KaraokeEvent (b) Called when karaoke Adv 0 anguage language (and event changes. Returns (x) extensions) for 1 if karaoke track has specified subpicture begun playing, 0 if number x. Returned just finished. Subpicture language is EjectEvent () Called when disc is Y Base he 2-digit locale. ejected from device. GetMenuLanguag Returns menu for Base O-99 No return value. e(x) Specified menu number InsertEvent () Called when disc is Y Base X. Returned menu inserted into device. anguage is the 2 No return value. digit locale. Supported Featu Returns feature bits Y Base 32 CS corresponding to bit capabilities of mask 0177 ITX Properties current system (Must be available before 0.178 Properties can be used to find information about he navigator is in he play state). commonly used variables, Such as time, title and chapter. All See section 4.1 and properties must be Supported even if the advanced feature 4.2 for details. itself is not Supported. Non-Supported features may return a Version Returns version of Y Base Two platform. This field 16 reasonable default value (for example if the Zoom feature is can also be used to bit not Supported the Zoom properties should always return determine parsing of integ 10000.) If a feature is not supportable and there is no certain components in CS reasonable value, then a -1 should be returned. US 2002/0O88011 A1 Jul. 4, 2002

-continued -continued ITX Properties Summary ITX Properties Summary CD Support CD Support ITX Property Description DA Level Range ITX Property Description DA Level Range the Supported Features CurrentCmdOueu Current number of Y Base O-255 property. Returns e empty slots in the major version and command queue minor version unique GetDiscType Gets the current disc Y Base O-216 to each playback type and sub-type. low 8 system. types: bits CurrentzoomX Current Zoom X value Base Unsig O = drive empty or is an ned unknown state integ 16 1 = DVD e bit 2 = CD audio type: CurrentzoomY Current Zoom Y value Base Unsig 3 = other high ned 4-255 = reserved 8 16 sub-types for DVD (bit bits bit fields): ae CurrentPanx Current Pan X value Base Unsig O = DVD-Video bit ned 1 = DVD-Audio field 16 2 = DVD-ROM material S bit present CurrentPanY Current Pan Y value Base Unsig 3 = PCFriendly ned 4 = TX 16 5-7 = reserved bit See section 2.1.2.4.1 CurrentMenuID Current ID associated Base O-99 for details with currently QueryNet Gets Internet Y Base O-9 selected menu connection status NumLayers Number of overlay Y Base O = not available, layers currently ewer possible (based on 1 = not currently memory available at avail resolution 1, bpp=1) 2 = available, not See note 8. online MaxLayers Maximum number of Y Base 3 = online, speed simultaneous overlay unknown layers supported 4 = up to 28.8K See note 8. 5 = up to 56K MaxAlpha Maximum number of Y Base 16, 6 = up to 128K alpha blending steps 32, 7 = up to 1.5M supported. (i.e. DVD 64, 8 = up to 10M subpictures requires 128, 9 = >1OM 16 levels but hardware 256 may support 256 Notes: levels). 8. Layer Properties. MaxFast Maximum number of fast Base O-99 The MaxLayers property is how many simultaneous Overlay layers the speeds. hardware can process or the software/hardware system can effectively MaxFastReverse Maximum number of Base O-99 emulate as simultaneous overlays in real time and blend with a full screen reverse fast speeds. video. The NumLayers property returns the number of layers that can be MaxSlow Maximum number of slow Base O-99 created (but not necessarily used simultaneously) based on the amount of speeds. Could be zero free memory currently available. if not supported. The concept of layer resolution is that a 720 x 480 image requires some MaxSlowReverse Maximum number of Base O-99 number of bytes of data (depending on the bpp) at a resolution of 1. A reverse slow speeds. resolution of 2 uses one data item for a 2 x 2 pixel area of the image (i.e. Could be zero if not 4x less data). supported. This allows a layer to be defined for markup that doesn't need high accu MaxCmdOueue Maximum size of the Y Base O-255 racy and/or a method for a platform to perform graceful degradation if not command queue enough memory is available for a full resolution layer. Resolution 3 is a 3 MaxBookmarks Maximum number of Y Base Unsig x 3 pixel area, and is somewhat awkward. Resolution 4 is a 4 x 4 pixel (x) bookmarks based on X: ned area. No other resolutions are defined. 1: total in volatile 16 memory bit 2: total in non 0180 Disc Type Detection volatile memory 0181. The GetDiscType property requires that the type of 3: per disc in volatile memory disc in the player be available to the application. A disc may 4: per disc in non be only one of the following types: volatile memory NumEBookmarks Number of bookmarks Y Base Unsig 0182 0: drive empty or unknown state (x) available based on x. ned (same as above) 16 0183) 1: DVD bit GetRelTime Gets the relative time Y Base O-231 0184] 2: CD counter. 0185. 3: other US 2002/0O88011 A1 Jul. 4, 2002 19

0186 For a DVD disc, any number of the DVD sub-types 0.195 Cookies (Base) may be detected and have their respective bits set as follows: 0.196 Browser must be able to support cookie mecha nism, which of course places a memory requirement on the hardware device. Cookie shall be placed by browser in local Disc Sub-Types bit fields persistent memory and Shall be readable only by a specific Server and browser/hardware partner. Cookie Shall contain: Bilt number Description Detection method 0197) User/hardware ID: generated by computer Software or by hardware platform (in case of Set-top) O DVD-Video VIDEO TSAVIDEO TS.IFO file present 0198 Disc ID: generated by local hardware based 1. DVD-Audio AUDIO TSVAUDIO TS.IFO on a hashing algorithm. file present 2 DVD-ROM Any file in the main 0199 BCA number: read from lead-in area of DVD material directory other than present VIDEO TS and AUDIO TS 0200. The following is matter of design choice. directories 3 PCFriendly DISCID file present 0201 Format of cookie 4 ITX ITX.HTM file present 5-7 reserved N/A 0202) When to place cookie (i.e., insertion event) 0203 Direct Connection to Navigator (Adv) 0204 Ability to pass commands directly to DVD/CD 0187 Browser Requirements navigator, Such as: 0188 Web browsers and the software environment on 0205 All DVD/CD navigation commands each platform shall be capable of the following 0206. Additionally, must have ability to set GPRMs 0207 Platform/Hardware Requirements Browser Requirements Summary 0208. In order to provide a consistent baseline platform for ITX content developers it is important that the platform Support and hardware vendors properly support the ITX API. Not all Feature Level hardware platforms will have identical capabilities. So it is ITX features in para 2.1.2.2-2.1.2.4 Base/Adv important that each platform provide access to the features Presentation layer must properly Base interpret HTML with embedded video that are available and graceful degradation for those that are HTML version 4.0 Base not Supported-and provide this as feedback So that content JavaScript version 1.2 Base developers understand how their content will function on Platform determination Base different platforms. (navigator, platform) Language determination Base 0209 Baseline Hardware Platform Requirements (navigator.language) JavaScript handlers for 0210 Hardware platform vendors must provide hardware and interfaces capable of performing all the functions Speci Methods Base Properties Base fied as base above to be ITX compatible. If the feature is not Events Base available it is important that it either be emulated or degrade Graphic support (JPG, GIF) Base gracefully in Some manner. Items marked as advanced can Graphic support (BMP) Adv be supported or not, but the Supported Features bits must Animated GIF support Adv XML Adv accurately indicate what features are available. Java support Adv Streaming media support Adv 0211. It is expected that hardware platforms meet these Macromedia Flash Base/Adv minimum specifications: Macromedia Shockwave Adv QuickTime Adv 0212 Support HTML3.2 browser and other require Interfaces to common hardware features Base ments in paragraphs 3.X (ID, cookie, etc.) 0213 Play video full screen down to a 4:1 down scale (180x120 (NTSC), 180x144 (PAL)). 0189 HTTP Header Formatting (Base) 0190. Each HTTP header should be formatted with the Baseline Capabilities Grouping following information (in addition to standard HTTP header information: ITX Baseline bit Command Group Command list 0191 Language O GRP OPENVOB Open(filename type) 0192 Screen resolution 1 GRP TRANSPORT Play(II) Pause (II) 0193 Hardware platform identifier and version Stop (II) FastForward (Ix, ) 0194 Browser identifier and version US 2002/0O88011 A1 Jul. 4, 2002 20

-continued -continued

Baseline Capabilities Grouping ITX Baseline bit Command Group Command list ITX Baseline bit Command Group Command list 17 GRP ADVPLAY Slow(x,) Rewind(II,II) SlowReverse(Ix, ) NextChapter(II) Step(n) PrevChapter(II) 18 GRP HIDDEN HiddenGroupPlay(g, *) Resume(II) HiddenTrackPlay(g,t,*) StillOff(II) HiddenTimePlay (h.m.s,*) 2 GRP AUDIOTRANSPORT NextTrack() 19 RP MENU GotoMenuID(x,) PrevTrack() 2O RP BOOKMARK GotoBookMark(x,D NextDisplay(II) SaveBookMark(x,) PrevDisplay(II) 21 RP MOUSE AutoMouseHide(b) 3 GRP SEARCH TitlePlay(t.*I) 22 RP KARAOKE KaraokeSelect(x) ChapterPlay(t,c, *) 23 RP ZOOMPAN Zoom(x,y) TimePlay(h.m.s.f, *) Pan(x,y) Menu(x,) 24 GRP BLEND VideoBlending(a,c) 4 GRP AUDIOSEARCH TitleGroupPlay(g) 25 GRP LAYER CreateLayer(b,c,r.dp) TrackPlay(g,t,*) ChangePalette(bp , ) 5 GRP UOP UOPMask() DestroyLayer(b) 6 GRP SELECT UpButtonSelect(In) DownButtonSelect(n) ShowLayer(b.) LeftButtonSelect(In HideLayer(b.) RightButtonSelect(n) ButtonActivate() ButtonSelectAndActivate (n) 7 GRP VFEATURES SubPictureSelect(n) 0216 Local Storage/Memory Requirements SubPictureEnable(n) AudioSelect(n) 0217. The only local storage requirement of ITX is AngleSelect(n) minimal memory for the purpose of placing cookies. MenuLanguage Select(n) Optionally, the hardware platform can also Support larger Parental LevelSelect(n) ParentalCountrySelect(n) local memory for the purposes of caching web pages. More FullScreen (w, *) information: TBD. 8 GRP AFEATURES TextLanguageSelect(n) 9 GRP PC Close() 0218 Hardware Platform Considerations ShowControls(x,y,1) ShowContextMenu () 0219. Some set-top players may not be able to PopUpMenu () access both DVD-Video and ROM content at the 10 GRP DOWNSCALE From HTML embedded Same time. The application will need to permit object width and height parameters intelligent caching, and the platform will need to Zoom(x,y,1) provide Sufficient memory. (downscale required for baseline: 0220 Directory Structure for Current PCFriendly Client: upscale is advanced) 11-15 N/A reserved (must fROOT return O) PCFRIEND.EXE (WIN) PCFRIEND (MAC) README (MAC) README (WIN) 0214) Advanced Hardware Platform Requirements foOMMON fSETUP 0215 Each advanced feature requires that it be fully LANG.INI supported for its feature bit to be enabled. However, differ SETUP EN.BMP SETUP JA.BMP ent playback Systems may have differing levels of Support SETUP FR.BMP for Some features, Such as the number of bookmarkS Sup LIC EN.TXT ported or the variety of Special effects Supported. LIC JA..TXT LIC FR.TXT ?cONTENT ITX Baseline general content (runs on multiple platforms) bit Command Group Command list fMAC fSETUP 16 GRP FILEOPEN Open(filename PCFRIENDLY PLUG IN type) FLASH 4 Play files other ?cONTENT than WOB and MPG. Audio: fSETUP WAV PCFRIEND.CO MD INUNINSTEXE Video: UPDATEDAT AVI f(ABINETS US 2002/0O88011 A1 Jul. 4, 2002 21

0222 AMGM (Audio Manager Menu): Optional Visual -continued Menu defined in the Audio Manager (AMG). The Audio Manager contains the information and data to control all MANCAB VIDEO.CAB Audio Title Sets (ATS), all Video Title Sets (VTSs) for OTHERCAB Audio Titles and the AMGM. fTHIRDPTY 0223) Enumerations: fMACROMED SWFLASH.EXE fMSIE Enumerations fEN Item Options Value Domain First Play 1. 0221) User Operation Control: Video Manager Menu

User Operation Control Summary

DVD-Video DVD-Audio + Only DVD-Audio Only Video Function Menu Title Stop AMGM Title Stop AMGM Title Stop TitlePlay X X X X X X X X Title Group Play PTTPlay, X X X X X X X X TrackPlay TimePlay X X X X X X X X Stop X X X X X TimeSearch X X X PTTSearch, X X X TrackSearch NextTrack X X PrevTrack X X NextPG X X X Prev-G X X X NextDisplay X PrevDisplay X ForwardScan X X X X X BackwardScan X X X X X Menu X X X X X Resume X X Up X X X X Down X X X X Left X X X X Right X X X X Enter X X X X ButtonSelectan X X X X dActivate Pause X X X X X MenuLanguageSe X X lect TextLanguageSe X X lect AudioChange X X X X X X X X SubpictureGhan X X X X X Se AngleChange X X X X ParentalLevel X ParentalCountr X y VideoPresentat X X X X X X ionMode KaraokeMode X X X HiddenGroupPla X X X X X y HiddenTrackPla X X X X X y HiddenTimePlay X X X X X US 2002/0O88011 A1 Jul. 4, 2002 22

content. The directories allow operation with multiple user -continued device platforms. The directories preferably include com mon directories which can be used on Several platforms Enumerations Sharing common properties as well as platform specific Item Options Value directories for use with platforms having unique interface requirements. Thereafter, in an operation 608, the DVD Video Title Set Menu Title ROM content along with the directories is recorded onto the Stop disc. Then, in an operation 610, the user's particular device Unknown platform is determined. This operation occurs automatically Menus Title Menu upon the user's attempt to use the disc. Then, in an opera Root Menu Subpicture Languages tion, 612, a directory appropriate for use with the determined Menu user device platform is Selected from among the plurality of Audio Languages Menu directories. This Selected directory is called using JavaScript Angle Menu function and appropriate tags associated with the directories. Chapter Menu PlayState None 0226. While the invention herein disclosed has been Scanning described by means of Specific embodiments and applica S Pause tions thereof, numerous modifications and variations could ay be made thereto by those skilled in the art without departing Slow from the scope of the invention set forth in the claims. Step Unknown Speed State Normal Speed What is claimed is: Double Speed S ow Forward Speed 1. A method for providing enhanced content for play S ow Backward Speed acroSS multiple play platforms, comprising the Steps of: Fast Forward Speed Fast Backward Speed delivering media content to a client device; Step Speed delivering HTML content to a client device, the HTML Unknown content being accessible and usable by a plurality of client device platforms, 0224 With reference to FIG. 5, a process 500 is described for providing an enhanced multimedia experience. activating a browser to access the HTML content, the In an operation 502, DVD content is recorded onto a DVD browser being located on and compatible for use with disc. Then, in an operation, 504, the HTML content is the client device; recorded onto the same disc. Thereafter, in an operation 506, activating firmware on the client device to access the the disc is inserted into a client device. The client device can media content; and be, for example a personal computer having DVD capabili ties and an Internet browser. The client device could also be incorporating the accessed HTML content with the a set top box. Then in an operation 508, the DVD content is accessed media content. accessed by DVD software present on the client device. In 2. A computer program for developing media content as a step 510, the HTML data is accessed. The HTML content recited in claim 1 further comprising a code Segment that is preferably accessed by the browser Software already access the content recorded onto the recording medium by present on the client device. The HTML content is can calling one of the plurality of directories, the directory being include data obtained via the Internet by the browser soft suitable for use with the platform of the client device. ware under the direction of the HTML content recorded onto 3. A method for providing a common, croSS platform the disc. Also, the HTML content can consist of only the framework for development of DVD-Video content with recorded HTML data with no need for Internet connection. DVD-ROM content as recited in claim 2 wherein the Finally, in an operation 512, the DVD content is supple directories include HTML content. mented with the HTML content to provide an enhanced 4. A method for providing a common, croSS platform multimedia event. The HTML content can be added to the framework for development of DVD-Video content with DVD content in multiple ways. For example, the HTML DVD-ROM content as recited in claim 2 wherein the content can be in the form of a picture within a picture, (e.g. directories contain JavaScript files. a relatively small window within a DVD video). The HTML 5. A method for providing a common, croSS platform content could also be update data incorporated directly into framework for development of DVD-Video content with a Video or could be in the form of navigation commands or DVD-ROM content as recited in claim 2 wherein the relevant Internet links. directories comply with ISO-9660 standards. 0225. With reference to FIG. 6, a general process 600 is 6. A method for providing a common, croSS platform described for enhancing DVD-content with ROM content. framework for development of DVD-Video content with In an operation 602, DVD content is recorded onto a disc. DVD-ROM content as recited in claim 2 wherein the The DVD content is in the form of standard DVD content directories contain platform Specific code Segments. familiar to those skilled in the art. Then, in an operation 604 7. A method for providing a common, croSS platform DVD-ROM content is generated. This content is preferably framework for development of DVD-Video content with HTML encoded content which can be read and operated on DVD-ROM content as recited in claim 2 wherein the by standard Internet browsers. In an operation 606, a plu directories support hybrid Windows/Macintosh discs, pre rality of directories are incorporated into the DVD-ROM Serving resource forks for Macintosh operating Systems. US 2002/0O88011 A1 Jul. 4, 2002

8. A method for providing enhanced media content as accessing the multimedia content and the HTML content, recited in claim 2 wherein the HTML content is provided via and a portable Storage medium. 9. A method for providing enhanced media content as playing multimedia content and the HTML content hav recited in claim 2 wherein the HTML content is provided via ing been accessed. a network. 18. A method for enhancing multimedia content as recited 10. A method for providing enhanced media content as in claim 17 further including the Step of recording the recited in claim 9 wherein the network is the Internet. HTML content onto the recording medium. 11. A method for providing enhanced media content as 19. A method for enhancing multimedia content as recited recited in claim 1 wherein the HTML content is overlaid in claim 17 wherein the multimedia content is DVD content onto the media content. accessed by DVD firmware on a client device, and where the 12. A method for providing enhanced media content as HTML content is stored locally on the client device. recited in claim 1 wherein the HTML content is in the form 20. A method for enhancing multimedia content as recited of textual Script, which Scrolls with the media content. in claim 17 wherein the multimedia content is DVD content 13. A method for providing enhanced media content as accessed by DVD firmware on a client device and wherein recited in claim 1 wherein the HTML scrolls synchronously the HTML content is provided from a remote server via a with the media content and wherein Selecting a portion of the network. Script navigates the user to a corresponding location in the 21. A method for enhancing multimedia content as recited media content. in claim 17, wherein: 14. A method for providing enhanced media content as the multimedia content is DVD content; recited in claim 1 wherein the HTML content is in the form of an HTML page that starts a movie and checks for related the HTML content is a textual script of the DVD content; Internet Sites. and 15. A method for providing enhanced media content as Selection of a portion of the textual Script navigates the recited in claim 1 wherein the HTML content includes a multimedia content to a corresponding location in the page that links to a website. multimedia content. 16. A method for providing enhanced media content as 22. A method for enhancing multimedia content as recited recited in claim 1 wherein the HTML content includes a in claim 17 wherein the multimedia content is DVD content plurality of HTML files for accommodating a plurality of and wherein accessing the multimedia content activates the platforms of client devices. HTML content, linking the user to a server providing HTML 17. A method for enhancing multimedia content, com content corresponding to the multimedia content. prising the Steps of 23. A method for enhancing multimedia content as recited providing a recording medium; in claim 17 wherein the video playback sends events that recording multimedia content onto the recording medium; allow the HTML content to be synchronized. integrating HTML content with the multimedia content;