WO2002017639A2 - System and method for television enhancement - Google Patents

System and method for television enhancement Download PDF

Info

Publication number
WO2002017639A2
WO2002017639A2 PCT/US2001/026369 US0126369W WO0217639A2 WO 2002017639 A2 WO2002017639 A2 WO 2002017639A2 US 0126369 W US0126369 W US 0126369W WO 0217639 A2 WO0217639 A2 WO 0217639A2
Authority
WO
WIPO (PCT)
Prior art keywords
file
enhancement
television
parsing
elements
Prior art date
Application number
PCT/US2001/026369
Other languages
French (fr)
Other versions
WO2002017639A3 (en
WO2002017639B1 (en
Inventor
Steven O. Markel
Original Assignee
Intellocity Usa, Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intellocity Usa, Inc. filed Critical Intellocity Usa, Inc.
Priority to CA002419409A priority Critical patent/CA2419409A1/en
Priority to AU8668001A priority patent/AU8668001A/en
Priority to EP01966143A priority patent/EP1312214A2/en
Priority to JP2002522202A priority patent/JP2004519116A/en
Publication of WO2002017639A2 publication Critical patent/WO2002017639A2/en
Publication of WO2002017639A3 publication Critical patent/WO2002017639A3/en
Publication of WO2002017639B1 publication Critical patent/WO2002017639B1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • H04N21/2355Processing of additional data, e.g. scrambling of additional data or processing content descriptors involving reformatting operations of additional data, e.g. HTML pages
    • H04N21/2358Processing of additional data, e.g. scrambling of additional data or processing content descriptors involving reformatting operations of additional data, e.g. HTML pages for generating different versions, e.g. for different recipient devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25808Management of client data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/435Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/462Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
    • H04N21/4622Retrieving content or additional data from different sources, e.g. from a broadcast channel and the Internet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/478Supplemental services, e.g. displaying phone caller identification, shopping application
    • H04N21/4782Web browsing, e.g. WebTV
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/637Control signals issued by the client directed to the server or network components
    • H04N21/6377Control signals issued by the client directed to the server or network components directed to server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/643Communication protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/8166Monomedia components thereof involving executable data, e.g. software
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/8543Content authoring using a description language, e.g. Multimedia and Hypermedia information coding Expert Group [MHEG], eXtensible Markup Language [XML]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/8545Content authoring for generating interactive applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/858Linking data to content, e.g. by linking an URL to a video object, by creating a hotspot
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/858Linking data to content, e.g. by linking an URL to a video object, by creating a hotspot
    • H04N21/8586Linking data to content, e.g. by linking an URL to a video object, by creating a hotspot by using a URL
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/08Systems for the simultaneous or sequential transmission of more than one television signal, e.g. additional information signals, the signals occupying wholly or partially the same frequency band, e.g. by time division
    • H04N7/087Systems for the simultaneous or sequential transmission of more than one television signal, e.g. additional information signals, the signals occupying wholly or partially the same frequency band, e.g. by time division with signal insertion during the vertical blanking interval only
    • H04N7/088Systems for the simultaneous or sequential transmission of more than one television signal, e.g. additional information signals, the signals occupying wholly or partially the same frequency band, e.g. by time division with signal insertion during the vertical blanking interval only the inserted signal being digital
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/162Authorising the user terminal, e.g. by paying; Registering the use of a subscription channel, e.g. billing
    • H04N7/165Centralised control of user terminal ; Registering at central
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/173Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
    • H04N7/17309Transmission or handling of upstream communications
    • H04N7/17318Direct or substantially direct transmission and handling of requests

Definitions

  • the present disclosure relates to interactive and enhanced television and, more particularly, to a method and system that produces enhanced content that may be employed across a plurality of platforms without re-editing.
  • this disclosure discusses systems and methods for distribution of interactive content to multiple targeted presentation platforms.
  • Enhancements have historically included closed captioning and multilingual support. Advances in networking, computer systems, and video production have increased the number and types of enhancements that may be provided with a program or advertisement. Enhancements may include stock updates, news stories,, Internet links, weather forecasts, bulletins, statistics, trivia, and otber information. For example, a football game may include icons allowing viewing of team players, statistics, trivia and other information such as upcoming games. Further, the advent of set-top-boxes, as may be used in cable and satellite television systems, allows enhancement information to be presented in new ways, such as screen overlays and in windows, for example.
  • Enhanced television content may employ a combination of HTML (hypertext markup language), JavaScript, Java and other formats common to Internet page display.
  • An enhanced display may comprise text, icons, graphics and images placed at locations on or in proximity to the television image.
  • an author must create a file identifying each displayed element (such as text, icons, graphics and images), the location where each element is displayed and the time at which rhe element maybe displayed. Due to numerous differences between presentation platforms, such as set top boxes, satellite receivers, computers, or interactive televisions, for example, content providers have historically been required to select a specific platform in the development of an enhancement application.
  • the interactive content provider In order to provide support for each additional platform, the interactive content provider must introduce potentially significant modifications to the existing application, resulting in the ongoing maintenance of multiple code bases, and adding to the time and cost required producing enhanced page layouts for multiple platforms. Additionally, previous methods employed to enter parameters required to generate and position the elements comprising the layout of enhanced pages have involved . significant manually entry. Manual editing of an enhancement file may also introduced unintended changes such that enhancements are not uniform across platforms. Therefore a new method of creating enhanced content that allows utilization across multiple platforms and provides an accurate preview of enhancements is needed.
  • the present invention overcomes the disadvantages and limitations of the prior art by providing a system and method that parses a text based script enhancement file to provide emulation of enhancements and to provide output of platform specific enhancement files.
  • the enhancement file which may employ an XML format, contains a description of enhancements including element position, attributes, triggering and linkage. Linkage associates a file with an element such that a user may select a linked object to access websites, launch other applications, or to perform other tasks. Parsing the enhancement file produces an output file targeted to a specific platform.
  • the platform may comprise a set top box, interactive television or computer display.
  • a file parsed for computer display may be employed for emulation and preview of enhancements and may contain functions for control of a browser media player.
  • the invention therefore may comprise a method for creating a television presentation enhancement comprising accessmg a platform independent enhancement file containing elements and attributes of the elements, applying a first pareing script to the enhancement file to produce a first output file that may be viewed using a web browser and media player, and applying a second parsing script to the enhancement file to produce a second output file that may be viewed with a set top box.
  • An enhancement file of XML format may be parsed using XSL (Extensible
  • an XML file with tags for admiiiistrative information, layout information, and trigger information is employed.
  • the XML file may be parsed to produce an output file containing HTML and JavaScript code wherein the version of HTML and Javascript reflect the level of support provided by the target platform.
  • the output file may be formatted for a mode of enhancement transport. In a first mode of transport, enhancements and triggers are supplied in. conjunction with a video program. In a second transport mode, triggers and a locator, such as a URL, are provided in conjunction with a video program and the platform employs the locator to access enhancement information.
  • the invention may further comprise a system for developing television enhancements comprising a computer; a database; a web browser; and a parser operable to parse a platform independent enhancement file contained in the database and to produce an output that may be viewed employing the browser.
  • the invention provides viewing and emulation of enhancement files employing a personal computer or similar equipment. This allows a team of developers and reviewers to be physically separated, and allows enhancement customers, (such as advertisers) to preview material by simply accessing a website. Description of the Figures
  • Figure 1 depicts html and image support for a group of commercially available set top box products.
  • Figure 2 depicts the software environment of the present invention.
  • Figure 3 is an overview flowchart of parsing an XML file to emulate and preview enhancements.
  • Figure 4 depicts a first flowchart of part of a parsing process.
  • Figure 5 depicts a second flowchart of a parsing process.
  • Figure 6 depicts a third flowchart of a parsing process.
  • Figure 7 depicts a computer display of an enhancement.
  • Enhanced television content is typically presented using a combination of HTML, JavaScript, Java and other web technologies.
  • the level of support for these technologies varies by the targeted presentation platform, including the combination of client hardware, operating system, web browser and add-on software.
  • a presentation platform comprises a set top box, interactive television, computer, or other system operable to receive television signals and to process HTML and other code and to produce a display comprising a television image and enhancements. Capabilities vary depending the specific platform. Certain functions may or may not exist, or may be optimized on a given platform through the use of custom features. Variants include screen size and resolution, acceptable color combmations, graphics support, and version of HTML or JavaScript, for example. Providing concurrent support for the Internet or wireless handheld devices introduces additional requirements and dependencies.
  • the present invention overcomes the difficulties of supporting multiple platforms, each having a specific set of capabilities, by employing a platform independent text based script file that completely defines the enhancement assets, their location and other attributes, as well as the triggering information.
  • the text based script file is then translated by parsing software to produce platform dependent files comprising HTML and JavaScript code tailored to the specific platform.
  • the present invention also allows translation targeting a web. browser and a media player, providing emulation and preview of authored enhancements.
  • Figure 1 depicts HTML and image support for a group of commercially available set top box products.
  • Set top box models 100 provide HTML support 102 and image support 104.
  • HTML support 102 lists support for html 1,0, 2.0, and 3.2 versions.
  • a limitation of HTML is that some versions lack downward compatibility.
  • FIG. 1 serves to illustrate that an HTML based author for creating enhanced content would not be able to support a wide range of target platforms.
  • the present invention overcomes the disadvantages of HTML based authoring by employing an authoring tool that generates an XML file that may be parsed using XSL scripts for each platform type to produce HTML code and JavaScript suitable for each platform.
  • Figure 2 depicts the environment of the present invention.
  • Environment 200 comprises database 208 containing user and project administration information 202, page layout information 204 and trigger creation information 206.
  • XML file 210 is created using information from database 208.
  • Import XSL's 212 maybe employed to translate HTML and JavaScript into XML file 210.
  • Emulator XSL 214 provides translation of XML file 210 into HTML and JavaScript, plus provides media player controls for emulation and preview.
  • STB Agnostic Sniffer XSL 216 includes platform query routines to determine the type of platform requesting enhancement information.
  • WebTVTM XSL 218 provides translation compatible with WebTV platforms.
  • AOLTVTM XSL 220 provides translation compatible with AOLTV platforms.
  • Triggers XSL 222 provides triggers that may be transmitted with a television presentation that may be used to synchronize display of enhancements. Enhancement information may be transmitted with the television presentation, or may be accessed by the platform in response to the trigger information. Translated files may be stored in server 224.
  • FIG 3 is an overview flowchart of parsing an XML file to emulate and preview enhancements. Process steps shown in figure 3 are described in greater detail in following figures. Parsing process 300 starts with step 302 where comments are inserted that indicate the project name, page names, date, time, and other information. This information will form in part, the header of the resultant HTML/JavaScript file produced by the parsing process.
  • step 304 a list of elements comprising an enhancement is scanned and checked for a JavaScript tag. If a JavaScript tag is found, the JavaScript is placed into the output file.
  • trigger tags are extracted, trigger data is sorted and a JavaScript trigger array is created that comprises time, element, and new element value. This array is referenced during emulation.
  • the list of elements is scanned and a function to change the text value is generated for- elements with a text area tag. This function allows text in a text area to be changed, such as response to a trigger event.
  • the list of elements is scanned and a function to change the source value is applied to graphics elements.
  • code that references the trigger array and individual function is inserted.
  • code is inserted that is executed when the browser window is opened.
  • the list of elements is scanned and if an imported HTML tag element is found, the value is extracted and placed in the output file.
  • code supporting a media player including stop, go, pause, and timer is written to the output file.
  • a media player object is placed in the output file if a 'TV object is present in the XML source file.
  • Graphics elements are placed in the output file with 'img' tags and text elements are placed in the output file with text tags.
  • a web browser may access the output file created by the above parsing process and the enhancement may be displayed.
  • the media player module allows viewing in conjunction with display of a video image. The module allows the media player to present a video sequence, along with enhancements. The media player may be paused, stopped, started, or the user may go to a specific frame or display time.
  • FIG. 4 depicts a first flowchart of part of a parsing process.
  • Process 400 starts at step 402 where a looped process for each page of the XML file begins.
  • Page loop 404 provides a return path for the process when an additional page or pages remain.
  • ⁇ HTML and ⁇ HEAD> open tags are written.
  • a ⁇ TITLE> tag is written with the page name.
  • ownership and contact comment information may be written.
  • a project name comment may be written.
  • a page name comment may be written.
  • an author comment may be written.
  • a comment indicating the date the XML file was authored may be written. .
  • a notes comment maybe written.
  • a JavaScript tagging process begins.
  • an element is accessed from the XML file and is checked to determine if the element is of import type. If the element is not of import type, processing returns to step 422 here another element is accessed. If all elements have been accessed, processing contmues at step 434. If the result of step 424 is that the accessed.element is of import type, step 426 writes a language specification indicating that the script language is JavaScript.
  • the contents within the 'js' tag of the XML file are written. .
  • a " ⁇ /script>" closing tag is written.
  • processing continues to step 422 to access additional elements. If all elements have been accessed, processing continues at step 434.
  • JavaScript variable statements for trigger emulation are written.
  • an opening tag for an array of triggers is written.
  • a processing loop is started. Step 438 accesses trigger information, ordered by time, each time the loop is executed.
  • the trigger time multiplied by 1000, is written.
  • the element name affected by the trigger is written.
  • Step 446 checks if additional trigger information maybe accessed for the current page. If additional information may be accessed, processing continues at step 438.
  • Step 502 is a continuation from the steps shown in figure 4.
  • a processing loop accesses each element of the current page.
  • Step 506 checks if the element is a text element. If the element is a text element, step 508 writes a function for changing the text value within the text area. Processing then continues with step 514. If step 506 determines that the element is not a text element, step 510 checks if the element is a graphics element.
  • step 528 writes a function for changing the source value within an image field. Processing then continues with step 503. If step 510 determines that the element is not a graphic element, processing continues at step 514. At step 514, processing continues at step 504 if additional elements remain. If all elements have been accessed, processing contmues at step 516. Step 51 writes a script closing tag. Step 518 then writes a script language tag indicating that the script language is JavaScript. Step 522 writes setup variables for a media player. Step 524 then converts numeric seconds to an ASCII string. Step 526 writes a function to handle start, stop and pause controls for the media player. Step 528 writes a function for time display.
  • Time display may be used to indicate the time of a video sequence being shown by the media player.
  • event code for selection of the media player 'go' button is written.
  • event code the selection of the media player 'stop' button is written.
  • event code for selection of the media player 'preview' button is written.
  • event code is written that is executed when the emulation window is opened.
  • a closing script tag is written.
  • a closing head tag is written.
  • Step 542 writes a "body" tag with an event handler for window loading.
  • Step 544 leads to the steps shown in figure 6.
  • Figure 6 depicts a third flowchart of a parsing process.
  • Step 602 is a continuation from the steps shown in figure 5.
  • a processing loop accesses each element within each page.
  • Step 606 checks if the element is of import type. If the element is not of import type, processing continues at step 604 where the next element is accessed. If all elements have been accessed, processing continues at step 616. If step 606 determines that the element is of import type, step 608 writes a division tag ( ⁇ div>) and writes body code comprising element name, absolute position, top left position and z index. The z index value maybe employed to control the order in which elements are rendered, causing one element to appear on top of another element.
  • Step 610 writes the contents of the htmlBody' tag. Step 612 then writes an end ⁇ div> tag.
  • Step 614 if all elements have not been accessed, processing continues at step 604. If all elements have been accessed, processing continues at step 616.
  • Step 616 writes a division tag for media player positioning buttons.
  • Step 618 writes ⁇ table> code with positioning buttons.
  • Step 620 writes an end ⁇ div> tag, demarking the division started at step 616.
  • a processing loop accesses each element within each page.
  • Step 624 checks if the element type is graphic. If the element is a graphic element, step 626 writes a division tag for html body code comprising element name, absolute position, top left position and z index.
  • Step 628 checks if a URL (Universal Resource Locator) exists for the element. If a URL exists, step 630 writes a URL html tag.
  • URL Universal Resource Locator
  • Source is the address of where the graphic element is stored.
  • Step 628 determines that a URL does not exist for the element
  • step 624 determines that the element is not a graphics element
  • step 634 checks if the element is of type 'tv'. If the element is of type 'tv', step 636 writes a division tag for html body code comprising element name, absolute positioning, top left position, and z index. Step 638 writes code to embed a media player. Processing then continues at step644.
  • step 634 determines that the element is not a 'tv' type element
  • processing continues to step 640 where a check is performed if the element is a text area element. If the element is a text area element, step 642 writes a division tag for html body code comprising element name, absolute positioning, top left position, z index, font, color, and point size. Processing then continues at step 644. If step 640 determines that the element is not a text area element, processing continues at step 644. At step 644 processing loops back to step 622 if elements remain that have not been accessed. Otherwise, processing continues at step 646. If pages remain that have not been accessed, processing continues to step 648 where the process loops back to step 404 of figure 4 to access the next page. If all pages have been accessed, step 650 writes closing ⁇ body> ⁇ html> tags and the process ends at step 652.
  • Figure 7 depicts a computer display of an enhancement.
  • a text based script file, employing an XML format, describing the elements employed to create the enhancement depicted in figure 7 is listed in Appendix A.
  • Appendix B lists an HTML file with JavaScript that has been produced from the code of Appendix A through the process described in figures 3 to 6.
  • Appendix B includes section identifiers that relate the code sections to steps shown in figure 3.
  • a user logs into an editing system, creates a project, and then lays out enhanced content pages and creates triggers for those pages.
  • a database stores project information that comprises pages and triggers and may include project name, author date and other information.
  • Information in the database is employed to create a text based script file that describes each element, its attributes, its layout and triggering of the. element.
  • an XML file is employed. This file is output platform independent and completely defines the assets, their location and other attributes, as well as the triggering information necessary for the enhanced content project.
  • the XML file is then processed using one or more XSL rule based parsers that "translate" the XML file into another format, such as HTML 4.0 and Javascript 1.2, for example.
  • XSL parsers are employed for emulation and for creating platform specific output files. Parsing of the enhancement file for a particular platform may include translation of color values. Some platforms do not display pure colors and as such a lookup table or translation algorithm may be employed to check a color value and to alter the color value.
  • the process shown in figures 3 to 6 produces an HTML and Javascript output that may be run on an industry standard web browser and media player such as Microsoft Internet Explorer and Windows Media Player, both from Microsoft Corporation. Additional information regardmg XSL may be obtained from the following books:
  • Enhancement output files allow enhancement of a television broadcast that may employ various methods of delivering enhancement data, A first method transfers enhancement data as part of the broadcast. A second method transfers a trigger and locator with the broadcast, and the set top box, or other platform, employs the locator to access enhancement information.
  • the second method of transfer may further comprise receiving information identifying the type of platform requesting enhancement data (when the platform accesses the locator), and providing enhancement information suited to the requesting platform.
  • a new or modified parser may be employed to support new platforms, or new versions of platforms. The new or modified parser then may be applied to a plurality of source enhancement files that need not be modified. In this manner, the present invention provides costs savings in supporting new platforms or new versions of platforms.
  • Appendix B 220 This appendix shows code generated from the XML file listed in Appendix A employing a parser of the present invention. Steps shown in bold reference steps shown in figure 3.

Abstract

A text based script file describing enhancements is parsed to produce platform dependent enhancement files that may be employed to produce enhancements on a set topbox, enhanced television, or computer display. A script file may be of XML format and aparser may be an XSL translator. A parser may import HTML and Javascript from otherapplications. A parser may support a media player for emulation to view video andenhancements. Trigger data for rendering enhancements may be formatted into a javascript array. Trigger events may be employed to replace graphic pointers or textvalues. Multiple parsers, each supporting a specific platform, allow a single script file tobe employed across multiple platforms. New platforms or versions of platforms aresupported through new or updated parsers.

Description

SYSTEM AND METHOD FOR TELEVISION ENHANCEMENT
Cross Reference to Related Applications
This application is based upon and claims priority of United States provisional application number 60/227,063 entitled "A DATA DRIVEN SYSTEM AND METHOD FOR DISTRIBUTION OF INTERACTIVE CONTENT TO MULTIPLE TARGETTED PRESENTATION PLATFORMS", filed August 21, 2000 by Steve O. Markel, the entire disclosure of which is herein specifically incorporated by reference for all that it discloses and teaches.
Background
a. Field
The present disclosure relates to interactive and enhanced television and, more particularly, to a method and system that produces enhanced content that may be employed across a plurality of platforms without re-editing. In greater detail this disclosure discusses systems and methods for distribution of interactive content to multiple targeted presentation platforms.
b. Description of the Background
A television program maybe accompanied by additional information employed to enhance the program or to provide viewer interaction. Enhancements have historically included closed captioning and multilingual support. Advances in networking, computer systems, and video production have increased the number and types of enhancements that may be provided with a program or advertisement. Enhancements may include stock updates, news stories,, Internet links, weather forecasts, bulletins, statistics, trivia, and otber information. For example, a football game may include icons allowing viewing of team players, statistics, trivia and other information such as upcoming games. Further, the advent of set-top-boxes, as may be used in cable and satellite television systems, allows enhancement information to be presented in new ways, such as screen overlays and in windows, for example. Enhanced television content may employ a combination of HTML (hypertext markup language), JavaScript, Java and other formats common to Internet page display. An enhanced display may comprise text, icons, graphics and images placed at locations on or in proximity to the television image. To produce an enhanced display, an author must create a file identifying each displayed element (such as text, icons, graphics and images), the location where each element is displayed and the time at which rhe element maybe displayed. Due to numerous differences between presentation platforms, such as set top boxes, satellite receivers, computers, or interactive televisions, for example, content providers have historically been required to select a specific platform in the development of an enhancement application. In order to provide support for each additional platform, the interactive content provider must introduce potentially significant modifications to the existing application, resulting in the ongoing maintenance of multiple code bases, and adding to the time and cost required producing enhanced page layouts for multiple platforms. Additionally, previous methods employed to enter parameters required to generate and position the elements comprising the layout of enhanced pages have involved . significant manually entry. Manual editing of an enhancement file may also introduced unintended changes such that enhancements are not uniform across platforms. Therefore a new method of creating enhanced content that allows utilization across multiple platforms and provides an accurate preview of enhancements is needed.
Summary of the Invention
The present invention overcomes the disadvantages and limitations of the prior art by providing a system and method that parses a text based script enhancement file to provide emulation of enhancements and to provide output of platform specific enhancement files. The enhancement file, which may employ an XML format, contains a description of enhancements including element position, attributes, triggering and linkage. Linkage associates a file with an element such that a user may select a linked object to access websites, launch other applications, or to perform other tasks. Parsing the enhancement file produces an output file targeted to a specific platform. The platform may comprise a set top box, interactive television or computer display. A file parsed for computer display may be employed for emulation and preview of enhancements and may contain functions for control of a browser media player.
The invention therefore may comprise a method for creating a television presentation enhancement comprising accessmg a platform independent enhancement file containing elements and attributes of the elements, applying a first pareing script to the enhancement file to produce a first output file that may be viewed using a web browser and media player, and applying a second parsing script to the enhancement file to produce a second output file that may be viewed with a set top box. An enhancement file of XML format may be parsed using XSL (Extensible
Stylesheet Language) scripts, h the present invention, an XML file with tags for admiiiistrative information, layout information, and trigger information is employed. The XML file may be parsed to produce an output file containing HTML and JavaScript code wherein the version of HTML and Javascript reflect the level of support provided by the target platform. Further, the output file may be formatted for a mode of enhancement transport. In a first mode of transport, enhancements and triggers are supplied in. conjunction with a video program. In a second transport mode, triggers and a locator, such as a URL, are provided in conjunction with a video program and the platform employs the locator to access enhancement information. The invention may further comprise a system for developing television enhancements comprising a computer; a database; a web browser; and a parser operable to parse a platform independent enhancement file contained in the database and to produce an output that may be viewed employing the browser.
Advantageously, the invention provides viewing and emulation of enhancement files employing a personal computer or similar equipment. This allows a team of developers and reviewers to be physically separated, and allows enhancement customers, (such as advertisers) to preview material by simply accessing a website. Description of the Figures
In the figures,
Figure 1 depicts html and image support for a group of commercially available set top box products.
Figure 2 depicts the software environment of the present invention.
Figure 3 is an overview flowchart of parsing an XML file to emulate and preview enhancements.
Figure 4 depicts a first flowchart of part of a parsing process. Figure 5 depicts a second flowchart of a parsing process.
Figure 6 depicts a third flowchart of a parsing process.
Figure 7 depicts a computer display of an enhancement.
Detailed Description of the Invention
Enhanced television content is typically presented using a combination of HTML, JavaScript, Java and other web technologies. The level of support for these technologies varies by the targeted presentation platform, including the combination of client hardware, operating system, web browser and add-on software. A presentation platform comprises a set top box, interactive television, computer, or other system operable to receive television signals and to process HTML and other code and to produce a display comprising a television image and enhancements. Capabilities vary depending the specific platform. Certain functions may or may not exist, or may be optimized on a given platform through the use of custom features. Variants include screen size and resolution, acceptable color combmations, graphics support, and version of HTML or JavaScript, for example. Providing concurrent support for the Internet or wireless handheld devices introduces additional requirements and dependencies. The present invention overcomes the difficulties of supporting multiple platforms, each having a specific set of capabilities, by employing a platform independent text based script file that completely defines the enhancement assets, their location and other attributes, as well as the triggering information. The text based script file is then translated by parsing software to produce platform dependent files comprising HTML and JavaScript code tailored to the specific platform. The present invention also allows translation targeting a web. browser and a media player, providing emulation and preview of authored enhancements. Figure 1 depicts HTML and image support for a group of commercially available set top box products. Set top box models 100 provide HTML support 102 and image support 104. HTML support 102 lists support for html 1,0, 2.0, and 3.2 versions. A limitation of HTML is that some versions lack downward compatibility. For example, HTML versions 4 and higher do not support all the tags of HTML 3,2. Figure 1 serves to illustrate that an HTML based author for creating enhanced content would not be able to support a wide range of target platforms. The present invention overcomes the disadvantages of HTML based authoring by employing an authoring tool that generates an XML file that may be parsed using XSL scripts for each platform type to produce HTML code and JavaScript suitable for each platform.
Figure 2 depicts the environment of the present invention. Environment 200 comprises database 208 containing user and project administration information 202, page layout information 204 and trigger creation information 206. XML file 210 is created using information from database 208. Import XSL's 212 maybe employed to translate HTML and JavaScript into XML file 210. Emulator XSL 214 provides translation of XML file 210 into HTML and JavaScript, plus provides media player controls for emulation and preview. STB Agnostic Sniffer XSL 216 includes platform query routines to determine the type of platform requesting enhancement information. WebTV™ XSL 218 provides translation compatible with WebTV platforms. AOLTV™ XSL 220 provides translation compatible with AOLTV platforms. Triggers XSL 222 provides triggers that may be transmitted with a television presentation that may be used to synchronize display of enhancements. Enhancement information may be transmitted with the television presentation, or may be accessed by the platform in response to the trigger information. Translated files may be stored in server 224.
Figure 3 is an overview flowchart of parsing an XML file to emulate and preview enhancements. Process steps shown in figure 3 are described in greater detail in following figures. Parsing process 300 starts with step 302 where comments are inserted that indicate the project name, page names, date, time, and other information. This information will form in part, the header of the resultant HTML/JavaScript file produced by the parsing process. At step 304, a list of elements comprising an enhancement is scanned and checked for a JavaScript tag. If a JavaScript tag is found, the JavaScript is placed into the output file. At step 306, trigger tags are extracted, trigger data is sorted and a JavaScript trigger array is created that comprises time, element, and new element value. This array is referenced during emulation. At step 308, the list of elements is scanned and a function to change the text value is generated for- elements with a text area tag. This function allows text in a text area to be changed, such as response to a trigger event. At step 310, the list of elements is scanned and a function to change the source value is applied to graphics elements. At step 312, code that references the trigger array and individual function is inserted. At step 314, code is inserted that is executed when the browser window is opened. At step 316, the list of elements is scanned and if an imported HTML tag element is found, the value is extracted and placed in the output file. At step 318, code supporting a media player including stop, go, pause, and timer is written to the output file. At step 320, a media player object is placed in the output file if a 'TV object is present in the XML source file. Graphics elements are placed in the output file with 'img' tags and text elements are placed in the output file with text tags. A web browser may access the output file created by the above parsing process and the enhancement may be displayed. If the enhancements are related to a television image, the media player module allows viewing in conjunction with display of a video image. The module allows the media player to present a video sequence, along with enhancements. The media player may be paused, stopped, started, or the user may go to a specific frame or display time. The following figures provide a more detailed description of the steps employed in parsing an XML source file.
Figure 4 depicts a first flowchart of part of a parsing process. Process 400 starts at step 402 where a looped process for each page of the XML file begins. Page loop 404 provides a return path for the process when an additional page or pages remain. At step 406, <HTML and <HEAD> open tags are written. At step 408 a <TITLE> tag is written with the page name. At step 410, ownership and contact comment information may be written. At step 412, a project name comment may be written. At step 414, a page name comment may be written. At step 416, an author comment may be written. At step 418, a comment indicating the date the XML file was authored may be written.. At step 420, a notes comment maybe written. At step 422 a JavaScript tagging process begins. At step 424, an element is accessed from the XML file and is checked to determine if the element is of import type. If the element is not of import type, processing returns to step 422 here another element is accessed. If all elements have been accessed, processing contmues at step 434. If the result of step 424 is that the accessed.element is of import type, step 426 writes a language specification indicating that the script language is JavaScript. At step 428, the contents within the 'js' tag of the XML file are written.. At step 430, a "</script>" closing tag is written. At step 432, processing continues to step 422 to access additional elements. If all elements have been accessed, processing continues at step 434. At step 434 JavaScript variable statements for trigger emulation are written. At step 436, an opening tag for an array of triggers is written. At step 438 a processing loop is started. Step 438 accesses trigger information, ordered by time, each time the loop is executed. At step 440, the trigger time, multiplied by 1000, is written. At step 442, the element name affected by the trigger is written. At step 444, parameters associated with each trigger are written, Step 446 checks if additional trigger information maybe accessed for the current page. If additional information may be accessed, processing continues at step 438. When all trigger information has been accessed, processing continues at step 448 where a value indicating the end of the trigger array is written. Step 450 leads to the steps shown in figure 5. Figure 5 depicts a second flowchart of a parsing process. Step 502 is a continuation from the steps shown in figure 4. At step 504, a processing loop accesses each element of the current page. Step 506 checks if the element is a text element. If the element is a text element, step 508 writes a function for changing the text value within the text area. Processing then continues with step 514. If step 506 determines that the element is not a text element, step 510 checks if the element is a graphics element. If the element is a graphics element, step 528 writes a function for changing the source value within an image field. Processing then continues with step 503. If step 510 determines that the element is not a graphic element, processing continues at step 514. At step 514, processing continues at step 504 if additional elements remain. If all elements have been accessed, processing contmues at step 516. Step 51 writes a script closing tag. Step 518 then writes a script language tag indicating that the script language is JavaScript. Step 522 writes setup variables for a media player. Step 524 then converts numeric seconds to an ASCII string. Step 526 writes a function to handle start, stop and pause controls for the media player. Step 528 writes a function for time display. Time display may be used to indicate the time of a video sequence being shown by the media player. At step 530, event code for selection of the media player 'go' button is written. At step 532, event code the selection of the media player 'stop' button is written. At step 534, event code for selection of the media player 'preview' button is written. At step 536, event code is written that is executed when the emulation window is opened. At step 538 a closing script tag is written. At step 540, a closing head tag is written. Step 542 writes a "body" tag with an event handler for window loading. Step 544 leads to the steps shown in figure 6. Figure 6 depicts a third flowchart of a parsing process. Step 602 is a continuation from the steps shown in figure 5. At step 604, a processing loop accesses each element within each page. Step 606 checks if the element is of import type. If the element is not of import type, processing continues at step 604 where the next element is accessed. If all elements have been accessed, processing continues at step 616. If step 606 determines that the element is of import type, step 608 writes a division tag (<div>) and writes body code comprising element name, absolute position, top left position and z index. The z index value maybe employed to control the order in which elements are rendered, causing one element to appear on top of another element. Step 610 writes the contents of the htmlBody' tag. Step 612 then writes an end <div> tag. At step 614, if all elements have not been accessed, processing continues at step 604. If all elements have been accessed, processing continues at step 616. Step 616 writes a division tag for media player positioning buttons. Step 618 writes <table> code with positioning buttons. Step 620 writes an end <div> tag, demarking the division started at step 616. At step 622, a processing loop accesses each element within each page. Step 624 checks if the element type is graphic. If the element is a graphic element, step 626 writes a division tag for html body code comprising element name, absolute position, top left position and z index. Step 628 checks if a URL (Universal Resource Locator) exists for the element. If a URL exists, step 630 writes a URL html tag. Step 632 then writes an 'img' tag with element name, border=0, and source. Source is the address of where the graphic element is stored. Processmg then continues at step 644. If step 628 determines that a URL does not exist for the element, step 632 writes an 'img1 tag with element name,.border=0, and source. Processing then continues at step 644. If step 624 determines that the element is not a graphics element, processing continues at step 634. Step 634 checks if the element is of type 'tv'. If the element is of type 'tv', step 636 writes a division tag for html body code comprising element name, absolute positioning, top left position, and z index. Step 638 writes code to embed a media player. Processing then continues at step644. If step 634 determines that the element is not a 'tv' type element, processing continues to step 640 where a check is performed if the element is a text area element. If the element is a text area element, step 642 writes a division tag for html body code comprising element name, absolute positioning, top left position, z index, font, color, and point size. Processing then continues at step 644. If step 640 determines that the element is not a text area element, processing continues at step 644. At step 644 processing loops back to step 622 if elements remain that have not been accessed. Otherwise, processing continues at step 646. If pages remain that have not been accessed, processing continues to step 648 where the process loops back to step 404 of figure 4 to access the next page. If all pages have been accessed, step 650 writes closing <body><html> tags and the process ends at step 652.
Figure 7 depicts a computer display of an enhancement. A text based script file, employing an XML format, describing the elements employed to create the enhancement depicted in figure 7 is listed in Appendix A. Appendix B lists an HTML file with JavaScript that has been produced from the code of Appendix A through the process described in figures 3 to 6. Appendix B includes section identifiers that relate the code sections to steps shown in figure 3.
In operation, a user logs into an editing system, creates a project, and then lays out enhanced content pages and creates triggers for those pages. A database stores project information that comprises pages and triggers and may include project name, author date and other information. Information in the database is employed to create a text based script file that describes each element, its attributes, its layout and triggering of the. element. In one embodiment of the present invention, an XML file is employed. This file is output platform independent and completely defines the assets, their location and other attributes, as well as the triggering information necessary for the enhanced content project. The XML file is then processed using one or more XSL rule based parsers that "translate" the XML file into another format, such as HTML 4.0 and Javascript 1.2, for example. As depicted in figure 2, XSL parsers are employed for emulation and for creating platform specific output files. Parsing of the enhancement file for a particular platform may include translation of color values. Some platforms do not display pure colors and as such a lookup table or translation algorithm may be employed to check a color value and to alter the color value. The process shown in figures 3 to 6 produces an HTML and Javascript output that may be run on an industry standard web browser and media player such as Microsoft Internet Explorer and Windows Media Player, both from Microsoft Corporation. Additional information regardmg XSL may be obtained from the following books:
Title: Professional XSL Authors: Kurt Cagle et al. Publisher: Wrox Press Inc;
ISBN: 1861003579
Title: XSL Companion, The Author: Neil Bradley Publisher: Addison-WesleyPub Co;
ISBN: 0201674874
The foregoing description provides a system and method that translates a platform independent enhancement file into platform dependent files without needing to change the authored enhancements, saving time and money and providing a uniformity of enhancement across multiple platforms. The steps shown in the figures need not be performed in the exact order shown. An XML file format has been employed in the described embodiment. Other formats, both public and proprietary, may be employed to describe enhancements and attributes of the elements comprising enhancements. Enhancement output files allow enhancement of a television broadcast that may employ various methods of delivering enhancement data, A first method transfers enhancement data as part of the broadcast. A second method transfers a trigger and locator with the broadcast, and the set top box, or other platform, employs the locator to access enhancement information. The second method of transfer may further comprise receiving information identifying the type of platform requesting enhancement data (when the platform accesses the locator), and providing enhancement information suited to the requesting platform. A new or modified parser may be employed to support new platforms, or new versions of platforms. The new or modified parser then may be applied to a plurality of source enhancement files that need not be modified. In this manner, the present invention provides costs savings in supporting new platforms or new versions of platforms.
The foregoing description of the invention has been presented for purposes of illustration and description. It is not intended to be exhaustive or to limit the invention to the precise form disclosed, and other modifications and variations may be possible in light in the above teachings. The embodiment was chosen and described in order to best explain the principles of the invention and its practical application to thereby enable others skilled in the art to best utilize the invention in various embodiments and various modifications as are suited to the particular use contemplated. It is intended that the appended claims be construed to include other alternative embodiments of the invention except insofar as limited by the prior art.
Appendix A
<?xml version="1.0n ?>
- <!— Vizi orx XML Schema 1,1 — >
- <project> <emuIate>True</emulate>
<useWMP>False</useWMP> <pjName>demo proje </pjName> <date>8/ll/2000 1:14:09 PM</date> <author>Steve Markel</author> <canvas>pal</canvas>
<notes>simple one page enhancemen </noces>
- <pages>
- <page> <pgName>index</pgName> - <:element
<elName>tvθ</elNa e>
<type>cv</tyρe>
<src />
<top>0</top> <left>0</left>
<height>392</height>
< width > 523 </wjdth> <zOrder>-l </zθrder> <url /> <fonc (>
<color />
<size />
<rows>0</rows>
<cols>0</cols> </element>
- <elerrιent> <elName>nav</elName> <type>graphic</type> <src>C:/v!ziworx/befcaGraphlcs/nav.jpg</src> <toρ>0</toρ>
<lefc>Si9</left> <height>480</height
< Width > 121 </ idth > <zθrder> K/∑Order> <url />
<fonc /> <color /> <siza />
<rows>-l</rowε> <cols>-l</cols>
</elemant>
- <element> <elNarne>buttonl</elName> <type>graphic</type> <src>C:/vlzlworx/betaGraphics/buttonl.jpg</src>
<top>108</top>
<left>530</left>
<height>20</heigbt>
,<width>97</width> <zθrdeι- 3</zOrder>
<url />
<font />
<color/>
<size /> <rows>-l</rows>
<cols>-K/cols>
</element>
- <element> <eiName>button2</elName> <type>graρhlc</type> src>C:/vizi orx/betaGraρhics/button2.jpg</src>
<top>144</top>
<left>S26</left>
< helght>25 </height> <width>97</wldth>
<zθrder>4</zOrder>
<url />
<foπt />
<color / <sl∑e />
<ro s>-l</ro s>
<cols>-K/cols>
</element>
- <ele ent> <elName>button3</elName>
<tyρe>graphic</type
<src>C:/vizlworχ betaGraphics/button3,jpg< 'src> <top>187</top> <left>525</!eft> <helght 19</height>
<wjdth>97</wl th> <zOrder>5</zOrder>
<url />
<font /> 105 <color/>
<size />
<rows>-l</rows>
<cols>-l</cols>
</element> 110 - <element>
<elNarne>button4</elNarne>
<type>graρhιc</type>
<src>C:/vizi orχ/betaGraphics/button4.jpg</src>
<top>22l</toρ> 115 <left>528</left>
<height>42</heighc>
<width>97</width>
<zOrder>6</zOrder>
<url /> 120 <font />
<color />
<size />
<rows>"K/ro s>
<cols>-K/cols> 125 </elemenc>
- <e|ement> <elName>text</elName> <type>graphic</type> <src>C:/vjzi orx/betaGraphlcε/text.jpg</src>
130 <top>39K/top>
<left>0</left>
<height>89</height>
< idth>52l</width>
<zOrder>2</zθrder> 135 <url />
<font />
<color/>
<size />
< rows>-l </rows> 140 <cols>-K/cols>
</eie ent>
- <element> <elName>textarea8</elName> <type>ta</type>
145 <src /> <top>406</top>
<left>84</left>
<height>S0</height>
< ldth>438</ idth> 150 <zOrder>9</zOrder>
<url />
<font>arial</font>
<color> #000000</color>
<size>normal</size> 155 <ro s>5</rows>
<cols>80</cols>
</elemenc>
- <element> <elName>localogo</elName>
160 <type>graphlc</tyρe>
<src>C:/vlziworx/betaGraρhics/localogo.jpg</src>
<top>408</top>
<left>17</left>
<height>51</helght> 165 < idth>55</ idth>
<zθrder 7</zOrder>
<url />
<font />
< color /> 170 <size />
< rows>-l </ro s > <cols>-K/cols> </element
- <element>
175 <elName>ad</elName>
< ype>graphic</type>
<src>C:/viziwop /betaGraρhics/ad.gif</src>
<left>522</left> 180 <height>29</helght>
<width>l08</width>
<zθrder>8</zOrder>
<url />
<font /> 185 <color />
<slze />
<rows>-l</rows>
<cols>-K/co)s>
</e|ement> 190 <triggers>
<trigger>
<tlme>2</time>
<prop>cxc</ρrop>
<elName>textarea9</elName> 195 <ρaram>the first prompc</ρararn>
</trigger>
<trigger>
<tlme>4</time>
<prop> xt</prop> 200 <elName>textarea9</elName>
<pararn>che second prompt</param>
</trigger>
<cr)gger>
<time>6</time> 205 <prop>src</prop>
<elName>ad</elName>
<param>C:/viziworxTestfiles/bec3Graρhϊcs/amazon pg</ρaram>
</trigger>
<crigger> 210 <time>8</time>
<prop>txc</ρroρ>
<eIName>textarea9</elName>
<ρaram>the final prompt</ρaram>
</trlgger> 215 </trlggers>
</page>
</pages>
</project>
Appendix B 220 This appendix shows code generated from the XML file listed in Appendix A employing a parser of the present invention. Steps shown in bold reference steps shown in figure 3.
[Step 302]
225
<html>
<head>
<title>indejc</title>
< ! -- Emulation: index.htm -->
230 < l — Code generated by viziworx, Inc , -- > e ! --Pleaee contact us at infofflviziworx.com-->
< ! s
<ι --Project Name: demo project--?
<!--Page Na e: index--> 235 <! --Author: Steve Markel-->
<!--Daεe Authored: s/ll/2000 1:13:21 PM--> !- -Layout: -->
<t —Notes: simple one page enhancement- ->
<)
240
[Step 304] c!-(noπe) ■
245 [Seep 306]
<εcripc language="javascript "> var timerDelta=50,-
Figure imgf000019_0001
var tirneriD; var ms » 0; var iaT = 0 ; var pauseGo - 0 ; 255 var aTriggere = new Array ( 2*1000, "textarea8( 'the first prompt:')", 4*1000, "πextareaθ ( ' second prompt' ) " , 260 6*1000, "ad( >C:/viziworx/betaGraphics/atnazon. jpg') ", 8*1000, "textareaβ ( 'final prompt')", 99999999, "") ;
265 [Steps 308 and 310] function fnav(thelmg) { document. all ["nsv] .arc = thelmg; } function fbuttonl (thelmg) { document, ll ["buttonl"] .ere =
270 thelmg; function £button2 (thelmg) { document .all ["button2"] .src thelmg; }
275 function buttons (thelmg) { document.all ["buttons ") .src thelmg; } function fbutton (thelmg) { document .all ["button4"] .src «. thelmg ; } 280 function ftext (thelmg) { documen .all ["text"] .src -> thelmg;
} function itextareaθ (theTxc) { window. ex areaa . innerText =
285 theTκt; } function flocalogot thelmg) { document .all ["localogo"] .src = thelmg; }
290 function fad(theimg) { documen .all ["ad"] .src thelmg; }
</acript
[Step 312]
295
<script language="javascript"> var s = 0,- var state = 0;
300 function secs2aac(fc) { var tSeσs = Math-floo (t/1000) ; var hrs = Math, floor (tSecs/3600) ; var minB = Math. loor ( (tsece- (hre*3600) ) / SO); 305 var sees = tSeσs- ( (hrs*3S00) + (mins*60) ) ,■ var ms = t % 1000; if(hrs>23) return "",- i (hrs < 10) hrs = "0" + hrs; 310 if (mine < 10) mine = "0" + mins; iffseca 10) sees = "0" + secs if (ms < 10) ms u "00" + ms,- if(ms < 100) ms = "0" + ms; if (ms == o) ms = "000",■ 315 return hrs + ":" + mins + ":" + aecs + "." + mB;
} function startscop O { if (state == 0) { 320 ms = 0 ; atate = 1; then = new DateO ; then. setTime (then. ecTime() - me) ; document.WMPlay.Play0 ; 325 window. frmTr. cmdMPGo.value="Pause" ,-
} ~ else { state = 0; now = new Date ( ) ; 330 ms = now.getTimetJ - then,getTime 0 ; window. IblTime . innerText = eecs2asc(ms) ; document . WMPlay. Pause ( ) ; window. fr Tr. cmdMPGo.value=" Go
} ~~
335 ) function timeDiøplay () { timerlD = setTimeou ( " timeDlspla 0 ; " , 50); if (state «=« 1) { 340 now = new DateO; ms = now.getTimeO - chen.getTimeO ; windo . IblTim . innerText = βecs2asc(mB) ; 345 function cmdMPGo_onclic () { if (cimerlD) clearTi eou (ci erlD) cimeDisplay() ;
350 startsto ( ) ; btnGo_onclick() ; } function cmdMPStop^onclic O {
355 documen .WMPlay.Stop () ,- document .WMPlay, CurrentPoaition = 0; state = 0; window. IblTime . innerText = eecs2asc ( 0 ) ,- windo . : frmTr . cmdMPGo . value= " Go " ;
360 } function previe () { var func, ps, pe, param,- if (aTriggers [iaT] <= ms) { 365 func = "f" + aTriggers [iaT+1] ,- aval (func) ; iaT = iaT + 2;
} is = as + timβrDelta,- 370 timerlD = setTimeout ("Preview() " , cimerDelta) ; } function btnStop_onclick() { clearTimeou (timerlD) ; 375 pauaaGo = 0; } function btnPause_onclιck() { if (paueeGo == 0) { 380 btnStopO; pauseGo = 1;
} else {
Preview!) ; 385 pauseGo = o ;
} } function bεnQo_onclick() { 390 var offset; pauεeGo = 0; for (me=0,iaTa0; aTriggers [iaT] < ms; iaT=iaT+2) {} preview () ,- }
395
[Step 314] function window_oπload ( ) [
400 var po = documen .body. innerHTM . lastlndaxof! "< 1-- scbody -->"); if(pO > -1) { var pi = document.body,innerHTML.indexOf ("<! [CDATA[", po)+9; if (ρl > 8) { //if not, there was no imported html var B = "<D1V></DIV>] ]&gt,-" 405 var p2 = document, ody. innerHTML. indexO (s) ; var cl = p2-pl; document.body.innerHTML = document. ody. innerHTML. substr (pi, cl) + "</div>" document, ody. innerHTML. aubstr(p2+s . length) ; 410 }
} window. f mT . cmdMPGo . disabled=true ; window. f mT . cmdMPSto . isabled= rue ;
415 document .WMPlay .FileName = "demo.asf"; documen -WMPlay.ShowControls = falee,- doσument. MPlay,Autostart a false; window. f mTr. cmdMPGo.disabled=falεe; indow. frmTr. cmdMPSto . disable afalse ;
420 } ~
</script> </head>
425
[Step 316] < ! -- none
430 [Step 318]
<body LANGUAGE= "javascript" onload= "return window_onload ( ) " >
< ! -- s body___- - >
435 <div id=" divTr" etyle= "position: absolute,- top:500; left:0; E-index:0»>
<£orm id«." frmTr" name=" frmTr"?
<table border»"0">
<tr>
<td> 440 <INPUT type="button" value=»»Go" id=" cmdMPGo" name=» cmdMPGo"
LANGUAGES" avascript" onclicks "return cmdMPGo_onclick() " />
<INPUT type- "button" value="Stop» id=" cmdMPStop" name=" cmdMPStop"
LA GUAGE="javascript" oncliek="r urn cmdMPStoρ_oιιclick() " />
</td> 445 <td style=« COLOR: #ff0000; FONT-FAMILY: Verdana; FONT-SI2;E: lOpt; FONT-WEIGHT: bold" bgcolor="#000000">
<LABEL name="lblTime" id="IblTime">00 :00:00 , 000:/IJABEL>
</td>
■s/trs. 450 </table>
</form>
</div>
455 [step 320]
Figure imgf000022_0001
height="392 " width=" S23" standby= "Loading M crosoft windows Media Player
465
Figure imgf000022_0002
<img ="nav" name="nav" border» 0 src="C: v ziworx/betaGraphice nav. pg» </div> 470 <div id="divbuttonl" style="ρoøition:absolute,- top: l08 ; left : 530 ; z-index:3" hre = " " >
<img id="buttonl" name="buttonl" border="0" src="C:/viziworx/betaGraphiαs/buttonl. pg" />
</div> 475 <div id="divbutton2" style="position:absolute; top:144; left: 526; z-index:4" href="">
<i g id="button2" name="button2" border="0" src="C:/viziworx/betaGraphics/button2. jpg" />
</div> 480 <div id="divbucton3" style="position:absolute; top:l87; left:525; z-indβx:S" href="">
■cimg id="button3" name="button3" border="0" src= "C:/viziworx/betaGraphics/button3. jpg" />
■=/div 485 <div id="divbutton4 " style= nposition ;absolute; top: 221; left : S28 ; z-index: 6" href= " ">
<img id="hutton4 " name="button4 " border="0" src-"C: /viziwor3c/betaGraρhiea/buttorι4 - jpg" /> ς/div? 490 ■ "posit ion : bsolute; top: 39l; left : 0 ; z-index: 2 "
Figure imgf000023_0001
<img id="text" name="text" border="0" src»"C:/viziworx/betaGraphiαs/text . jpg"
/>
</div>
495 <div id="textarea8" style=npoεifcion:absolute,- top:406; left: 84 ,- width.-438; height:50; color:#000000; font-size:normal; font-family: arial; z-index: 9" >
Preview Text Area </div> 500 style™ "position: absolute,- toρ:408; left:17; z-indeχ:7"
Figure imgf000023_0002
<img id="localogo" name="localogo" bordera'O"
Brc»"C:/viziworx/betaGraphice/localogo. jpg" />
</div> 505 <div id="divad" style-."position: bsolute; top:418; left:522; z-indeκ:8" hre£="">
<img id="ad" name="ad" borderB'O" src="C:/vi2iworx/betaQraρhics/ad.gi " />
</div>
</body> 510 </html>

Claims

Claims
What is claimed is: 1. A method of television enhancement produced by the steps of: using a platform independent television enhancement file comprismg elements and attributes of said elements; and parsing said television enhancement file to produce an output file that may be viewed with a specific platform.
2. The method of claim 1 wherein said platform independent television is contained in a database and in said using step, the term using means accessing, said method further comprising the step of saving said output file.
3. The method of claim 1 wherein said method for creating said television enhancement is a presentation, said term using means accessing, said parsing step comprismg: applying a first parsing script to said enhancement file to produce a first output file that may be viewed using a web browser and media player; and applying a second parsing script to said enhancement file to produce a second output file that may be viewed with a set top box.
4. The method of claim 1 wherein in the step of using, the term using means editing such that said editing specifies said elements and attributes, said method being for creating a television enhancement presentation, said parsing step comprising: applying a first parsing script to said enhancement file to produce a first output file that may be viewed using a web browser and media player; and applying a second parsing script to said enhancement file to produce a second output file that may be viewed with a set top box.
5. The method of claim 3 wherein said enhancement file further comprises: XML compliant tags for elements, triggers, and administrative information comprising enhancement file name and enhancement file creation date.
6. The method of claim 3 wherein said television enhancement file is a text file.
7. The method of claim 3 further comprising: displaying said first output file in a browser window.
8. The method of claim 3 wherein said step of applying a second parsing script further comprises: specifying an HTML version for said second output file.
9. The method of claim 3 wherein a link is associated with at least one of said elements.
10. The metliod of claim 3 wherein said attributes of said elements further comprises: a z order value for at least one of said elements.
11. The method of claim 3 wherein said first parsing script is an XSL transformation file.
12. The method of claim 3 wherein said second parsing script is an XSL transformation file.
13. The method of claim 3 further comprising: storing said second output file.
14. The method of claim 3 wherein said second parsing script imports HTML code into said second output file.
15. The method of claim 3 wherein accessing said enhancement file further comprises: accessing a database.
16. The method of claim 3 wherein said second parsing script is operable to translate a color value.
17. The method of claim 1 or 2 wherein said enhancement file is XML compliant.
18. The method of claim 17 wherein said step of parsing further comprises: applying an XSL transformation to said enhancement file.
19. The method of claim 17 wherein said step of parsing further comprises: translating a color value associated with one of said elements.
20. A system for developing television enhancements comprising: a computer; a database; a web browser; and a parser operable to parse a platform independent television enhancement file contained in said database and to produce an output file that may be viewed employing said browser.
21. The system of claim 20 further comprising: a parser component operable to enable display of a media player if said television enhancement file contains an element representative of a television image.
22. The system of claim 20 wherein said parser is operable to create an output file for a specific platform.
23. The system of claim 20 wherein said parser is operable to translate a color value associated with an element contained in said television enhancement file.
24. A parser for producing a platform specific television enhancement file comprising: a function to access a platform independent television enhancement file comprising project information, a description of an element, the position of said element, and a time at which said element may be rendered. a function to create an HTML header containing said project information;
PCT/US2001/026369 2000-08-21 2001-08-21 System and method for television enhancement WO2002017639A2 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CA002419409A CA2419409A1 (en) 2000-08-21 2001-08-21 System and method for television enhancement
AU8668001A AU8668001A (en) 2000-08-21 2001-08-21 System and method for television enhancement
EP01966143A EP1312214A2 (en) 2000-08-21 2001-08-21 System and method for television enhancement
JP2002522202A JP2004519116A (en) 2000-08-21 2001-08-21 System and method for television enhancement

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US22706300P 2000-08-21 2000-08-21
US60/227,063 2000-08-21
US09/933,927 2001-08-21
US09/933,927 US7162697B2 (en) 2000-08-21 2001-08-21 System and method for distribution of interactive content to multiple targeted presentation platforms

Publications (3)

Publication Number Publication Date
WO2002017639A2 true WO2002017639A2 (en) 2002-02-28
WO2002017639A3 WO2002017639A3 (en) 2002-05-30
WO2002017639B1 WO2002017639B1 (en) 2003-03-13

Family

ID=26921118

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2001/026369 WO2002017639A2 (en) 2000-08-21 2001-08-21 System and method for television enhancement

Country Status (6)

Country Link
US (1) US7162697B2 (en)
EP (1) EP1312214A2 (en)
JP (1) JP2004519116A (en)
AU (1) AU8668001A (en)
CA (1) CA2419409A1 (en)
WO (1) WO2002017639A2 (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003085624A1 (en) * 2002-04-05 2003-10-16 Unbounded Access Ltd. Networked accessibility enhancer system
WO2003090468A1 (en) * 2002-04-19 2003-10-30 Opentv, Inc. Supporting common interactive television functionality through presentation engine syntax
EP1542472A1 (en) * 2003-12-10 2005-06-15 Canal + Technologies Method and apparatus for information retrieval in interactive digital television systems
WO2006024309A1 (en) * 2004-08-30 2006-03-09 Telecom Italia S.P.A. Method and system for providing interactive services in digital television
JP2006528864A (en) * 2003-07-24 2006-12-21 サムスン エレクトロニクス カンパニー リミテッド Information recording medium on which scenario is recorded, recording apparatus and recording method, reproducing apparatus for information recording medium, and scenario searching method
WO2012012214A1 (en) * 2010-07-23 2012-01-26 The Directv Group, Inc. Method for creating interactive applications for television
EP2606651A1 (en) * 2010-08-20 2013-06-26 Sony Corporation Virtual channel declarative script binding
EP2902912A4 (en) * 2012-09-28 2016-10-19 Sony Corp Information processing device, portable terminal, information processing method, program, and information processing system
WO2021111905A1 (en) * 2019-12-06 2021-06-10 ソニーグループ株式会社 Information processing system, information processing method, and storage medium

Families Citing this family (101)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6363192B1 (en) * 1998-12-23 2002-03-26 Corning Cable Systems Llc Composite cable units
US20020059629A1 (en) * 2000-08-21 2002-05-16 Markel Steven O. Detection and recognition of data receiver to facilitate proper transmission of enhanced data
US7913286B2 (en) * 2000-10-20 2011-03-22 Ericsson Television, Inc. System and method for describing presentation and behavior information in an ITV application
GB0107882D0 (en) * 2001-03-29 2001-05-23 Ibm Parsing messages with multiple data formats
US8413205B2 (en) * 2001-09-19 2013-04-02 Tvworks, Llc System and method for construction, delivery and display of iTV content
US11388451B2 (en) 2001-11-27 2022-07-12 Comcast Cable Communications Management, Llc Method and system for enabling data-rich interactive television using broadcast database
US8365230B2 (en) 2001-09-19 2013-01-29 Tvworks, Llc Interactive user interface for television applications
US8042132B2 (en) 2002-03-15 2011-10-18 Tvworks, Llc System and method for construction, delivery and display of iTV content
US7062502B1 (en) * 2001-12-28 2006-06-13 Kesler John N Automated generation of dynamic data entry user interface for relational database management systems
TWI247295B (en) * 2002-03-09 2006-01-11 Samsung Electronics Co Ltd Reproducing method and apparatus for interactive mode using markup documents
US7703116B1 (en) 2003-07-11 2010-04-20 Tvworks, Llc System and method for construction, delivery and display of iTV applications that blend programming information of on-demand and broadcast service offerings
US8707354B1 (en) 2002-06-12 2014-04-22 Tvworks, Llc Graphically rich, modular, promotional tile interface for interactive television
US8352983B1 (en) 2002-07-11 2013-01-08 Tvworks, Llc Programming contextual interactive user interface for television
US11070890B2 (en) 2002-08-06 2021-07-20 Comcast Cable Communications Management, Llc User customization of user interfaces for interactive television
EP1392060A1 (en) * 2002-08-21 2004-02-25 Canal+ Technologies Société Anonyme System and method for broadcast testing
US8220018B2 (en) 2002-09-19 2012-07-10 Tvworks, Llc System and method for preferred placement programming of iTV content
EP1552516A4 (en) * 2002-10-17 2006-09-13 Samsung Electronics Co Ltd Information storage medium including device-aspect-ratio information, method and apparatus therefor
US7793233B1 (en) 2003-03-12 2010-09-07 Microsoft Corporation System and method for customizing note flags
US11381875B2 (en) 2003-03-14 2022-07-05 Comcast Cable Communications Management, Llc Causing display of user-selectable content types
US8578411B1 (en) 2003-03-14 2013-11-05 Tvworks, Llc System and method for controlling iTV application behaviors through the use of application profile filters
US10664138B2 (en) 2003-03-14 2020-05-26 Comcast Cable Communications, Llc Providing supplemental content for a second screen experience
US8416952B1 (en) 2003-07-11 2013-04-09 Tvworks, Llc Channel family surf control
US9615061B2 (en) * 2003-07-11 2017-04-04 Tvworks, Llc System and method for creating and presenting composite video-on-demand content
US20050081218A1 (en) * 2003-08-26 2005-04-14 Acott Troy Steven Configurable simulation of virtual machine behavior
US7913237B2 (en) * 2003-08-26 2011-03-22 Ensequence, Inc. Compile-time code validation based on configurable virtual machine
US8819734B2 (en) 2003-09-16 2014-08-26 Tvworks, Llc Contextual navigational control for digital television
US7480894B2 (en) * 2004-02-20 2009-01-20 International Business Machines Corporation Method and system for retaining formal data model descriptions between server-side and browser-side javascript objects
US7822992B2 (en) * 2004-04-07 2010-10-26 Microsoft Corporation In-place content substitution via code-invoking link
US7890744B2 (en) * 2004-04-07 2011-02-15 Microsoft Corporation Activating content based on state
WO2005103929A1 (en) * 2004-04-20 2005-11-03 Pluck Corporation Method, system, and computer program product for sharing information within a global computer network
US7865508B2 (en) * 2004-04-23 2011-01-04 Tvworks, Llc Data structures and methods adapted for heterogeneous clients in an information distribution system
US7908295B2 (en) 2004-04-23 2011-03-15 Tvworks, Llc Extending data records for dynamic data and selective acceptance based on hardware profile
US11336971B2 (en) 2004-04-23 2022-05-17 Comcast Cable Communications Management, Llc Application programming interface combining asset listings
US7849064B2 (en) 2004-04-23 2010-12-07 Tvworks, Llc Application programming interface combining asset listings
US7610586B2 (en) * 2004-04-30 2009-10-27 Tvworks, Llc Resource manager for clients in an information distribution system
US20060026555A1 (en) * 2004-07-13 2006-02-02 International Business Machines Corporation Method and apparatus to support multiple hierarchical architectures
MX2007002101A (en) * 2004-08-21 2007-08-14 Co Exprise Inc Methods, systems, and apparatuses for extended enterprise commerce.
US7788589B2 (en) 2004-09-30 2010-08-31 Microsoft Corporation Method and system for improved electronic task flagging and management
US7712049B2 (en) * 2004-09-30 2010-05-04 Microsoft Corporation Two-dimensional radial user interface for computer software applications
US7818667B2 (en) * 2005-05-03 2010-10-19 Tv Works Llc Verification of semantic constraints in multimedia data and in its announcement, signaling and interchange
US8189472B2 (en) * 2005-09-07 2012-05-29 Mcdonald James F Optimizing bandwidth utilization to a subscriber premises
US8688671B2 (en) 2005-09-14 2014-04-01 Millennial Media Managing sponsored content based on geographic region
US7752209B2 (en) 2005-09-14 2010-07-06 Jumptap, Inc. Presenting sponsored content on a mobile communication facility
US9471925B2 (en) 2005-09-14 2016-10-18 Millennial Media Llc Increasing mobile interactivity
US7912458B2 (en) 2005-09-14 2011-03-22 Jumptap, Inc. Interaction analysis and prioritization of mobile content
US10038756B2 (en) 2005-09-14 2018-07-31 Millenial Media LLC Managing sponsored content based on device characteristics
US8660891B2 (en) 2005-11-01 2014-02-25 Millennial Media Interactive mobile advertisement banners
US9058406B2 (en) 2005-09-14 2015-06-16 Millennial Media, Inc. Management of multiple advertising inventories using a monetization platform
US7769764B2 (en) 2005-09-14 2010-08-03 Jumptap, Inc. Mobile advertisement syndication
US9076175B2 (en) 2005-09-14 2015-07-07 Millennial Media, Inc. Mobile comparison shopping
US20090240568A1 (en) * 2005-09-14 2009-09-24 Jorey Ramer Aggregation and enrichment of behavioral profile data using a monetization platform
US8832100B2 (en) 2005-09-14 2014-09-09 Millennial Media, Inc. User transaction history influenced search results
US10911894B2 (en) 2005-09-14 2021-02-02 Verizon Media Inc. Use of dynamic content generation parameters based on previous performance of those parameters
US7577665B2 (en) 2005-09-14 2009-08-18 Jumptap, Inc. User characteristic influenced search results
US8989718B2 (en) 2005-09-14 2015-03-24 Millennial Media, Inc. Idle screen advertising
US9201979B2 (en) 2005-09-14 2015-12-01 Millennial Media, Inc. Syndication of a behavioral profile associated with an availability condition using a monetization platform
US20110313853A1 (en) * 2005-09-14 2011-12-22 Jorey Ramer System for targeting advertising content to a plurality of mobile communication facilities
US9703892B2 (en) 2005-09-14 2017-07-11 Millennial Media Llc Predictive text completion for a mobile communication facility
US10592930B2 (en) 2005-09-14 2020-03-17 Millenial Media, LLC Syndication of a behavioral profile using a monetization platform
US8812526B2 (en) 2005-09-14 2014-08-19 Millennial Media, Inc. Mobile content cross-inventory yield optimization
US8805339B2 (en) 2005-09-14 2014-08-12 Millennial Media, Inc. Categorization of a mobile user profile based on browse and viewing behavior
US8103545B2 (en) 2005-09-14 2012-01-24 Jumptap, Inc. Managing payment for sponsored content presented to mobile communication facilities
US8532633B2 (en) 2005-09-14 2013-09-10 Jumptap, Inc. System for targeting advertising content to a plurality of mobile communication facilities
US7676394B2 (en) 2005-09-14 2010-03-09 Jumptap, Inc. Dynamic bidding and expected value
US7702318B2 (en) 2005-09-14 2010-04-20 Jumptap, Inc. Presentation of sponsored content based on mobile transaction event
US8819659B2 (en) 2005-09-14 2014-08-26 Millennial Media, Inc. Mobile search service instant activation
US8503995B2 (en) 2005-09-14 2013-08-06 Jumptap, Inc. Mobile dynamic advertisement creation and placement
US20100121705A1 (en) * 2005-11-14 2010-05-13 Jumptap, Inc. Presentation of Sponsored Content Based on Device Characteristics
US7747557B2 (en) 2006-01-05 2010-06-29 Microsoft Corporation Application of metadata to documents and document objects via an operating system user interface
US7797638B2 (en) 2006-01-05 2010-09-14 Microsoft Corporation Application of metadata to documents and document objects via a software application user interface
CN100409662C (en) * 2006-02-14 2008-08-06 深圳创维数字技术股份有限公司 Automatically projected file making method and playing method for the same
JP5053298B2 (en) * 2006-03-06 2012-10-17 ヤフー! インコーポレイテッド System for advertising on mobile devices
JP2007304669A (en) * 2006-05-09 2007-11-22 Fuji Xerox Co Ltd Method and program for controlling electronic equipment
US8726174B2 (en) * 2006-06-26 2014-05-13 Oracle America, Inc. Method and system for showing a display panel in a graphical user interface
US7761785B2 (en) * 2006-11-13 2010-07-20 Microsoft Corporation Providing resilient links
US8584147B2 (en) 2006-12-21 2013-11-12 Microsoft Corporation Managed execution environment for software application interfacing
US20080313267A1 (en) * 2007-06-12 2008-12-18 International Business Machines Corporation Optimize web service interactions via a downloadable custom parser
US8713608B2 (en) * 2007-07-12 2014-04-29 At&T Intellectual Property I, Lp System for presenting media services
US9990439B2 (en) * 2007-08-14 2018-06-05 Nbcuniversal Media, Llc Flexible method and system for providing digital content
US20090164300A1 (en) * 2007-12-21 2009-06-25 Yahoo! Inc. Application program interface and graphical user interface for providing a user interface for targeting mobile advertisements in a mobile marketing environment
US20090163186A1 (en) * 2007-12-21 2009-06-25 Yahoo! Inc. Application program interface and graphical user interface for editorial review of mobile advertisement campaigns
US20090164286A1 (en) * 2007-12-21 2009-06-25 Yahoo! Inc. Application program interface and graphical user interface for distributing an advertisement budget in a mobile environment
US20090240628A1 (en) * 2008-03-20 2009-09-24 Co-Exprise, Inc. Method and System for Facilitating a Negotiation
US11832024B2 (en) 2008-11-20 2023-11-28 Comcast Cable Communications, Llc Method and apparatus for delivering video and video-related content at sub-asset level
US10430868B2 (en) * 2010-06-18 2019-10-01 Cox Communications, Inc. Content purchases and rights storage and entitlements
US10210160B2 (en) 2010-09-07 2019-02-19 Opentv, Inc. Collecting data from different sources
US9699503B2 (en) 2010-09-07 2017-07-04 Opentv, Inc. Smart playlist
US8949871B2 (en) 2010-09-08 2015-02-03 Opentv, Inc. Smart media selection based on viewer user presence
US9112623B2 (en) 2011-06-06 2015-08-18 Comcast Cable Communications, Llc Asynchronous interaction at specific points in content
US8898253B2 (en) 2011-11-08 2014-11-25 Adobe Systems Incorporated Provision of media from a device
US8768924B2 (en) * 2011-11-08 2014-07-01 Adobe Systems Incorporated Conflict resolution in a media editing system
US9288248B2 (en) 2011-11-08 2016-03-15 Adobe Systems Incorporated Media system with local or remote rendering
US9373358B2 (en) 2011-11-08 2016-06-21 Adobe Systems Incorporated Collaborative media editing system
US9348490B2 (en) * 2012-09-14 2016-05-24 Ca, Inc. User interface with configuration, registration, and runtime selection of views
US11115722B2 (en) 2012-11-08 2021-09-07 Comcast Cable Communications, Llc Crowdsourcing supplemental content
US9553927B2 (en) 2013-03-13 2017-01-24 Comcast Cable Communications, Llc Synchronizing multiple transmissions of content
US10880609B2 (en) 2013-03-14 2020-12-29 Comcast Cable Communications, Llc Content event messaging
US20140325323A1 (en) * 2013-04-28 2014-10-30 Tencent Technology (Shenzhen) Company Limited Online video playing method and apparatus and computer readable medium
US9621611B2 (en) 2014-06-30 2017-04-11 Apple Inc. Providing content in a platform-specific format
US11783382B2 (en) 2014-10-22 2023-10-10 Comcast Cable Communications, Llc Systems and methods for curating content metadata
US11886381B2 (en) 2021-06-28 2024-01-30 Red Hat, Inc. Meta-format and technique to produce tutorials for multiple publishing formats

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5951639A (en) * 1996-02-14 1999-09-14 Powertv, Inc. Multicast downloading of software and data modules and their compatibility requirements

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5524193A (en) 1991-10-15 1996-06-04 And Communications Interactive multimedia annotation method and apparatus
AU4027393A (en) 1992-04-10 1993-11-18 Avid Technology, Inc. Digital audio workstation providing digital storage and display of video information
US5680639A (en) 1993-05-10 1997-10-21 Object Technology Licensing Corp. Multimedia control system
AU5990194A (en) 1993-05-10 1994-12-12 Taligent, Inc. Audio synchronization system
US5583980A (en) 1993-12-22 1996-12-10 Knowledge Media Inc. Time-synchronized annotation method
AU692797B2 (en) 1994-04-29 1998-06-18 At & T Corporation Telecommunications signaling arrangement for terminals without signaling capability
US5600775A (en) 1994-08-26 1997-02-04 Emotion, Inc. Method and apparatus for annotating full motion video and other indexed data structures
US6006256A (en) 1996-03-11 1999-12-21 Opentv, Inc. System and method for inserting interactive program content within a television signal originating at a remote network
US5929849A (en) 1996-05-02 1999-07-27 Phoenix Technologies, Ltd. Integration of dynamic universal resource locators with television presentations
JP3895804B2 (en) 1996-07-26 2007-03-22 株式会社日立コミュニケーションテクノロジー Two-way communication system
US5931908A (en) 1996-12-23 1999-08-03 The Walt Disney Corporation Visual object present within live programming as an actionable event for user selection of alternate programming wherein the actionable event is selected by human operator at a head end for distributed data and programming
US6006241A (en) 1997-03-14 1999-12-21 Microsoft Corporation Production of a video stream with synchronized annotations over a computer network
US6173317B1 (en) 1997-03-14 2001-01-09 Microsoft Corporation Streaming and displaying a video stream with synchronized annotations over a computer network
GB2327837B (en) 1997-07-29 1999-09-15 Microsoft Corp Providing enhanced content with broadcast video
US6201538B1 (en) 1998-01-05 2001-03-13 Amiga Development Llc Controlling the layout of graphics in a television environment
US6012098A (en) 1998-02-23 2000-01-04 International Business Machines Corp. Servlet pairing for isolation of the retrieval and rendering of data
US6154771A (en) 1998-06-01 2000-11-28 Mediastra, Inc. Real-time receipt, decompression and play of compressed streaming video/hypervideo; with thumbnail display of past scenes and with replay, hyperlinking and/or recording permissively intiated retrospectively
US6263332B1 (en) 1998-08-14 2001-07-17 Vignette Corporation System and method for query processing of structured documents
JP2000227851A (en) 1999-02-08 2000-08-15 Toshiba Corp Two-way communication system and recording medium
CA2363006C (en) 1999-02-17 2008-01-29 British Telecommunications Public Limited Company Document management method and tool
US6476833B1 (en) 1999-03-30 2002-11-05 Koninklijke Philips Electronics N.V. Method and apparatus for controlling browser functionality in the context of an application
US6938270B2 (en) * 1999-04-07 2005-08-30 Microsoft Corporation Communicating scripts in a data service channel of a video signal
US7346920B2 (en) * 2000-07-07 2008-03-18 Sonic Solutions, A California Corporation System, method and article of manufacture for a common cross platform framework for development of DVD-Video content integrated with ROM content
WO2001028235A1 (en) 1999-10-12 2001-04-19 Goldscheider Daniel F Method and apparatus for integrated internet access, television control and transaction initiation
US6785902B1 (en) * 1999-12-20 2004-08-31 Webtv Networks, Inc. Document data structure and method for integrating broadcast television with web pages
KR100351817B1 (en) 2000-01-13 2002-09-11 엘지전자 주식회사 open-cable receive system and method for diagnosing of open-cable receive system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5951639A (en) * 1996-02-14 1999-09-14 Powertv, Inc. Multicast downloading of software and data modules and their compatibility requirements

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
FERNANDEZ PANADERO M C ET AL: "Mass-customizing electronic journals" [ONLINE], 10 May 1999 (1999-05-10), pages 225-235, XP002177409 *
JOSE ALVEAR: "REALNETWORKS' REALAUDIO AND REALVIDEO" WEB DEVELOPPER.COM GUIDE TO STREAMING MULTIMEDIA, NEW YORK: JOHN WILEY & SONS, US, 1998, pages 183-202, XP002150113 ISBN: 0-471-24822-3 *
LI Q ; OZSOYOGLU Z M ; WAGNER R ; KAMBAYASHI Y ; ZHANG Y : " XML based text TV" PROCEEDINGS OF WISE 2000, 19 - 21 June 2000, pages 109-113, XP002192977 Hong Kong, China *

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003085624A1 (en) * 2002-04-05 2003-10-16 Unbounded Access Ltd. Networked accessibility enhancer system
WO2003090468A1 (en) * 2002-04-19 2003-10-30 Opentv, Inc. Supporting common interactive television functionality through presentation engine syntax
US7055169B2 (en) 2002-04-19 2006-05-30 Opentv, Inc. Supporting common interactive television functionality through presentation engine syntax
JP2006528864A (en) * 2003-07-24 2006-12-21 サムスン エレクトロニクス カンパニー リミテッド Information recording medium on which scenario is recorded, recording apparatus and recording method, reproducing apparatus for information recording medium, and scenario searching method
EP1542472A1 (en) * 2003-12-10 2005-06-15 Canal + Technologies Method and apparatus for information retrieval in interactive digital television systems
WO2005060260A1 (en) * 2003-12-10 2005-06-30 Thomson Licensing A method and device for recovering information in interactive digital tv systems
KR101142943B1 (en) * 2003-12-10 2012-06-21 톰슨 라이센싱 A method and device for recovering information in interactive digital tv systems
WO2006024309A1 (en) * 2004-08-30 2006-03-09 Telecom Italia S.P.A. Method and system for providing interactive services in digital television
WO2012012214A1 (en) * 2010-07-23 2012-01-26 The Directv Group, Inc. Method for creating interactive applications for television
US8959564B2 (en) 2010-07-23 2015-02-17 The Directv Group, Inc. Method for creating interactive applications for television
EP2606651A4 (en) * 2010-08-20 2013-12-25 Sony Corp Virtual channel declarative script binding
KR101431885B1 (en) 2010-08-20 2014-08-26 소니 주식회사 Virtual channel declarative object script binding
US8898723B2 (en) 2010-08-20 2014-11-25 Sony Corporation Virtual channel declarative script binding
EP2606651A1 (en) * 2010-08-20 2013-06-26 Sony Corporation Virtual channel declarative script binding
US9648398B2 (en) 2010-08-20 2017-05-09 Saturn Licensing Llc Virtual channel declarative script binding
US10805691B2 (en) 2010-08-20 2020-10-13 Saturn Licensing Llc Virtual channel declarative script binding
EP2902912A4 (en) * 2012-09-28 2016-10-19 Sony Corp Information processing device, portable terminal, information processing method, program, and information processing system
US9843830B2 (en) 2012-09-28 2017-12-12 Saturn Licensing Llc Information processing apparatus, mobile terminal, information processing method, program, and information processing system
EP3460670A1 (en) * 2012-09-28 2019-03-27 Saturn Licensing LLC Information processing device, portable terminal, information processing method, program, and information processing system
US10841636B2 (en) 2012-09-28 2020-11-17 Saturn Licensing Llc Information processing apparatus, mobile terminal, information processing method, program, and information processing system
WO2021111905A1 (en) * 2019-12-06 2021-06-10 ソニーグループ株式会社 Information processing system, information processing method, and storage medium

Also Published As

Publication number Publication date
JP2004519116A (en) 2004-06-24
WO2002017639A3 (en) 2002-05-30
EP1312214A2 (en) 2003-05-21
CA2419409A1 (en) 2002-02-28
WO2002017639B1 (en) 2003-03-13
AU8668001A (en) 2002-03-04
US7162697B2 (en) 2007-01-09
US20020088008A1 (en) 2002-07-04

Similar Documents

Publication Publication Date Title
WO2002017639A2 (en) System and method for television enhancement
US20020057286A1 (en) Device independent video enhancement scripting language
US6760043B2 (en) System and method for web based enhanced interactive television content page layout
US6785902B1 (en) Document data structure and method for integrating broadcast television with web pages
US7143347B2 (en) Method and apparatus for reformatting of content for display on interactive television
AU2001289162A1 (en) Method and system of creating enhancement content to be displayed with a television program
US7284199B2 (en) Process of localizing objects in markup language documents
US7627814B1 (en) Hierarchical bit stream markup compilation and rendering
US20100161826A1 (en) NEWS ARCHITECTURE FOR iTV
US8713420B2 (en) Synchronization of web applications and media
US20050015815A1 (en) Interactive entertainment system for presenting supplemental interactive content together with continuous video programs
US20010014895A1 (en) Method and apparatus for dynamic software customization
US20020026637A1 (en) Set-top preview program
US20110093565A1 (en) Serving Font Files in Varying Formats Based on User Agent Type
US20100146376A1 (en) Audio/Video Program-Related Hyperlink Printer
US20110314368A1 (en) Method to Generate a Software Part of a Web Page and Such Software Part
US7526723B2 (en) System and method for emulating enhanced and interactive streaming media delivery
US20020091737A1 (en) System and method for rules based media enhancement
AU2001286680A2 (en) System and method for television enhancement
CN102231150A (en) Method and system for managing word stock of embedded browser
USRE47735E1 (en) Audio/video program-related hyperlink printer
Peng et al. A digital teletext service
Cho et al. Design of an integrated web browser for digital TVs
Valliappan et al. Integrating Interactive TV with the Web using XSL.
STANDARD Declarative Data Essence—Content Level

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PH PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG US UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
AK Designated states

Kind code of ref document: A3

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PH PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG US UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A3

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
WWE Wipo information: entry into national phase

Ref document number: 2001286680

Country of ref document: AU

WWE Wipo information: entry into national phase

Ref document number: 2002522202

Country of ref document: JP

Ref document number: 2419409

Country of ref document: CA

WWE Wipo information: entry into national phase

Ref document number: 2001966143

Country of ref document: EP

B Later publication of amended claims
WWP Wipo information: published in national office

Ref document number: 2001966143

Country of ref document: EP

REG Reference to national code

Ref country code: DE

Ref legal event code: 8642