This invention relates generally to video delivery systems and more specifically to a method, system and apparatus for delivering enhanced programming information.
In the early days of television, viewers relied on flipping through channels to find a program that they wished to watch. This solution was satisfactory when viewers were offered a limited number of television channels to select from. With developments in television delivery systems, however viewers now face an ever increasing choice of channels and programs. Television systems nowadays typically include an Electronic Programming Guide (EPG) to enable viewers to browse a myriad of programming information to select a particular programming event for viewing. The EPG generally provides a title of a particular programming event, time, duration, as well as the associated channel line-up information. Some of the more sophisticated EPGs also provide a brief description of the programming event, including synopsis, actors, guests, etc. In most cases, the viewer can retrieve this additional information by clicking a button (such as a dedicated button marked “INFO”) on a remote control.
One of the inconveniences associated with EPGs currently available is that they provide a static description of programming events, i.e. descriptions that have been pre-provisioned and downloaded as part of the EPG file. In some cases, the information would have been provisioned more than a month prior to the viewer actually using the information in the EPG to make his or her selection. Thus, when a viewer browses programming information associated with multiple simultaneous programming events (such as sporting events, news programs, music performances, award ceremonies, etc.), she or he has to rely on a static and mostly high level synopsis of the event to make her or his decision. Therefore, the viewer is not always able to make an informed decision about which programming event to select.
There is a need in the art for an improved delivery of programming information that would enhance viewers' ability to more accurately select a particular programming event among multiple simultaneously occurring programming events.
A first broad aspect of the present invention seeks to provide a method for delivering enhanced programming information. The method comprises obtaining channel grid information for identifying a programming event, the programming event associated to an occurrence interval; receiving a dynamic program description associated with the programming event, the receiving occurring during said occurrence interval associated to the programming event; augmenting the channel grid information with the dynamic program description.
A second broad aspect of the present invention seeks to provide a method for enabling delivery of enhanced programming information. The method comprises transmitting channel grid information to a subscriber premises device for identifying a programming event; transmitting a dynamic program description associated with the programming event to the subscriber premises device during an occurrence interval associated to the programming event; the dynamic program description enabling the subscriber premises device to augment the channel grid information with the dynamic program description.
A third broad aspect of the present invention seeks to provide a system for delivery of enhanced programming information. The system comprises at least one subscriber premises device. The system further comprises a content provider operable to: transmit channel grid information to the at least one subscriber premises device for identifying a programming event; transmit during an occurrence interval associated to the programming event a dynamic program description associated with the programming event to the at least one subscriber premises device, wherein responsive to receiving the dynamic program description, the at least one subscriber premises device is operable to augment the channel grid information with the dynamic program description.
A fourth broad aspect of the present invention seeks to provide a customer premises apparatus. The customer premises apparatus comprises: a first interface for receiving a signal from a content provider; a second interface for conveying an output signal derived from the received signal to an audio-video output device; and a processing module coupled to the first and second interfaces. The processing apparatus operable to: obtain via the first interface channel grid information for identifying a programming event; receive via the first interface during an occurrence interval associated to the programming event a dynamic program description associated with the programming event; augment the channel grid information with the dynamic program description.
Another broad aspect of the present invention seeks to provide an apparatus for enabling delivery of enhanced programming information. The apparatus comprises: means for transmitting channel grid information to a subscriber premises device for identifying a programming event; means for transmitting a dynamic program description associated to the programming event to the subscriber premises device during an occurrence interval associated to the programming event; the dynamic program description enabling the subscriber premises device to augment the channel grid information with the dynamic program description.
These and other aspects and features of the present invention will now become apparent to those skilled in the art upon review of the following description of specific embodiments of the invention in conjunction with the accompanying drawings.
Non-limiting embodiments of the present invention are described with reference to the following figures, in which:
It is to be expressly understood that the description and drawings are only for the purpose of illustration of certain embodiments of the invention and are an aid for understanding. They are not intended to be a definition of the limits of the invention.
With reference to
The content provider 102 can further comprise a content acquiring module 110 and a real time data injection module 114. The content acquiring module 110 can be responsible for acquiring different types of content from a content source 111. Generally speaking, two example types of content acquired by the content acquiring module 110 are (i) programming content (or, in other words, the content used for distributing one or more channel packages) and (ii) feature content. The feature content can be used for delivering various feature packages, such as but not limited to electronic programming guide information, interactive applications, weather reports, stock quotes and the like. In the non-limiting example of the feature package comprising an electronic programming guide, the content source 111 can comprise a provider of EPG data, such as “TV Guide” (see http://online.tvguide.com).
As will be described in greater detail herein below, the content acquiring module 110 can also acquire content required for delivering an enhanced electronic programming guide. For now, suffice it to say that in these non-limiting embodiments the content source 111 can further comprise a content aggregator (such as but not limited to sports content aggregator), an event broadcaster and the like.
The real time injection module 114 is operable to transmit one or more channels 140 via the distribution network 106, the one or more channels 140 enabling the content provider 102 to deliver the aforementioned channel packages and feature packages to the subscribers (such as the subscriber 100). To that extent, the one or more channels 140 can convey signals representing one or more programming events, as well as signals representing one or more feature packages (such as interactive applications and the like). Naturally, the type of the real time injection module 114 will depend on the type of the distribution network 106. Suitable types of distribution network 106 that enable the above-mentioned viewing possibilities include satellite, a data network adapted for transmitting video (generally referred herein below as IPTV), xDSL and cable systems. In a non-limiting example of the distribution network 106 comprising a data network adapted for video distribution, the real time data injection module 114 is operable to digitize the one or more channels 140 into packets suitable for distribution over the data network. In another non-limiting example of the distribution network 106 comprising a satellite broadcasting network, the real time date injection module 114 is operable to broadcasts the one or more channels 140 via a broadcast carousel as is well known to those of skill in the art.
In some non-limiting embodiments of the present invention, the architecture depicted in
In each of these types of distribution networks 106, the subscriber 100 can be provided with a subscriber premises device 104 installed at subscriber premises 108. The subscriber premises device 104 is commonly referred to as a set-top box and can be generally implemented in a receiver device, modem, residential gateway, network interface device and the like. A non limiting example of the set-top box is manufactured by EchoStar of 9601 South Meridian Blvd., Englewood, Colo., USA. The subscriber premises device 104 is generally connected to an audio-video output device (not depicted) which can be generally embodied as a television set, a computer monitor and the like.
A non-limiting example subscriber premises device 104 can comprise a number of interfaces. Firstly, the subscriber premises device 104 can comprise a content interface 104, for receiving the one or more channels 140 from the content provider 102. The type of the content interface 1041 depends on the nature of the distribution network 106. For example, in the case where the distribution network 106 is a satellite broadcasting network, the content interface 1041 can comprise a reception device (such as a satellite dish, an antenna or the like, typically installed outside the subscriber's premises, such as on the side of a house or on the roof), as well as outside/inside wiring between the reception device and the remainder of the subscriber premises device 104. Alternatively, in the case where the distribution network 106 is a cable system, the content interface 1041 can comprises a coaxial cable interface. Alternatively, in the case that the distribution network 106 is an IPTV-based network, the content interface 1041 can comprise an Ethernet cable connection and can support various access technologies, such as DSL, cable, fiber-to-the-home and the like. In the case that the distribution network 106 is an xDSL network, the content interface 1041 can comprise an xDSL modem.
In some non-limiting examples of the present invention, the content interface 1041 can receive a signal from the aforementioned communication network, as well as transmit a return signal via the aforementioned communication network. The example signal can comprise the aforementioned feature content. The example return signal can comprise viewing statistics associated with the subscriber 100, orders for video-on-demand (VOD) movies and shows; and the like. Other variants are also within the scope of the embodiments of the present invention.
The subscriber premises device 104 can further comprise a display interface 1042 for connecting to the above-mentioned audio-video output device for conveying to the display a signal representing the content of the one or more channels 140.
The subscriber premises device 104 can further comprise a control port 1043 for receiving control signals 148 from a control device 150, such as a remote control or the like. It should be understood that the control port 1043 can be adapted to receive control signals over infra-red waves, UHF, Bluetooth® or any other suitable transmission medium.
The subscriber premises device 104 can further comprise a processor 1044 that can be used for controlling other components of the subscriber premises device 104 (such as the content interface 1041, the display interface 1042, the control port 1043 as well as other components). The processor 1044 can be implemented in software, hardware, control logic or a combination thereof. The processor 1044 can access a memory 1045 used for storing information, such as an interactive application (herein below referred to simply as an “EPG application”) used for conveying an enhanced electronic programming guide according to various embodiments of the present invention. The EPG application is generally depicted at 130. As will be appreciated by those of skill in the art, the EPG application 130 can be downloaded to the memory 1045 upon occurrence of a specific event (for example when the subscriber premises device 104 is powered on), at a specific time (such as late at night), on-demand or at any other suitable time. It should be understood that any suitable type of the memory 1045 can be used, such as but not limited to random-access memory. In alternative non-limiting embodiments, the EPG application 130 can be implemented in any suitable resident software application.
The subscriber premises device 104 can comprise a number of other interfaces and components, such interfaces being known to those skilled in the art and, as such, need not be described here in any detail. For instance, in some non-limiting embodiments of the present invention, the subscriber premises device 104 can comprise a second content interface (not depicted) operable to receive the aforementioned signal from the communication network. In the specific non-limiting example of the communication network comprising a dial-up connection, the second content interface can comprise an RJ-11 interface. In the specific non-limiting example of the communication network comprising a broadband connection, the second content interface can comprise an Ethernet interface.
Given the architecture of
The EPG application 130 is operable to receive and store data representative of so-called “channel grid information”, such as a channel number, a start time and a duration (or any conceivable combination thereof) associated with a particular programming event. Reference is now made to
Data maintained in the CSI 406a, the title 406b and the start time and duration 406c, which can be collectively referred to as channel grid information, is received from the content provider 102. Specifically, this channel grid information is downloaded from the aforementioned content provider 102 into the memory 1045 in advance, prior to the commencement of the occurrence interval of the programming event to which the channel grid information pertains. In some non-limiting embodiments of the present invention, the content provider 102 can transmit the channel grid information to the subscriber premises device 104 via the distribution network 106. In alternative non-limiting embodiments, the content provider 102 can transmit the channel grid information to the subscriber premises device 104 via the aforementioned communication network. The channel grid information can be transmitted by the content provider 102 to the subscriber premises device 104 a week in advance, two weeks in advance, 3 days in advance and the like. Data contained in these fields can be thought of as static information which generally does not change once it is downloaded to the memory 1045. In other words, the channel grid information remains static and does not change once the occurrence interval associated to a particular programming event has commenced.
The record 405 can also maintain enhancement information 406d that can contain data that is used for compiling an enhanced portion of the enhanced electronic programming guide according to various embodiments of the present invention, as will be described in greater detail herein below. The enhancement information 406d contains data at least a portion of which can be thought of as dynamic or, in other words, data that can change during the occurrence interval of the particular programming event to which it pertains. How the information maintained in the enhancement information 406d is received and stored will now be described in greater detail with reference to
In some non-limiting embodiments of the present invention, the channel grid information can further contain a so-called “static synopsis” (such as, a brief summary of the particular programming event, a list of actors, etc.) associated with the particular programming event. This static synopsis also does not change once the occurrence interval associated with the particular programming event has commenced. In some non-limiting embodiments of the present invention, the static synopsis can be stored in a dedicated field (not depicted) of the record 406. In alternative non-limiting embodiments of the present invention, the static synopsis can be stored in a potion of the enhancement information 406d. The synopsis can be downloaded together with the CSI 406a, the title 406b and the start time and duration 406c. In these non-limiting embodiments, the enhancement information 406d can comprise two logical portions—a first logical portion containing static information and a second logical portion containing dynamic program description.
The programming information module 112 also assigns an event identifier 502 to the enhancement token 500. The function of the event identifier 502 is to uniquely identify a particular programming event to which a particular enhancement token 500 pertains. It will be recalled that the programming information module 112 has previously generated and transmitted the channel grid information associated with the particular programming event and, therefore, the programming information module 112 can conveniently generate the event identifier 502 that would uniquely identify the particular programming event by identifying a portion of the channel grid information.
The type of the event identifier 502 is not particularly limiting. In one non-limiting example, the event identifier 502 can contain an indication of the channel number maintained in the aforementioned CSI 406a of the record that is associated with the particular programming event (in this example scenario, the record 406). Put another way, the event identifier 502 contains an indication of the channel number on which the particular programming event to which the enhancement token 500 pertains occurs. In another non-limiting example, the event identifier 502 can contain an indication of the channel number maintained in the CSI 406a and an indication of the start time maintained in the aforementioned start time and duration 406c. In another non-limiting example, the event identifier 502 can contain any suitable identifier that would uniquely identify the channel number and/or start time information maintained in the CSI 406a and start time and duration 406c respectively. Other suitable types of identifiers include but are not limited to the title of the programming event, the title and occurrence interval combination to name just a few.
The programming information module 112 passes the enhancement token 500 to the real time data injection module 114 for distribution to the subscriber premises device 104. In some non-limiting embodiments of the present invention, the real time data injection module 114 can distribute the enhancement token 500 via the distribution network 106. How the real time injection module 114 distributes the enhancement token 500 is not particularly limiting and will depend on the type of the distribution network 106. In a non-limiting example of the distribution network 106 comprising a data network adapted for video distribution, the real time data injection module 114 is operable to digitize the enhancement token 500 into one or more packets suitable for distribution over the data network adapted for video distribution. In another non-limiting example of the distribution network 106 comprising a satellite broadcasting network, the real time data injection module 114 is operable to broadcasts the enhancement token 500 via a broadcast carousel as is well known to those of skill in the art. It should be noted that in alternative non-limiting embodiments, the programming information module 112 can transmit the enhancement token 500 to the to the subscriber premises device 104 via the aforementioned communication network (not depicted).
In other non-limiting embodiments of the present invention, rather than relying on indicators generated by the content source 111, a member of staff associated with the content provider 102 can generate the dynamic program description 504 by watching the programming event and inputting a description to be used for the dynamic program description 504 using a computing apparatus (not depicted) coupled to the programming information module 112. The programming information module 112 receives the input from the computing apparatus and creates the enhancement token 500 in substantially the same manner as described in the preceding paragraphs.
The subscriber premises device 104 can receive the enhancement token 500 via the content interface 1041 and provide the received enhancement token 500 to the EPG application 130. The EPG application 130 receives the enhancement token 500 and retrieves the event identifier 502 and the dynamic program description 504 from the enhancement token 500. Equipped with the data contained in the event identifier 502, the EPG application 130 attempts to identify the particular programming event to which the enhancement token 500 pertains. Specifically, the EPG application 130 attempts to identify a record in the table 402 that contains data that matches the event identifier 502.
For the purposes of the non-limiting example presented herein, assume that the event identifier 502 contains a channel number that matches the content of the CSI 406a which would be indicative of the enhancement token 500 being pertinent to the particular programming event for which record 406 is maintained. Once a positive match is located, the EPG application 130 uploads the content of the dynamic program description 504 into the enhancement information 406d of the record 406.
It should be recalled that in some non-limiting embodiments, the enhancement information 406d can contain a portion associated with the static synopsis. In these non-limiting embodiments, the EPG application 130 can (i) delete the static synopsis portion from the enhancement information 406d and upload the dynamic program description 504 instead (or another words, substitute the static synopsis portion with the dynamic program description); or (ii) store the dynamic program description 504 in addition to the static synopsis portion already stored in the enhancement information 406d.
In case the EPG application 130 fails to locate a match within the table 402, it can execute an exception handling function, such as but not limited to ignoring the enhancement token 500.
Therefore, it will now be clear how the EPG application 130 generates the record 406 that generally contains channel grid information (such as static information maintained in the CSI 406a, title 406b, start time and duration 406c) and dynamic program description (such as data maintained in enhancement information 406d or in at least a portion thereof). In a specific non-limiting example described herein, the content of the record 406 can be as follows:
By the same token, the EPG application 130 generates the aforementioned record 408. The fields of the record 408 (i.e. CSI 408a, title 408b, start time and duration 408c and enhancement information 408d) can be substantially similar and be populated in substantially the same manner as the fields of the record 406 (i.e. CSI 406a, title 406b, start time and duration 406c and enhancement information 406d respectively). In a specific non-limiting example described herein, the content of the record 408 can be as follows:
The EPG application 130 can maintain a number of other records (generally depicted at 410), which can be generated in a substantially the same way as the record 406.
It should be understood that the enhancement information 408d can maintain any other suitable type of dynamic program description 504 which will naturally depend on the type of the programming event that it pertains to. For example, in a non-limiting embodiment where the programming event comprises a hockey game, the enhancement information 408d can maintain the following information:
In this non-limiting embodiment, the dynamic program description 504 denotes the current score and the current period occurring in the hockey game. Other suitable types of dynamic program description 504 will now become apparent to those of skill in the art.
Given the content of the table 402 and, specifically the content of the enhancement information 406d, 408d, the EPG application 130 is operable to generate and convey to the subscriber 100 an enhanced electronic programming guide. With reference to
Therefore, it should be clear that if the subscriber 100 invokes the enhanced electronic programming guide at different points within the occurrence interval of a particular programming event (such that the subscriber 100 is presented with the enhanced electronic programming guide screen 200A at one point, the enhanced electronic programming guide screen 200B at a subsequent point and the enhanced electronic programming guide screen 200C at another subsequent point) or if the subscriber 100 expresses his or her desire to view the enhanced electronic programming guide without invoking the aforementioned termination event thereafter, the subscriber 100 will be able to view dynamically updated information that reflects the then current and/or the upcoming status of the particular programming event. Put another way, the enhanced electronic programming guide contemplated herein will be updated with the dynamic program description as it becomes available (i.e., as one or more of the enhancements token 500A, 500B, 500C or 500D are received by the subscriber premises device 104) without the need for the subscriber 100 to explicitly request the update.
With reference to
An enhanced electronic programming guide screen 300B of
An enhanced electronic programming guide screen 300C if
In the specific non-limiting embodiment described with reference to
Generally speaking, the type of the dynamic program description 504 should not be construed as limiting in any sense and will generally depend on the type of dynamic program description 504 that can be either obtained or generated by the content provider 102.
Even though the foregoing description has mainly made references to two types of programming events (i.e. a sporting event and a news program), it will be apparent to those skilled in the art that teachings of the embodiments of this invention can be applied to other types of programming events. For example, the dynamic programming information can identify when a commercial break is occurring in a particular programming event or even the type of commercial (ex. a commercial for Ford®) occurring in the particular programming event. In another non-limiting example, the dynamic programming information can pertain to a performer currently performing in the American Idol competition. Yet in another non-limiting example, the dynamic programming information can pertain to a nominee currently being awarded with the Academy Award or to an Award category currently being presented. Yet further alternatives will become apparent to those of skill in the art having benefit of the teachings of the embodiments of the present invention.
Persons skilled in the art will appreciate that there are yet more alternative implementations and modifications possible for implementing the present invention, and that the above implementations and examples are only illustrations of one or more embodiments of the present invention. The scope of the invention, therefore, is only to be limited by the claims appended hereto.
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/CA2006/000626 | 4/19/2006 | WO | 00 | 2/7/2008 |