US 20090199249 A1
A method for providing media to a user via an interactive media services client device coupled to a programmable media services server device includes receiving user input requesting on-screen comments to be provided with a media presentation and providing the user with a media presentation along with comments related to the media presentation.
1. A method implemented by a television set-top terminal (STT) coupled via a bi-directional communication network to a programmable remote server, wherein the STT is configured to receive a video program from a remote server, said method comprising steps of:
providing a selectable option to enable reception of a second video stream corresponding to a supplemental view of the video program;
receiving from the server via a tuner in the STT that is tuned to a single transmission channel a first plurality of streams corresponding to the video program, said first plurality of streams including an audio stream, a first video stream corresponding to a main view of the video program, and the second video stream;
receiving a viewer input from a viewer to select the selectable option;
responsive to receiving the viewer input, enabling the STT to process the second video stream; and
outputting by the STT audio corresponding to the audio stream and a composition corresponding to the first and second video streams as a television signal, wherein the audio and composition of the first video and second video are time synchronized according to time stamps specifications.
2. The method of
3. The method of
4. The method of
5. The method of
6. The method of
receiving from the server a supplementary data stream with respective portions associated with the presentation time of respective portions of the video program; and
outputting by the STT a television signal that contains the supplementary data stream and the first and second videos; wherein the supplementary data stream and the first video and second video streams are time synchronized according to time stamps specifications.
7. The method of
8. A method implemented by a server coupled to a television set-top terminal (STT) via a bi-directional communication network, the method comprising the steps of:
providing to the STT information including respective descriptions of rentable video program;
providing a selectable option to receive from the server a first supplemental data stream that is associated with the presentation time of respective portions of a rented video program, said first supplemental data stream being different to each stream in a first plurality of streams corresponding to the rented video program;
receiving a request from the STT for the rented video program;
establishing a dedicated network session between the server and the STT;
providing the first plurality of streams through the established network session;
receiving a viewer input from a viewer to select the selectable option;
responsive to receiving the viewer input, receiving from the server at least a portion of the first supplemental data stream and at least a respective portion of each stream in the first plurality of streams via a tuner in the STT;
outputting by the STT a composition of the received said portion of the first supplemental data stream and the received said respective portion of each stream in the first plurality of streams as a television signal, wherein the composition of the received said portion of the first supplemental data stream and the received said respective portion of each stream in the first plurality of streams are time synchronized according to time stamps specifications.
This application is a divisional of U.S. utility application having Ser. No. 11/678,653, filed Feb. 26, 2007, which is entirely incorporated herein by reference, which is a continuation of application Ser. No. 09/693,780 (now issued as U.S. Pat. No. 7,200,857), filed Oct. 20, 2000, which is a continuation-in-part of application Ser. No. 09/590,520 (now issued as U.S. Pat. No. 7,010,801), filed on Jun. 9, 2000 and which claims the benefit of U.S. Provisional Application No. 60/214,987, filed on Jun. 29, 2000, each of which are entirely incorporated herein by reference.
This invention relates in general to television systems, and more particularly, to the field of media on demand.
With recent advances in digital transmission technology, cable television systems are now capable of providing much more than the traditional analog broadcast video. In implementing enhanced programming, the home communication terminal (“HCT”), otherwise known as the set-top box, has become an important computing device for accessing video services and navigating a subscriber through a maze of available services. In addition to supporting traditional analog broadcast video functionality, digital HCTs (or “DHCTs”) now also support an increasing number of two-way digital services such as video-on-demand.
Typically, a DHCT is connected to a cable or satellite television network and includes hardware and software necessary to provide the functionality of the digital television system at the client's site. Preferably, some of the software executed by a DHCT is downloaded and/or updated via the cable television network. Each DHCT also typically includes a processor, communication components and memory, and is connected to a television or other display device, such as a personal computer. While many conventional DHCTs are stand-alone devices that are externally connected to a television, a DHCT and/or its functionality may be integrated into a television or personal computer, as will be appreciated by those of ordinary skill in the art.
As the number of video-on-demand movie choices increases, it is becoming increasingly important for video-on-demand providers to distinguish their video presentations by providing viewers with more options or features, along with the video-on-demand presentations, that will make the viewing experience more entertaining for the viewers. In addition, many viewers today are interested in knowing more about the movies that they are watching but simply do not have enough free time to locate and read such information. Therefore there exists a need to make the video-on-demand viewing experience more informative and entertaining.
The preferred embodiment of the invention can be viewed as a method for providing media to a user via an interactive media services client device coupled to a programmable media services server device, the method including steps of receiving user input requesting on-screen supplementary information be provided with a media presentation and providing the user with a media presentation along with supplements valid during applicable time intervals of the media presentation.
The invention can be better understood with reference to the following drawings. The components in the drawings are not necessarily drawn to scale, emphasis instead being placed upon clearly illustrating the principles of the present invention. In the drawings, like reference numerals designate corresponding parts throughout the several views.
The DNCS 23 provides complete management, monitoring, and control of the network's elements and broadcast services provided to users. In one implementation, the DNCS 23 uses a data insertion multiplexer 29 and a data QAM 30 to insert in-band broadcast file system (BFS) data into an MPEG-2 transport stream that is broadcast and received via DHCT's communication interface 42 and tuner system 45. The DNCS 23 also contains a session manager 34 that uses Digital Storage Media Command and Control (DSMCC) protocol to set up and maintain MOD sessions. The session manager 34 processes user to network (U-N) session signaling messages, manages allocation of session-related network resources, supports network management operations, acts as a point of contact to the network for the DHCT's 16 in the network 18 to establish individual sessions, and supports MOD services by providing the signaling interface to establish, maintain and release client initiated exclusive sessions.
A service application manager (SAM) server 25 is a server component of a client-server pair of components, with the client component being located at the DHCT 16. Together, the client-server SAM components provide a system in which the user can access services, which are identified by an application to run and a parameter, such as particular data content, specific to that service. The client-server SAM components also manage the life cycle of the applications on the system, including the definition, activation, and suspension of services they provide and the downloading of the applications into the DHCT 16 as necessary. MPEG-2 transport may be used to multiplex video, audio, and data in digital transmission channels such as channels transmitted downstream employing quadrature amplitude modulation (QAM). An MPEG-2 transport stream allows multiplexing of digital video, digital audio, and data. Multiple different video programs, each with one or more digital video streams, one or more digital audio streams, and/or multiple data streams can be multiplexed and transmitted over the same 6 MHz (or 8 MHz) RF frequency in which the DHCT's tuner tunes to. Hence, a digital transmission channel can carry the video, audio and data streams of programs of multiple television (TV) stations or on-demand video programs.
Applications on both the headend 11 and the DHCT 16 can access the data stored in a broadcast file system (BFS) server 28 in a similar manner to a file system found on operating systems. The BFS server 28 is a part of a broadcast file system that has a counterpart BFS client module 43 (
A VOD content manager 21 is responsible for managing the content on the VOD content servers 22. The MOD server application 19 controls both the VOD content manager 21 and the VOD content servers 22 and utilizes them to help deliver the video and audio streams that make up VOD services. In one embodiment, an MOD content manager and MOD content servers (not shown) could run respectively in parallel to the VOD content manager 21 and VOD content servers 22 to manage other types of on-demand media content. In an alternate embodiment an MOD content manager replaces the VOD content manager 21 and the MOD content servers replaces the VOD content servers 22. The QAM modulators that comprise the QAM group 24 receive the MPEG-2 transport streams from the VOD content servers 22, convert them into encrypted RF signals at a specified frequency (channel), and transmit them to a DHCT 16 via the network 18.
The QPSK modem 26 is responsible for transporting the out-of-band IP (internet protocol) datagram traffic between the distribution headend 11 and a DHCT 16. Data from the QPSK modem 26 is routed by headend router 27 within the headend 11. The headend router 27 is also responsible for delivering upstream application traffic to the various server applications 19 & 20.
The DHCT 16 may also include one or more wireless or wired interfaces, also called ports, for receiving and/or transmitting data to other devices. For instance, the DHCT 16 may feature USB (Universal Serial Bus), Ethernet (for connection to a computer), IEEE-1394 (for connection to media devices in an entertainment center), serial, and/or parallel ports. The user inputs may, for example, be provided by a computer or transmitter with buttons or keys located either on the exterior of the terminal or by a hand-held remote control device or keyboard that includes user-actuated buttons.
In one implementation, the DHCT 16 includes system memory 49, which includes flash memory 51 and dynamic random access memory (DRAM) 52, for storing various applications, modules and data for execution and use by the processor 44. Basic functionality of the DHCT 16 is provided by an operating system 53 that is primarily stored in flash memory 51. Among other things, the operating system 53 includes at least one resource manager 67 that provides an interface to resources of the DHCT 16 such as, for example, computing resources.
An application referred to as navigator 55 is also resident in flash memory 51 for providing a navigation framework for services provided by the DHCT 16. The navigator 55 registers for and in some cases reserves certain user inputs related to navigational keys such as channel increment/decrement, last channel, favorite channel, etc. The client applications may be resident in flash memory 51 or downloaded into DRAM 52. The navigator 55 also provides users with television related menu options that correspond to DHCT functions such as, for example, providing an interactive program guide, blocking a channel or a group of channels from being displayed in a channel menu, and displaying a video-on-demand purchase list.
The flash memory 51 also contains a platform library 56. The platform library 56 is a collection of utilities useful to applications, such as a timer manager, a compression manager, a configuration manager, an HTML parser, a database manager, a widget toolkit, a string manager, and other utilities (not shown). These utilities are accessed by applications via application programming interfaces (APIs) as necessary so that each application does not have to contain these utilities. Two components of the platform library 56 that are shown in
The window manager 59 provides a mechanism for implementing the sharing of the screen regions and user input. The window manager 59 on the DHCT 16 is responsible for, as directed by one or more applications, implementing the creation, display, and de-allocation of the limited DHCT 16 screen resources. It allows multiple applications to share the screen by assigning ownership of screen regions, or windows. The window manager 59 also maintains, among other things, a user input registry 50 in DRAM 52 so that when a user enters a key or a command via the remote control device 80 or another input device such as a keyboard or mouse, the user input registry 50 is accessed to determine which of various applications running on the DHCT 16 should receive data corresponding to the input key and in which order. As an application is executed, it registers a request to receive certain user input keys or commands. When the user presses a key corresponding to one of the commands on the remote control device 80, the command is received by the receiver 46 and relayed to the processor 44. The processor 44 dispatches the event to the operating system 53 where it is forwarded to the window manager 59 which ultimately accesses the user input registry 50 and routes data corresponding to the incoming command to the appropriate application.
The SAM client 57 is a client component of a client-server pair of components, with the server component being located on the headend 11. A SAM database 60 in DRAM 52 includes a data structure of services and a data structure of channels that are created and updated by the headend 11. Many services can be defined using the same application component, with different parameters. Examples of services include, without limitation and in accordance with one implementation, presenting television programs (available through a WatchTV application 62), pay-per-view events (available through a PPV application 64), digital music (not shown), media-on-demand (available through an MOD application 63), and an interactive program guide. In general, the identification of a service includes the identification of an executable application that provides the service along with a set of application-dependent parameters that indicate to the application the service to be provided. As a non-limiting example, a service of presenting a television program could be executed with a set of parameters to view HBO or with a separate set of parameters to view CNN. Each association of the application component (tune video) and one parameter component (HBO or CNN) represents a particular service that has a unique service I.D. The SAM client 57 also interfaces with the resource manager 67, as discussed below, to control resources of the DHCT 16.
Application clients can also be downloaded into DRAM 52 at the request of the SAM client 57, typically in response to a request by the user or in response to a message from the headend. In this non-limiting example DRAM 52 contains a media-on-demand application (MOD) 63, an e-mail application 65, and a web browser application 66, among others (not shown). It should be clear to one with ordinary skill in the art that these applications are not limiting and merely serve as examples for this present embodiment of the invention. Furthermore, one or more DRAM based applications may, as an alternative embodiment, be resident in flash memory 51. These applications, and others provided by the cable system operator, are top level software entities on the network for providing services to the user.
In one implementation, applications executing on the DHCT 16 work with the navigator 55 by abiding by several guidelines. First, an application utilizes the SAM client 57 for the provision, activation, and suspension of services. Second, an application shares DHCT 16 resources with other applications and abides by the resource management policies of the SAM client 57, the operating system 53, and the DHCT 16. Third, an application handles situations where resources are only available with navigator 55 intervention. Fourth, when an application loses service authorization while providing a service, the application suspends the service via the SAM (the navigator 55 will reactivate an individual service application when it later becomes authorized). Finally, an application client is designed to not have access to certain user input keys reserved by the navigator (i.e., power, channel +/−, volume +/−, etc.).
The MOD client application 63 provides the user with lists of available media titles to choose from and with video presentations requested by the user. The MOD client application 63 provides video presentations to the user by engaging, preferably, in a direct two-way IP (Internet Protocol) connection with VOD content servers 22 (
The DHCT 16 includes demultiplexing system 200 comprising functionality for QAM demodulation, forward error correction (FEC), transport demultiplexing and parsing. Transport demultiplexing may include MPEG-2 transport demultiplexing. The DHCT 16 also includes a digital video decoding system 210, a digital audio decoding system 220, a display output system such as RF output system 48, an “audio player and output system” 230 that can feed audio samples to RF output system 48, and a processor 44.
The demultiplexing system 200 in communication with communication interface 42, tuner system 45 and processor 44 effects reception of compressed video streams, compressed audio streams, and data streams corresponding to a first video program to be separated from other programs and/or streams transported in the tuned transmission channel and to be stored in a first part of DRAM 52 of DHCT 16 assigned to receive packets of a first video program.
The demultiplexing system 200 in communication with the digital video decoding system 210 and processor 44 effect notification and/or transfer of received packets of one or more compressed video streams corresponding to a first video program from a first part of DRAM 52 to a second part of DRAM 52 assigned to digital video decoding system 210.
The demultiplexing system 200 in communication with the digital audio decoding system 220 and processor 44 effects notification and/or transfer of received packets of one or more compressed audio streams corresponding to a first video program from a first part of DRAM 52 to a third part of DRAM 52 assigned to digital audio decoding system 220.
The demultiplexing system 200 in communication with processor 44 and/or other data parsing and interpretation device (not shown) in DHCT 16 effects notification and/or transfer of received packets of one or more data streams corresponding to a first video program from a first part of DRAM 52 to a fourth part of DRAM 52 assigned for reception of data affiliated with a first video program.
The digital video decoding system 210 reads compressed video stored in a second part of DRAM 52 assigned to digital video decoding system 210 and effects decompression and reconstruction of compressed digital video streams into an assigned fifth part of DRAM 52, and in communication with the display output system (such as RF output system 48) effects presentation of video pictures in television 41.
The digital audio decoding system 220 reads compressed audio stored in a third part of DRAM 52 assigned to the digital audio decoding system 220 and effects decompression and reconstruction of compressed digital audio streams into an assigned sixth part of DRAM 52, and in communication with the audio player and output system 230 effects presentation of audio sample to television 41 and/or other audio output interfaces (not shown) in DHCT 16.
An executable program or algorithm corresponding to an operating system (OS) component, or to a client platform component, or to a client application, or to respective parts thereof, can reside in and execute out of DRAM 52 and/or flash memory 51. Likewise, data inputted into or outputted from any executable program can reside in DRAM 52 or flash memory 51. Furthermore, an executable program or algorithm corresponding to an OS component, or to a client platform component, or to a client application, or to respective parts thereof, can reside in flash memory 51, or in a local storage device connected to DHCT 16 and can be transferred into DRAM 52 for execution. Likewise, data input for an executable program can reside in flash memory 51 or a storage device and can be transferred into DRAM 52 for use by an executable program or algorithm. In addition, data outputted by an executable program can be written into DRAM 52 by an executable program or algorithm and can be transferred into flash memory 51 or into a storage device for storage purposes. The present invention is not limited by where or how data and/or applications are stored or retrieved.
Each of the above mentioned applications comprises executable instructions for implementing logical functions and can be embodied in any computer-readable medium for use by or in connection with an instruction execution system, apparatus, or device, such as a computer-based system, processor-containing system, or other system that can fetch and execute the instructions. In the context of this document, a “computer-readable medium” can be any means that can contain, store, communicate, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device. The computer readable medium can be, for example but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, device, or propagation medium. More specific examples (a non-exhaustive list) of the computer-readable medium would include the following: an electrical connection (electronic) having one or more wires, a portable computer diskette (magnetic), a random access memory (RAM) (electronic), a read-only memory (ROM) (electronic), an erasable programmable read-only memory (EPROM or Flash memory) (electronic), an optical fiber (optical), and a portable compact disc read-only memory (CDROM) (optical). Note that the computer-readable medium could even be paper or another suitable medium upon which the program is printed, as the program can be electronically captured, via for instance optical scanning of the paper or other medium, then compiled, interpreted or otherwise processed in a suitable manner, and then stored in a computer memory.
With continued reference to
A user may utilize the rental selection window 100 in order to request a video-on-demand rental. Top portion 101 of example window 100 typically contains one or more headings, while the bottom portion 102 typically illustrates relevant navigation buttons available on the remote control device 80. Video rental list 103 contains the titles of video presentations, such as video title 104, that are available for rent as well as a highlighted title area 105.
A user may scroll through the video rental list using the up and down arrow buttons 83, 84 on the remote control device 80 and may request a currently highlighted video title by activating the select button 87. For example, a user may activate the down arrow button 84 on the remote control device 80 until the selection “You've Got Mail” 109 is displayed in the highlighted title area 105 and then request to see the video titled “You've Got Mail” 109 by activating the select button 87. In an alternative embodiment, activating the up and down arrow buttons 83, 84 on the remote control device 80 results in the shifting of the highlighted title area 105 rather that the shifting of the video titles (at least until the top or bottom video titles are reached). A reduced screen area 106 displays an image corresponding to the video title displayed in the highlighted title area 105. As the user scrolls through the video rental list 103, the image displayed in the reduced screen area 106 changes accordingly. Without any limitation to other scrolling and selection forms, the scrolling and selection mechanism described above is similarly applicable to other lists and windows herein.
Information supplements such as pop-up comments settings may include comments from the director, the producer, actors, critics, or other viewers that are displayed at designated time intervals of the on-demand media presentation simultaneously with the on-demand media presentation.
Information supplements comprise media such as textual, graphical, video, or audio information, each to be presented as a single supplement or as a combined set of supplements with the VOD presentation. Information supplements comprise a specification of start time and duration interval in relation to the start of the on-demand title for which they are presented to the user or in relation to some other accessible starting point of the on-demand title such as a chapter. Herein such specification is referred to as the active time interval of the information supplement. An information supplement may exhibit one or more active time interval specifications during the course of the VOD title presentation. The time interval specification enables an information supplement to be presented to the user in a time-synchronized fashion.
Information supplements also comprise other specifications such as screen positioning relative to the picture display of the on-demand title enabling a supplement's respective presentation to overlay the picture display in a predetermined manner to minimize occlusion of the picture.
Popup alerts are optional graphical supplements such as arrows that point attention to inconspicuous parts of the on-demand video picture presentation. They possess active time interval and screen location specifications.
Auditory alerts are optional supplements that are mixed with the audio of the on-demand video program and possess active time interval designation of one or more speaker channels for which to mix the audio supplement, and volume specification.
Multiple video views are optional supplements that provide different camera angles of the media presentation. Their presentation is accomplished with a split-picture display presentation or a picture-in-picture (PIP) presentation. The specification for a multi-video view supplement comprises an active time interval, a screen position, and whether the presentation is effected as a split-screen or PIP supplement.
Advertisement pop-ups are optional supplements that enable the user to receive product information during the on-demand video presentation in exchange for a lower rental fee. The advertisements may be specific to products inherent during the course of the on-demand movie such as a watch worn by a leading actor. Furthermore, the advertisement supplement's active time interval may be concurrent to the time in the movie that the leading actor reads the time on the watch.
Upon a user setting an optional request for one or more information supplements, the MOD client application 63 initiates processor 44 to enable data streams carrying information supplements corresponding to an on-demand video program to be received by demultiplexing system 200, to be transferred to the fourth part of DRAM assigned for reception of data. Supplementary textual or graphical data is then decoded, parsed and interpreted by processor 44 and/or other data parsing and interpretation device (not shown) in DHCT 16 and transferred into a graphics display buffer 240 as graphics data.
Alternatively, if the supplementary data or parts thereof comprise a digital audio component, it is decoded by a first digital audio decoding system 220 or a second digital audio decoding system (not shown) and the supplementary audio is transferred to an assigned Pulse Code Modulation (PCM) audio buffer 250 in DRAM 52. The audio player and output system 240 effects mixing of the supplementary audio stored in the PCM buffer with the designated audio channel of the reconstructed digital audio of the on-demand video program stored in the sixth part of DRAM 52.
Alternatively, if the supplementary data or parts thereof comprise a digital video component, it is received as a video stream of the on-demand video program and processed in DHCT 16 as described above, each processing operation is performed by an aforementioned first processing component in DHCT 16, respectively, or a similar second processing component in DHCT 16 (not shown).
A supplementary video picture may be decompressed by digital video decoding system 210 and scaled down as it is being reconstructed in a procedural fashion with video scaling unit 260 to effect a picture in picture presentation. The scaled down reconstructed picture can be stored in a scaled video picture buffer 270 in DRAM 52. Simultaneous display of the on-demand video picture with a supplementary scaled down video picture 270 can be constructed with supplementary graphical and textual information stored in graphics display buffer 240.
Downscaled video pictures overlay on-demand video presentation by the composition capabilities of DHCT 16 (not shown) and positioned (likely at a corner of screen) as specified by the information supplement specification and only visible during the respective specified active time interval.
Graphical and textual data corresponding to a pop-up supplement overlay the on-demand video presentation on designated screen location per their respective specification and are only visible during their respective specified active time interval
The DHCT 16 has an internal clock 280 and timers 290 that enable computation of the time relationship between its internal clock and clock specified by digital video program. Hence, by reading and interpreting the clock and time stamps specifications intrinsic in the digital video program (for example, as provisioned in MPEG-2), DHCT 16 can effect an output as a synchronized presentation to the user that includes the reconstructed on-demand video pictures, the reconstructed digital audio samples, and supplementary information.
It should be emphasized that the above-described embodiments of the present invention, particularly any “preferred embodiments”, are merely possible examples of the implementations, merely setting forth a clear understanding of the principles of the inventions. Many variations and modifications may be made to the above-described embodiments of the invention without departing substantially from the spirit of the principles of the invention. All such modifications and variations are intended to be included herein within the scope of the disclosure and present invention and protected by the following claims.