CA2508652A1 - Content recordation techniques - Google Patents
Content recordation techniques Download PDFInfo
- Publication number
- CA2508652A1 CA2508652A1 CA002508652A CA2508652A CA2508652A1 CA 2508652 A1 CA2508652 A1 CA 2508652A1 CA 002508652 A CA002508652 A CA 002508652A CA 2508652 A CA2508652 A CA 2508652A CA 2508652 A1 CA2508652 A1 CA 2508652A1
- Authority
- CA
- Canada
- Prior art keywords
- content item
- recording
- client
- head end
- content
- Prior art date
- Legal status (The legal status 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 status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
- H04N5/78—Television signal recording using magnetic recording
- H04N5/782—Television signal recording using magnetic recording on tape
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/41—Structure of client; Structure of client peripherals
- H04N21/422—Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS]
- H04N21/4227—Providing Remote input by a user located remotely from the client device, e.g. at work
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/433—Content storage operation, e.g. storage operation in response to a pause request, caching operations
- H04N21/4334—Recording operations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/45—Management 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/458—Scheduling content for creating a personalised stream, e.g. by combining a locally stored advertisement with an incoming stream; Updating operations, e.g. for OS modules ; time-related management operations
- H04N21/4583—Automatically resolving scheduling conflicts, e.g. when a recording by reservation has been programmed for two programs in the same time slot
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/472—End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
- H04N21/47214—End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for content reservation or setting reminders; for requesting event notification, e.g. of sport results or stock market
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/482—End-user interface for program selection
- H04N21/4828—End-user interface for program selection for searching program descriptors
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/84—Generation or processing of descriptive data, e.g. content descriptors
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/44—Receiver circuitry for the reception of television signals according to analogue transmission standards
- H04N5/445—Receiver circuitry for the reception of television signals according to analogue transmission standards for displaying additional information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
- H04N5/765—Interface circuits between an apparatus for recording and another apparatus
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
- H04N5/765—Interface circuits between an apparatus for recording and another apparatus
- H04N5/775—Interface circuits between an apparatus for recording and another apparatus between a recording apparatus and a television receiver
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
- H04N5/78—Television signal recording using magnetic recording
- H04N5/781—Television signal recording using magnetic recording on disks or drums
Abstract
Content recordation techniques are described. In an implementation, a meth od includes querying electronic program guide (EPG) data to determine if a content item described in a recording document is available for recording. If the content item is available, a reference is added to a recording fist for causing recordation of the content item.
Description
304598.12W0 CONTENT RECORDATION TECHNIQUES
TECI~ICAL~IELD
(oooil The present invention generally relates to the field of content and in particular to content recordation techniques.
BACKGROiIN~ OF THE INVENTION
(00021 Users are continually exposed to an ever increasing variety of clients that provide network access, such a set-top boxes, wireless phones, computers, and so on. A
user of a set-top box, for instance, may view traditional television programming obtained from a broadcast network for display on a television, as well as order pay-per-view movies, receive video-on-demand (VOD), play "live" video games, and so on.
Likewise, a user of a wireless phone may place and receive traditional telephone calls, as well as read email, download digits( music, and so on.
(0003( Another such example is a digital video recorder (DVR). A DVR typically includes non-volatile storage (e.g., a hard disk) that enables the user to record desired content. DVR's also offer control functionality, such as the ability to pause content that is currently being broadcast and allows viewers to watch the content, while still in progress, from the point it was paused. The DVR plays back the content from storage, starting at the pause event, while continuing to record the currently-broadcast content.
Additionally, the DVR may support other control functions, such as rewinding, fast forwarding a stored program, slow motion playback, and the like.
(00041 To record content using a DVR, a user was typically required to directly interact with the DVR itself. In some instances, the user could configure the DVR to record related content by specifying parameters to be matched with those of available content to locate potentially desirable content. For example, the user could specify the title of a television program. so that the DVR would record each television program having that title. However, the user was not assured that the DVR would record a particular content item of interest. In other words, the user could not be certain that the potentially desirable content recorded by the DVR corresponded with the actual content 304598.12 WO
TECI~ICAL~IELD
(oooil The present invention generally relates to the field of content and in particular to content recordation techniques.
BACKGROiIN~ OF THE INVENTION
(00021 Users are continually exposed to an ever increasing variety of clients that provide network access, such a set-top boxes, wireless phones, computers, and so on. A
user of a set-top box, for instance, may view traditional television programming obtained from a broadcast network for display on a television, as well as order pay-per-view movies, receive video-on-demand (VOD), play "live" video games, and so on.
Likewise, a user of a wireless phone may place and receive traditional telephone calls, as well as read email, download digits( music, and so on.
(0003( Another such example is a digital video recorder (DVR). A DVR typically includes non-volatile storage (e.g., a hard disk) that enables the user to record desired content. DVR's also offer control functionality, such as the ability to pause content that is currently being broadcast and allows viewers to watch the content, while still in progress, from the point it was paused. The DVR plays back the content from storage, starting at the pause event, while continuing to record the currently-broadcast content.
Additionally, the DVR may support other control functions, such as rewinding, fast forwarding a stored program, slow motion playback, and the like.
(00041 To record content using a DVR, a user was typically required to directly interact with the DVR itself. In some instances, the user could configure the DVR to record related content by specifying parameters to be matched with those of available content to locate potentially desirable content. For example, the user could specify the title of a television program. so that the DVR would record each television program having that title. However, the user was not assured that the DVR would record a particular content item of interest. In other words, the user could not be certain that the potentially desirable content recorded by the DVR corresponded with the actual content 304598.12 WO
2 the user wished to record. For example, although the DVR may be configured to record a particular television program, the DVR might fail to record a special regarding the actors in that particular television program. Therefore, when the user was located "away" from the DVR, the user could not cause the DVR to record the particular content item, even if the user had access to one or more of the clients that provide network access as previously described.
[00051 Accordingly, there is a continuing need for improved content recordation techniques.
SUMMARY OF THE INVENTION
[00061 Content recordation techniques are described. The content recordation techniques may be utilized when the user is local to and remote from the client. For example, a user, when remotely located from a client configured as a digital video recorder (DVR), interacts with a remote device that is configured as a wireless phone.
15 The user utilizes the wireless phone to access a review of a television program via the Internet. Based on the review, the user invokes a recording document that is embedded in the review to be communicated to the remote client. The recording document describes the television program, such as by describing a title, actors, broadcast time, service (e.g., channel) that broadcasts the television program, and so on.
20 [0001 Upon receipt of the recording document, the remote client executes a parser module to examine the recording document to determine if the television program described in the recording document is available for being recorded by the remote client. For instance, the recording document may be compared with electronic program guide (EPG) data that is received from a head end, EPG data service, and so on. The 25 EPG data may be utilized to determine if the television program is available. The EPG
data may also be utilized to determine how the television program is to be recorded, such as by supplying a channel and broadcast start time. If the television program is available, a reference to the television program is added to a recording list based on the EPG data. For example, the broadcast channel and the broadcast start time may be 30 added to the recording list. The recording list is then utilized by the remote client to cause the client to record the content. In another instance, the recording document may 304598.12 WO
[00051 Accordingly, there is a continuing need for improved content recordation techniques.
SUMMARY OF THE INVENTION
[00061 Content recordation techniques are described. The content recordation techniques may be utilized when the user is local to and remote from the client. For example, a user, when remotely located from a client configured as a digital video recorder (DVR), interacts with a remote device that is configured as a wireless phone.
15 The user utilizes the wireless phone to access a review of a television program via the Internet. Based on the review, the user invokes a recording document that is embedded in the review to be communicated to the remote client. The recording document describes the television program, such as by describing a title, actors, broadcast time, service (e.g., channel) that broadcasts the television program, and so on.
20 [0001 Upon receipt of the recording document, the remote client executes a parser module to examine the recording document to determine if the television program described in the recording document is available for being recorded by the remote client. For instance, the recording document may be compared with electronic program guide (EPG) data that is received from a head end, EPG data service, and so on. The 25 EPG data may be utilized to determine if the television program is available. The EPG
data may also be utilized to determine how the television program is to be recorded, such as by supplying a channel and broadcast start time. If the television program is available, a reference to the television program is added to a recording list based on the EPG data. For example, the broadcast channel and the broadcast start time may be 30 added to the recording list. The recording list is then utilized by the remote client to cause the client to record the content. In another instance, the recording document may 304598.12 WO
3 cause the head end to cause the client to record the content, such as by examining EPG
data stored at the head end to determine if the content is available for recording. If so, the head end causes the client the record the content. In a further instance, the recording document may cause the head end itself to record the content, such as in a network digital video recorder (NDVR) scenario.
BRIEF DESCRIPTION OF THE DRAWINGS
(0008) FIG. 1 is an illustration of an environment in an exemplary implementation that includes a content provider that is communicatively coupled to a client over a network.
(0009) FIG. 2A is an illustration of an exemplary implementation showing a distribution server, the client, a head end, and a remote device of FIG. 1 in greater detail such that the head end is configured to record content.
(0010) FIG. 2B is an illustration of another exemplary implementation showing a 1 S distribution server, the client, a head end, and a remote device of FIG. 1 in greater detail such that the client is co~gured to record content.
(0011) FIG. 3 is an illustration of a system showing a variety of content recordation techniques as implemented by the distribution server and the client of FIG.
2A.
[oot2) FIG. 4 is a flow diagram depicting a procedure in an exemplary implementation in which a recording document is utilized to record a particular content item.
(0013) FIG. 5 is an illustration of a system in an exemplary implementation in which a graphical user interface (GUI) is provided by a recording module to dynamically generate a recording document based on user input.
(00141 FIG. 6 is an illustration of a system in an exemplary implementation in which the recording module is executed to examine a textual description of content to dynamically generate a recording document.
(00151 FIG. 7 is a flow diagram depicting a procedure in an exemplary implementation in which a client dynamically generates a recording document that is utilized to determine availability of a particular content item for recording by the client.
304598.12 WO
data stored at the head end to determine if the content is available for recording. If so, the head end causes the client the record the content. In a further instance, the recording document may cause the head end itself to record the content, such as in a network digital video recorder (NDVR) scenario.
BRIEF DESCRIPTION OF THE DRAWINGS
(0008) FIG. 1 is an illustration of an environment in an exemplary implementation that includes a content provider that is communicatively coupled to a client over a network.
(0009) FIG. 2A is an illustration of an exemplary implementation showing a distribution server, the client, a head end, and a remote device of FIG. 1 in greater detail such that the head end is configured to record content.
(0010) FIG. 2B is an illustration of another exemplary implementation showing a 1 S distribution server, the client, a head end, and a remote device of FIG. 1 in greater detail such that the client is co~gured to record content.
(0011) FIG. 3 is an illustration of a system showing a variety of content recordation techniques as implemented by the distribution server and the client of FIG.
2A.
[oot2) FIG. 4 is a flow diagram depicting a procedure in an exemplary implementation in which a recording document is utilized to record a particular content item.
(0013) FIG. 5 is an illustration of a system in an exemplary implementation in which a graphical user interface (GUI) is provided by a recording module to dynamically generate a recording document based on user input.
(00141 FIG. 6 is an illustration of a system in an exemplary implementation in which the recording module is executed to examine a textual description of content to dynamically generate a recording document.
(00151 FIG. 7 is a flow diagram depicting a procedure in an exemplary implementation in which a client dynamically generates a recording document that is utilized to determine availability of a particular content item for recording by the client.
304598.12 WO
4 [0016] The same reference numbers are utilized in instances in the discussion to reference like structures and components.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT
Overview loom] Content recordation techniques are described. In an implementation, a content recordation technique is described in which a client, such as a digital video recorder (DVR), is configured to record content streamed from a head end through use of a recording document that describes the content. The recording document may be provided in a variety of ways, such as embedded in a web site, shared via email or text messaging, submitted via an application programming interface (APn, manually written by a user, and so on. The recording document is processed via a parser module to locate the content item that is described by the recording document. In one scenario, the parser module compares the recording document with an electronic program guide (EPG) that is stored on the client to find a matching content item that is described in the EPG data. If a sufricient match is found, a reference to the matching content item is added to a recording list based on the EPG data, such as a broadcast channel and time to record the matching content item. In another scenario, the head end processes the recording document provided by a remote device to determine whether the described content item is available. If so, the head end then causes the client to record the particular content item, such as through communication of a recording list to the client.
Thus, a user may cause a particular content item to be recorded without direct interaction with the client.
[0018] In a further implementation, the head end stores client state data to process content recordation requests. For example, the head end rnay include client state data, such as ratings limits, favorite channels, levels of service, and so on, that is accessible locally by the head end. The head end may utilize this client state data to determine if the client is permitted to access the content item described by the recording document.
If so, the head end may then cause the client to record the content. By performing the 30 determination utilizing client state data at the head end, the head end provides an authoritative source for processing requests to record content by the client.
This may 304598.12W0 result in a variety of increased functionality that is available to the user, such as an ability to change from an old client to a new client without manually updating client state data from the old client to the new client, remote initiation of content recordation without obtaining a connection with the client itself, and so on.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT
Overview loom] Content recordation techniques are described. In an implementation, a content recordation technique is described in which a client, such as a digital video recorder (DVR), is configured to record content streamed from a head end through use of a recording document that describes the content. The recording document may be provided in a variety of ways, such as embedded in a web site, shared via email or text messaging, submitted via an application programming interface (APn, manually written by a user, and so on. The recording document is processed via a parser module to locate the content item that is described by the recording document. In one scenario, the parser module compares the recording document with an electronic program guide (EPG) that is stored on the client to find a matching content item that is described in the EPG data. If a sufricient match is found, a reference to the matching content item is added to a recording list based on the EPG data, such as a broadcast channel and time to record the matching content item. In another scenario, the head end processes the recording document provided by a remote device to determine whether the described content item is available. If so, the head end then causes the client to record the particular content item, such as through communication of a recording list to the client.
Thus, a user may cause a particular content item to be recorded without direct interaction with the client.
[0018] In a further implementation, the head end stores client state data to process content recordation requests. For example, the head end rnay include client state data, such as ratings limits, favorite channels, levels of service, and so on, that is accessible locally by the head end. The head end may utilize this client state data to determine if the client is permitted to access the content item described by the recording document.
If so, the head end may then cause the client to record the content. By performing the 30 determination utilizing client state data at the head end, the head end provides an authoritative source for processing requests to record content by the client.
This may 304598.12W0 result in a variety of increased functionality that is available to the user, such as an ability to change from an old client to a new client without manually updating client state data from the old client to the new client, remote initiation of content recordation without obtaining a connection with the client itself, and so on.
5 Exemolary Environment loot9] FIG. 1 is an illustration of an environment 100 in an exemplary implementation showing a content provider 102 that is communicatively coupled to a client 104 over a network 106. The network 106 in the following implementations is an example of a wide area network (WAN), such as the Internet, and may also include a variety of other networks, such as a broadcast network, an intranet, a wired or wireless network, and so forth.
(0020] The client 104 is configured to receive content communicated from the content provider 102 over the network 106. The content provider 102 includes content 108(k), where "k" can be any integer from 1 to "K", that is locally stored on the content provider 102. The content 108(k) may include a variety of data, such as television programming, video-on-demand, one or more results of remote application processing, and so on. The content provider 102 communicates the content 108(k) over a network 1 I0 to a head end 112. The network 110 may be the same as or different from network 106. For example, the network 110 may represent a dedicated network connection between the content provider 102 and the head end 112 while network 106 is implemented by the Internet, both networks 106, 110 may be the Internet, and so on.
[00211 The content 108(k) may then be stored in a database 114 as content 116(n), where "n" can be any integer from I to "N", on the head end 112 for communication over the network 106 to the client 104. In other words, the content 116{n) stored in the database 114 may be copies of the content 108(k) received from the content provider 102 over the network 110.
(0022] The head end 112, as illustrated, includes a distribution server 118 to format and distribute the content 116(n) over the network 106. Distribution from the head end 112 to the client 104 may be accomplished in a number of ways, including cable, 1ZF, microwave, and satellite. Although the head end 112 is illustrated as separate from the content provider 102, the content provider 102 may also include the head end 112.
3o4s9s.~zwa
(0020] The client 104 is configured to receive content communicated from the content provider 102 over the network 106. The content provider 102 includes content 108(k), where "k" can be any integer from 1 to "K", that is locally stored on the content provider 102. The content 108(k) may include a variety of data, such as television programming, video-on-demand, one or more results of remote application processing, and so on. The content provider 102 communicates the content 108(k) over a network 1 I0 to a head end 112. The network 110 may be the same as or different from network 106. For example, the network 110 may represent a dedicated network connection between the content provider 102 and the head end 112 while network 106 is implemented by the Internet, both networks 106, 110 may be the Internet, and so on.
[00211 The content 108(k) may then be stored in a database 114 as content 116(n), where "n" can be any integer from I to "N", on the head end 112 for communication over the network 106 to the client 104. In other words, the content 116{n) stored in the database 114 may be copies of the content 108(k) received from the content provider 102 over the network 110.
(0022] The head end 112, as illustrated, includes a distribution server 118 to format and distribute the content 116(n) over the network 106. Distribution from the head end 112 to the client 104 may be accomplished in a number of ways, including cable, 1ZF, microwave, and satellite. Although the head end 112 is illustrated as separate from the content provider 102, the content provider 102 may also include the head end 112.
3o4s9s.~zwa
6 (00231 The head end 112 may also include a database I20 having a plurality of EPG
data 122(m), where "m" can be any integer from one to "M". The EPG data 122{m) is used to construct an EPG 124 for display by the client 104 to a user. The EPG
124, for instance, may enable the user to observe a listing of television programs that are currently being broadcast from the head end 112, as well as a listing of television programs that will be broadcast in the future. Additionally, the EPG I24 may allow the viewer to navigate to a television program (e.g., content lI6(n)) from the EPG
itself. To provide additional information to the user, the EPG 124 may include one or more content characteristics that describe content represented in the EPG 124.
The content characteristics may include title, broadcast time, broadcast channel, output duration of the content, plot description, a rating {e.g., G, PG, PG-13, R, etc.), a principle actor's name, and so on. The EPG data may be communicated to the client 104 in a variety of ways. In one instance, the EPG data 122{m) is broadcast to the client 104 utilizing a carousel file system. The carousel file system repeatedly broadcasts the EPG data over an out-of band (00B) channel to the client 104 over the network 106.
Although the head end I 12 is illustrated as including the EPG data 122(m), in another instance the EPG data 122(m) is provided over the network 106 utilizing a separate EPG data service.
[00241 The client 104 may be co~gured as a computer that is capable of communicating over the network I06, such as a desktop computer, a mobile station, an entertainment appliance, a set-top box 126 that is communicatively coupled to a display device 128 as illustrated, and so forth. Although the set-top box 126 is shown separately from the display device I28, the set-top box 126 may be built into the display device 128 to form an integral unit. The client 104 may also relate to a person andlor entity that operate the client 104. In other words, client 104 may describe a logical client that includes a user and/or a machine. Although one client 104 is illustrated, a plurality of clients may be communicatively coupled to the network 106.
(00251 T'he client 104 may also include a database 130 having localty stored content 132(j), where ",j" can be any integer from 1 to "J". For example, the client 104 may be configured as a DVR that stores the database 130 in hard disk memory. Due to the size of the memory, users are able to record content, such as content 116{n) streamed from 304598.12W0
data 122(m), where "m" can be any integer from one to "M". The EPG data 122{m) is used to construct an EPG 124 for display by the client 104 to a user. The EPG
124, for instance, may enable the user to observe a listing of television programs that are currently being broadcast from the head end 112, as well as a listing of television programs that will be broadcast in the future. Additionally, the EPG I24 may allow the viewer to navigate to a television program (e.g., content lI6(n)) from the EPG
itself. To provide additional information to the user, the EPG 124 may include one or more content characteristics that describe content represented in the EPG 124.
The content characteristics may include title, broadcast time, broadcast channel, output duration of the content, plot description, a rating {e.g., G, PG, PG-13, R, etc.), a principle actor's name, and so on. The EPG data may be communicated to the client 104 in a variety of ways. In one instance, the EPG data 122{m) is broadcast to the client 104 utilizing a carousel file system. The carousel file system repeatedly broadcasts the EPG data over an out-of band (00B) channel to the client 104 over the network 106.
Although the head end I 12 is illustrated as including the EPG data 122(m), in another instance the EPG data 122(m) is provided over the network 106 utilizing a separate EPG data service.
[00241 The client 104 may be co~gured as a computer that is capable of communicating over the network I06, such as a desktop computer, a mobile station, an entertainment appliance, a set-top box 126 that is communicatively coupled to a display device 128 as illustrated, and so forth. Although the set-top box 126 is shown separately from the display device I28, the set-top box 126 may be built into the display device 128 to form an integral unit. The client 104 may also relate to a person andlor entity that operate the client 104. In other words, client 104 may describe a logical client that includes a user and/or a machine. Although one client 104 is illustrated, a plurality of clients may be communicatively coupled to the network 106.
(00251 T'he client 104 may also include a database 130 having localty stored content 132(j), where ",j" can be any integer from 1 to "J". For example, the client 104 may be configured as a DVR that stores the database 130 in hard disk memory. Due to the size of the memory, users are able to record content, such as content 116{n) streamed from 304598.12W0
7 the bead end 112. As previously described, the DVR also offers control functions, such as the ability to pause content that is currently being broadcast and allows viewers to watch the content while still in progress from the point it was paused. The DVR plays back the content from disk memory, starting at the pause event, while continuing to record the currently-broadcast content in the disk memory. Additionally, the DVR may support other control functions, such as rewinding, fast forwarding a stored program, slow motion playback, and the like.
(00261 The client 104 is equipped with sufficient processing and storage capabilities to store and run a navigation module 134. The navigation module 134, when executed on the client 104, provides control functions for interacting with content.
For example, the control functions may include the DVR control functions as previously discussed, as well as channel selection, electronic program guide (EPG) navigation, and so on. In another implementation, the navigation module 134 provides media player functionality, such as to play media having audio and/or visual data, such as MP3 data.
[0027] In a further implementation, the client 104 may execute the navigation module 134 to cause recordation of the content 116(n) at the distribution server 118.
For example, the navigation module 134 may form a request that is communicated to the distribution server 118 over the network 106 to record content 108(k) communicated to the distribution server 130 from the content provider 102. The distribution server 118, 20 in response to the request, records the requested content such that the navigation module 134 operates as a network digital video recorder (NDVR). Thus, through execution of the navigation module 134, the client 104 may playback locally-stored content 132(j), content 116(n) that is stored remotely over the network 106, and may even control the recordation and playback of the remotely stored content I 16(n) to the client 104.
25 [0028( Generally, any of the functions described herein can be implemented using software, firmware (e.g., fixed logic circuitry), manual processing, or a combination of these implementations. The terms "module," "functionality," and "logic" as used herein generally represent software, firmware, or a combination of software and firmware. In the case of a software implementation, the module, functionality, or logic represents 30 program code that performs specified tasks when executed on a processor (e.g., CPU or CPUs). The program code can be stored in one or more computer readable memory 304598.12 WO
g devices. The content recordation techniques described below are platform-independent, meaning that the content recordation techniques may be implemented on a variety of commercial computing platforms having a variety of processors.
(0029] The environment 100 supports a variety of techniques for recordation of the 5 content 132(j), 116(n) through use of a recording document 136. The recording document 136, for instance, describes content to be recorded and may conform to an eXtensible Markup Language (XML) schema that is parsable by a parser module 138 to locate a particular content item. For example, the recording document 136 may describe a title and a start time for a desired content item. The parser module 138 is 10 executed on the distribution server I 18 to compare the title and the start time described in the recording document with the EPG data 122(m} stored in the database 120 to determine if and when the particular content item is available. If the particular content item is available, a reference to the particular content item is added to a recording list 140 to cause the particular content item to be recorded. For example, the recording list I S 140 may be utilized by the distribution server 118 to record content I
16(n) at the head end 112 in a NDVR scenario. In another example, the recording list 140 is communicated to the client 104 to cause the navigation module I34 to record content 132(j) locally in a DVR scenario. In a further example, the recording document 136 is communicated from the remote device 142 to the client 104 for parsing by the client 20 104, an example of which is shown in relation to FIG. 2B.
(0030( The recording document 136 may be provided in a variety of ways. As illustrated in FIG. I, the recording document 136 is stored on a remote device 142 that is communicatively coupled to the network l Ob. Therefore, a user of the remote device 142 may provide the recording document 136 to the head end I 12 to cause recording of 25 content described by the recording document 136. Thus, the recording document 136 may be provided remotely by the remote device 142 such that the user does not need to interact with the client 104 locally to cause recordation of desired content.
A variety of other ways of providing the recording document 136 are described in relation to FIGS.
2A, 2B, and 3.
30 (oo3tl FIG. 2A is an illustration of an exemplary system 200 showing the distribution server 118, the client 104, and the remote device i42 of FIG. 1 in greater detail. The 304598.12 WO
client 104 includes a processor 202 and memory 204. Processors are not limited by the materials from which they are formed or the processing mechanisms employed therein.
For example, processors may be comprised of semiconductors) and/or transistors (e.g., electronic integrated circuits (ICs)). In such a context, processor-executable instructions may be electronically-executable instructions. Alternatively, the mechanisms of or for processors, and thus of or for a computing device, may include, but are not limited to, quantum camputing, optical computing, mechanical computing (e.g., using nanotechnology), and so forth. Memory 204 may include one or more memory devices, such as read only memory (RAM), random access memory (RAM), hard disk memory, removable media memory devices, and so on.
100321 The navigation module 134 and the recording list 140 are illustrated as being executed on the processor 202 and are storable in memory 204. The EPG 124 is illustrated as being stored in the memory 204 and is executable on the processor 202. It should be noted that in the illustrated system 200 of FIG. 2A, the recording list 140 is depicted within the client 104 to show that the recording list 140 may be configured for use by the navigation module 134 to cause recordation of content, further discussion of which may be found starting in relation to FIG. 4.
100331 The client I04 may also include a network interface 206 for receiving the content 116(n) of FIG. 1 that is communicated (e.g., streamed) over the network 106.
For example, the network interface 206 may be configured as a tuner that receives broadcast content from over the network 106, may be configured as a transmitter/receiver (transceiver) that is suitable for two-way communication aver the network 106, and so on. Thus, the network interface 206 may be configured to transmit and receive messages over the network to and from the head end 112 and/or the remote device 142.
100341 Content 116(n) received from the network 106 via the network interface may be stored in the database 130 for later output by the client 104 and/or provide for immediate output of the content I I6(n). The database 130 is illustrated as being separate from memory 204, but may also be included in memory 204. For example, the storage device for the database 124 may be co~gured as a hard disk drive and the memory 204 may be co~gured as RAM, both the memory 204 and the database I30 304598.12W0 may be implemented as RAM, both the memory 204 and the database 130 may be implemented as removable memory, and so forth. The client 104 executes the navigation module 134 to retrieve the content 132(j) from the database 124 and output the content I32(j) through an output interface 208 for rendering on the display device 5 122. Thus, in this implementation, the client 104 is capable of operating as a DVR that stores and plays back the content 132(j).
(0035] The client 104 may be locally controlled by a user via inputs provided by an input device 210. The inputs are received by the client 104 from an input interface 212 over a local connection 214. The input interface 212, local connection 214 and input 10 device 210 may be configured in a variety of ways. For example, the input interface 212 may be configured as a wireless port, such as an infrared (IR) or Bluetooth wireless port, for receiving wireless communications from input device 210, such as a remote control device, a handheld input device, or any other wireless device, such as a wireless keyboard. In alternate embodiments, the input interface 212 may use an RF
I S communication link or other made of transmission to communicate with client 104, such as a wired connection which may include a universal serial bus (LJSB) connection, and so on.
[00361 When output of content is requested, the navigation module 134 is executed on the processor 202 to obtain content, such as from content 116(n) of FIG. 1 that is streamed from the distribution server 118 over the network 106, content 132(j) that is stored locally on the database 130, and so on. The navigation module 134 may also restore the content to the original encoded format as provided by the content provider 102 of FIG. 1. For example, content 116(n) of FIG. 1 may be compressed and then streamed from the distribution server 118 to the client 104. Therefore, when the 25 navigation module 134 receives the content, the content may be decompressed for rendering by the display device 128.
(0037] The distribution server 118 also includes a processor 216 and memory 218.
The parser module 138 is illustrated as being executed on the processor 216 aztd is storable in memory 218. The memory 218 of the distribution server II8 is also 30 illustrated as including a plurality of client state data 220(1), where "1"
can be any integer from 1 to "L". The client state data 220(1) is utilized to process requests to 30?598.12W0 record content, such as at the head end 112 of FIG. 1 as content 116(n) and/or at the client in database 130 as content 132(j). For example, the distribution server 118 may include a content manager module 222 (hereinafter, "manager module") that is executable on the processor 216 to manage client 104 content access. The client state 5 data 220(1), for instance, may specify parental blocks to prevent viewing of content items, may specify conditional access rights (e.g., digital access rights) of the client for particular items of content, rating limits, favorite channels, level of service provisioned, and so on. The manager module 222, when executed, may determine if the client I 04 is permitted (i.e., authorized) to record the particular content item, and if so, the 10 distribution server l I8 causes the client 104, and specifically the navigation module 132, to record the particular content item. In this way, the head end I 12 provides an authoritative source for client state data 220(1} in the system 200 and environment I00 as shown, respectively, in FIGS. I and 2. In an implementation, the distribution server 118 may be considered the primary source for the client state data 220{1) for a particular 15 client, even over the client 104 itself. For example, by storing the client state data 220(1) on the distribution server 118, a user may switch set-top boxes without transfernng client state data between the set-top boxes. Further discussion of use of the client state data 220(1) may be found in relation to FIG. 7.
[oo3sl The remote device 142 is also illustrated as including a processor 224 and 20 memory 226. The recording document 136 is illustrated as being stored in memory 226 and is executable on the processor 224. The remote device I42 also includes a recording module 228 which is illustrated as being executed on the processor 224 and is storable in memory 226. The recording module 228, when executed, generates the recording document 136 for a particular content item. For example, the recording 25 module 228 may provide a user interface for accepting user inputs that describe a particular content item. The user inputs are processed by the recording module 228 to generate a recording document 136 that follows a schema that is understood by the parser module 138. The parser module 138, when executed, parses the recording document I36 to locate and compare descriptive data in the recording document 30 with EPG data 122(m) in the database 120. EPG data I22(m} that matches the descriptive data is then utilized to determine how to record a particular content item 304598.12W0 described in the recording document 136. A reference to the particular content item is then added to the recording list 140 to cause the navigation module 134 to be executed on the client 104 to record the particular content item. A variety of other scenarios are also contemplated such that the user may cause recordation of content at the client 104 and/or the head end I 12 of FIG. 1, further examples of which may be found in relation to the following figure.
[00391 FIG. 2B is an illustration of an exemplary system 250 showing the distribution server 118, the client 104, and the remote device 142 of FIG. 1 in greater detail such that the client includes the functionality to parse a recording document. In the system 200 described in relation to FIG. 2A, the distribution server acted as a central repository for client state data 220(t,) and executed the parser module 138 to parse the recording document 136.
(00401 In the exemplary system 250 illustrated in FIG. 2H, however, the client executes the parser module 138 to parse the recording document 136 that is communicated from the remote device 142 over the network 106. The parser module 138 may then be utilized to populate the recording list 140 as previously described by comparing the recording document 136 with EPG 124 that is stored in the memory 204.
Thus, in this instance, the head end 112 acts to broadcast content 116(n) over a broadcast network 252 and does not actively participate in the recordation of the content 132(j) on the client i04, further discussion of which may be found in relation to FIG. 6.
[00411 FIG. 3 is an illustration of a system 300 showing a variety of content recordation techniques as implemented by the distribution server 1 I8 and the client 104 of FIG. 2A. One such content recordation technique is the inclusion of the recording document 302 within content 108(k). For example, the client 104 may receive content 2S 108(k) from the content provider 102 of FIG. 1. The content 108(k) in this example is a television program which includes credits which describe the actors, producers, and so on. The credits may also include a preview for next week's episode of the television program. The preview has an embedded recording document 302 which causes an interactive icon to appear that, when selected, allows the user to automatically schedule a recording for fine next episode of the television program.
304598.12W0 [0042) The recording document 302 is then communicated to the distribution server i 18 over the network 110 for parsing by the parser module 138. The parser module 138, when executed, locates the particular content item (e.g., the next episode of the television program) based on the recording document 302 and the EPG data 122(m) and S adds a reference to the particular content item to a recording list 140. The recording list 140 causes the navigation module 134 to record the content locally in the database 130 as content 132(j). Thus, the recording document 302 embedded in the content 108(k) provides for automatic recording of the next episode of the television program with minimal user intervention.
(ooa3[ In another such technique, a remote content recordation technique is provided by using a remote record service 304. For example, the remote record service 304 may provide a web site which enables a user to select content for recording. The web site 304 may then communicate a recording document 306 that describes the content selected by the user to cause the client 104 to automatically record the selected content 1 S as previously described.
[00441 In a further such technique, the user interacts with the remote device 142 to remotely record content using the client I04. For example, the remote device 142 may execute an emaiI module 308 that causes an email that contains a recording document 310 to be communicated to the distribution server 118. The distribution server 118 may then execute the parser module 138 to compare the descriptive data in the recording document 310 with the EPG data 122(m) to determine if the particular content item referenced in the email is available. If so, the parser modulel38 may then be executed-to determine if access to the particular content item is permitted by the client 104 based on the client state data 220(1). For example, the client state data 220(1) may indicate 2S whether the user subscribes to a content service package that includes the particular content item. If the user does have conditional access rights, the particular content item is added to the recording list 140 for causing the navigation module 134 to record the particular content item as content 132(j) in the database I30.
[oo4sl In another example, the remote device 142 may include a text messaging module 312 to receive a text message from another remote device. The text message may describe a particular content item, such as by providing the title, names of actors, 304598. ! 2 W0 genre, and so on. The text message may be examined to dynamically generate the recording document 310 that contains the content descriptions from the text message.
'The recording document 310 may then be communicated to the distribution server 118 for processing as previously described, 1n this example, the recording document 310 is dynamically generated, further discussion of which may be found in relation to FIGS. 5-7. Although the system 300 of FIG. 3 described the execution of the parser module 138 on the distribution server 118, the parser module 138 may also be executed on the client 104. For example, the parser module 138, when executed on the client 104, may compare the descriptive data in the recording document 306 with the EPG 124 (e.g., the EPG data utilized to form the EPG stored on the client 304) to determine availability of the particular content item. Further discussion of execution of the parser module 138 by the client 104 may also be found in relation to FIGS. 5-7. Although a variety of exemplary content recordation techniques have been described, a variety of other content recordation techniques may also be provided that utilize a recording document 15 for comparison with EPG data.
Exemulai ,~Pfocedures ~0o461 The following discussion describes content recordation techniques that may be implemented utilizing the previously described systems and devices. Aspects of each of the procedures may be implemented in hardware, firmware, or software, or a combination thereof. The procedures are shown as a set of blocks that specify operations performed by one or more devices and are not necessarily limited to the orders shown for performing the operations by the respective blocks.
10o4~] FIG. 4 is a flow diagram depicting a procedure 400 in an exemplary implementation in which a recording document is utilized to record a particular content item. At block 402, a recording document 404 is invoked by a remote device 142 for a particular content item. For example, the remote device 142 rnay access a web site 406 that provides an output of a web page 408 for viewing at the remote device 142. The web page 408, when provided to the remote device 142, may also include the recording document 404 that describes 8 particular content item. For instance, the web page 408 may include a review of a television show that is available from a broadcast from a head 304598,12W0 end 112. If the user wishes to record the television show, the user selects a link in the web page 408, which causes the recording document to be invoked.
~ooasl The recording document 404 in this example follows an XML recording schema. The XML recording schema is an abstract representation depicting the 5 interrelationship between attributes and elements of an XML object, which in this instance is the recording document 404 or a portion of the recording document 404. An example of the recording document 404 which complies with an exemplary XMI, recording schema is shown as follows:
<?xml version=" 1.0" encoding="utf 8" ?>
10 <!-- Sample Click-to-Record (NBC Single-Episode Scenario) -->
<clickToRecord xmlns="urnachemas-microsoft-com:ehome:clicktorecord">
<ds:Signature xmlns:ds="http://www.w3.orgI2000109/xmldsig#">
<!-- XML Signature goes here -->
</ds:Signature>
15 <body>
<metadata>
<!--'Fhe following information should be considered insecure unless signed. -->
<description>A very special episode of Friends.</description>
<moreInfoUrbhttp:/lwww.nbc.com/friends/</moreInfoUrl>
4metadata~
<!-- hard prepad and postpad 5 minutes - if airing specified isn't found, suggest another one -->
<prngramRecord prepadding="5" postpadding="5"
allowAlternateAirings="true" allowAlternateService="false">
<program>
<key field="urnachemas-microsoft-com:ehome:epg:program#title" match="exact">Friends</key>
<key field="urnachemas-microsoft-com:ehome:epg:program#episodetitle" match="exact">The One Where Chandler Marries Monica</key>
304598.12 WO
i' I
<lprogram>
<service>
<key field="urnachemas-microsoft-com:ehome:epgaervice#affiliate" match="startswith">NBC</key>
$ </service>
<t-- Folks in PST have a time (in UTC) specified -->
<airing timeZone="EST">
<key field="urnachemas-microsoft-com:ehome:epg;airing#starttime">2003-10-15T08:OO:OOZ<lkey>
<lairing>
<!-- Other folks record if the show is found within 3 hours of the UTC time specified -->
<airing searchSpan=" 180">
<key field="urnachemas-micmsoft-com:ehome:epg:airing#starttime">2003-10..15T08:00:00Z</key>
</siring>
</programRecord>
</body>
</clickToRecord>
The outermost element <ciickToRecord> is the root element of ttte recording document 404, which is defined by the namespace "urnachemas-microsoft com:ehome:clicktorecord". The <clickToRecord> element contains an element:
<bod~ plus an optional digital signature conforming to an XML Signature 25 specification.
(00491 The <body~ element contains a single <metadata> element followed by one or more <programRecord> elements. The <metadata> element may encapsulate several sub-elements to providing additional data that describes the requested content item. The following is a list of exemplary <metadata> sub-elements:
3oas9s. ~ awo [oosol Element Usage <description> Description of the package {e.g., A Very Special E isode of Friends <expires> Datell"ime after which the recording document ex fires.
<morelnfoUrl> Hyperlink to the source's website (e.g., h :/lentertainment.msn.comltv <updateUrl> Pointer to a URL that may contain updated versions of the recording document to account for schedule char es.
One or more record definition elements may be included after the <metadata>
element as shown in the above exemplary recording document 404. A
<preRecord> record definition element is included which covers both one-time and series recording scenarios.
[oosl[ As shown in the sample document above, the <programRecord> element may include several optional attributes, examples of which are described as follows:
Attribute Default . Usa a prepadding/postpadding0/0 ~ Specifies pre-padding and/or post-padding of the recording in minutes. For example, padding may be utilized to account for a lack of clock synchronization between the head end 112 of FIG.
1 and the client 104.
allowAlternateAirings true Specifies how to handle instances in which a specified' broadcast of a content item cannot be found.
If this attribute is "true", a search for the same content item is performed for different scheduled times and the user is informed of the change, if any. If this attribute is"false", and the show is not found within the s cified time 304598.12W0 window, then the request will fail and the user will be informed.
allowAltemateServices false Similar to the "aliowAlternateAirings", however, by specifying "true"
different content providers (e.g., broadcasters) may be s ecified.
pmgramDuration 0 Specifies an output duration of the content item.
This may be used if the content item is not found in the current EPG
and a temporary recording event must be created.
If 0, the content item must appear in the 'de or the ue fails.
firstRunOnl false Don't retard renms.
daysOf Week Ox7F Indicates which days of the week a content item rnay be recorded for manual and eneric "ke ord"
r nests.
~~~n8 false This element differentiates between one-time and series request behavior for the content item.
100521 The <programRecord> element may include a variety of element types as children that fiuther describe the particular content item, such as <program>
(e,g., a title of a television program), ~ice> (e.g., a broadcast channel that provides the television program), and <airing> (e.g., a time when the television program is to be broadcast). Each of these elements may occur more than once in the recording document 404.
loos3l At block 410, the remote device communicates the recording document 404 to the head end I 12. For example, the recording document 404 may be transmitted (i.e., pushed) over the network 106, implemented using the Internet, for receipt by the head end 112. In another example, the recording document is "pulled" from the remote device 142 by the head end 112. For instance, the head end 112 may be configured to periodically monitor the remote device 142 for presence of the recording document 404.
304598.12 W O
100541 At block 412, the head end 112 queries the database 120 of EPG data 122(m) to determine if the particular content item described by the recording document 404 is available. The head end 122, for instance, may execute the parser module 138 to locate data in the recording document 404 that describes the particular content item, which is illustrated at block 412 of FIG. 4 as "content description 414". 'The content description 414 (i.e., the descriptive data) is then compared with the EPG data 122(m) to find a match. For example, the <program>, ~service>, and <airing> elements may be compared with the EPG data 122(m) to find a particular content item which most satisfies those elements. Thus, the parser module 138, when executed, may determine I 0 how to record the particular content item that is described by the recording document by cross-referencing the content description 414 with the EPG data 122(m).
l0oss] In an implementation, the head end 112 utilizes minimum search held requirements before querying the database that contains EPG data 122(m) (block 412).
For example, speciftc combinations of search criteria, when included in a recording document, may result in a failure in the query (block 412) due to insufficient amount of information (e.g., elements) to locate the particular content item. For instance, a recording document that only specifies a <serviee> (e.g., a broadcast channel) may be considered as invalid unless a corresponding <program> and/or <airing> is provided.
The following is a listing of exemplary legal combinations of the three elements previously described:
<program> (e.g., record this program anytime it is streamed, on any service);
<progam>, <service> (record this program anytime it is streamed from a specifced service);
25 <program>, <airing> (record this program at this time from any service);
<preg~>, <~~rtce>, <airing> (record this program at this time from this service); and <.service>, <airing> (record the named service at the given time).
Although three elements are described, a variety of other elements and combinations thereof may also be included in the recording document 404 to locate a particular content item.
304598.12 WO
ioo561 Through use of elements and different combinations of the elements, for example, search criteria may be broadly or narrowly specified depending upon the desired implementation. For instance, a fan website may post a recording document for recording any episode of a particular television program no matter what time it is 5 broadcast and no matter which channel broadcasts the television program.
Such a recording document may specify the title of the television program (e.g., <program>) without supplying any other additional elements. In another instance, a website provided by a particular content broadcaster may supply a recording document that specifies episodes that are broadcast by that particular content broadcaster and does not 10 wish to include episodes that are broadcast by rival broadcasters. In this instance, the recording document specifies the title of the television program (e.g., <program>) and the broadcaster (e.g., Gservice>).
100571 Although some examples of search criteria have been described, a variety of other search criteria may also be specified in a recording document. For example, the 15 recording document may specify alternative matching attributes, such as "(<program>
and <service>) or (<service> and <airing>)". Additionally, each of the elements may be specified in a variety of ways. For instance, a target service may be specified by call sign, name, affiliate, and so on. Thus, the recording document may flexibly describe search criteria as contemplated by a creator of the recording document.
20 (00581 The search criteria (i.e., elements) may also be processed so that the recording document is transportable between users having different respective content providers.
For example, users may receive content through different channel lineups, the users may be located in different time zones, and so on. Time-based search criteria, for instance, may be specified using any time-zone and then normaiized to a local time-zone when parsed. In another instance, the search criteria may be restricted to within a particular offset from coordinated universal time (UTC). Multiple criteria may be specified in this way so one time can be specified that applies only to Pacific Standard Time (PST) and Eastern Standard Time (EST), for example, and another time set for Mountain Standard Time (MST) and Central Standard Time (CST). In a further instance, a search "window" can be specified to allow the episode to be matched within a specific range of time around the time specified.
304598. t2 WO
X00591 If the particular content item is available, then the head end adds a content reference 418 to the particular content item in the recording list 140 (block 416). The content reference 4 i 8, for instance, may specify a broadcast channel and time to record the referenced content item, map to a memory location of the particular content item in a database 114 of FIG. 1 at the head end 112, and so on.
loobol At block 420, the head end 112 causes the client 104 to record the particular content item referenced in the recording Iist 140. For example, the head end 112 may ex~ute the parser module 138 to communicate the content reference 418 over the network 106 to the client 104. The navigation module 134, upon receipt of the content reference 418, records the particular content item to the database 130 as specified by the content reference 418. Thus, in this example, the remote device 142 is able to cause the client 104 to record a particular content item without direct interaction with the client 104.
(00611 FIG. 5 is an illustration of a system 500 in an exemplary implementation in which a graphical user interface (GUI) 502 is provided by the recording module 228 to dynamically generate the recording document I36 based on user input. In the previously described procedure 400 of FIG. 4, the recording document 404 was preconfigured and obtained to record a particular content item. The recording document may also be dynamically generated based on user input to describe a particular content item for recording.
10o6z1 The remote device 142, for example, includes the recording module 228.
The recording module 228, when executed on the remote device 142, provides an output for display on a display device 504 of the GUI 502. The GUI 504 in this example provides an interface for entering keyword search elements which may be utilized to lacate a particular content item. For instance, the user may utilize as input device to enter a partion of a title and actors in the particular content item, such as "Godfather" 506, "Pacino" 508, and "DeNiro" 510. The recording module 228 utilizes these elements to form the recording document 136. The recording document 136 is then communicated over the network 106 to the distribution server 118 and parsed by the parser module 138 as previously described to determine if the described particular content item of the recording document 136 is available.
304598.12W0 100631 In this example, the elements "Godfather" 506, "Pacino" 508 and "De Niro"
510 are utilized to determine if the particular content item "Godfather Ir' is available by finding a content item described in the EPG data 122(m) of FIG. 1 that satisfies each of these elements. In another implementation, a "best match" may be performed so that the content item described in the EPG data 122{m) which satisfies the most elements in the recording document 136 is reported to the user via the GUI 504. For example, Godfather II may not be available based on a query of the EPG data 122(m).
However, the movie Godfather I, which satisfies the elements "Godfather" 506 and "Pacino" 508 may be available. Therefore a result of the query, which indicates the availability of 10 Godfather I, is output via the GUI 504 so that the user can decide whether to record that particular content item.
100641 FIG. 6 is an illustration of a system 600 in an exemplary implementation in which the recording module is executed to exaraine a textual description of content to dynamically generate a recording document. In the system 500 of FIG. 5, the recording document 136 was dynamically generated based on user input. The recording document I36 may also be dynamically generated without user input.
(00651 The client 104, for instance, irtay be configured as a set-top box 126 that is communicatively coupled to the display device 128. The client 104 executes the navigation module 134 to access a textual description of a particular content item over the network 106, which in FIG. 6 is illustrated as a content review 602 that is available from a web site. The user, upon reading the content review 602, may desire to record the particular content item described in the review. In this instance, however, the content review 602 does not include a preconfigured recording document as previously described in relation to FIG. 3. Therefore, the client 104 executes a recording module 604 to dynamically generate the recording document 136 based on the content review 602.
100651 The recording module 604, for example, may be executed to examine the content review 602 to find one or more words which describe the particular content item. In an implementation, the recording module 604 compares words in the content review 602 with a database 606 of descriptive words which may be utilized to describe content, such as names of broadcast channels, titles, actors, and so on. For instance, the 304598.12 WO
recording module 604, when executed, locates the words "hardball" 608, "Chris Matthews" 610, and "MSNBC" 612 (MSNBC is a trademark of MSNBC Cable L.L.C.
of New York, New York). The recording module 604 then generates a recording document 614 and communicates it over the network 106 to a parser module 616 that is executable on another client 618.
(0o6~1 The parser module 616, when executed on the other client 618, compares the recording document 614 with an EPG 620 to determine if the particular content item described in the recording document 614 is available, and if so, causes a navigation module 622 to record the particular content item as content 624(p), where "p"
can be any integer from one to "P", in the database 626.
(00681 In another implementation, the recording module 604 and the parser module 616 are executed to directly compare words 608-612 in the content review 602 with the EPG 124 that is stored on the client 104. 1n other words, the EPG 124 (and more particularly the EPG data that is utilized to configure the EPG 124) provides ttte I5 database 606. In this implementation, the recording module 604 does not wait until after the recording document 608 is completely generated to perform the comparison, but rather compares words 608-612 with the EPG 124.
(oo6QI It should be noted that in the system 600 of FIG. 6, the client 104 executes the recording module 604 to generate the recording document 136. Another client executes the parser module 616 to determine if the particular content item is available based on another EPG 620 that is stored locally on the other client 618. Thus, the content recordation techniques may also be utilized for interaction between clients 104, 618 without directly involving the head end I 12 of F1G. 1. Further discussion of client execution of the parser module may be found in relation to the following figure.
25 (007oI F1G. 7 is a flow diagram depicting a procedure 700 in an exemplary implementation in which a client dynamically generates a recording document that is utilized to determine availability of a particular content item for recording by the client.
At block 702, the client displays a textual description of a particular content item. A
variety of textual descriptions may be displayed, such as the content review 602 of FIG.
6, an email, a text message communicated from another client, and so on.
304548.12 WO
X00711 At block 704, the client receives an input to active a recording module. For example, the client may provide an icon for selection by the user, a drop-down menu for activation of the recording module, and so on. At block 706, the recording module, when executed, examines the text to locate descriptions of the particular content item.
For instance, the recording module may first examine the text to locate words which are typically used to describe the <program>, <service>, and <airing> elements that were previously described. The recording module may also locate other words which describe the particular content item, such as actor, output duration of the content, genre, start time, stop time, plot, and so on.
10 [00721 At block 708, the recording module generates a recording document that includes the located descriptions of the particular consent item. The recording document, for instance, may be configured according to an XML recording schema that is understood by the parser module. The recording module then passes the recording document to the parser module (block 710).
[00731 At block 712, the parser module queries EPG data to locate the particular content item. In a first scenario, the parser module is executed on the client to query an EPG that is stored locally on the client. In a second scenario, the parser module is executed on the client to query EPG data that is stored at the head end, such as the EPG
data 122(m) stored in the database 120 at the head end 112 of FIG. 1.
[00741 At decision block 714, a determination is made as to whether the located content item conflicts with another content item in the recording Iist. For example, the recording list may be configured for implementation by a DVR that is capable of recording a single content item at any one point in time. Therefore, the parser module may be executed to flag conflicts in the recording list so that the referenced content 25 items are recorded as desired. If there is a conflict (block 714), a message is sent to the user (block 716) so that the user may decide which of the conflicting content items is to be recorded, if any.
(00751 If the located content item does not conflict with another content item in the retarding list (block 714), a determination is made as to whether the client is authorized to record the content (block 718). For example, the parser module may be executed to determine from the client state data 220(1) stored at the distribution server 118 of FIG. 2 304598.12 WO
whether the client is permitted to access the referenced content item. The client state data 220(1), for instance, may be utilized to indicate a variety of conditional access rights, such as parental blocks, digital rights management (DRM), content subscriptions, and so on.
5 ~00~61 If the client is authorized to record the content (block 718), then the located content item is added to a recording list (block 720). For instance, a reference to the located content item may be added which describes how to record the located content item, such as date, time, and channel of a broadcast of a television program, a memory location, and so on. The recording list may then be utilized to cause the navigation 10 module to record the added content item (block 722).
(oo~~l Conciasion Although the invention has been described in language specific to structural features and/or methodological acts, it is to be understood that the invention defined in the appended claims is not necessarily limited to the specific features or acts described.
I 5 Rather, the specific features and acts are disclosed as exemplary forms of implementing the claimed invention.
(00261 The client 104 is equipped with sufficient processing and storage capabilities to store and run a navigation module 134. The navigation module 134, when executed on the client 104, provides control functions for interacting with content.
For example, the control functions may include the DVR control functions as previously discussed, as well as channel selection, electronic program guide (EPG) navigation, and so on. In another implementation, the navigation module 134 provides media player functionality, such as to play media having audio and/or visual data, such as MP3 data.
[0027] In a further implementation, the client 104 may execute the navigation module 134 to cause recordation of the content 116(n) at the distribution server 118.
For example, the navigation module 134 may form a request that is communicated to the distribution server 118 over the network 106 to record content 108(k) communicated to the distribution server 130 from the content provider 102. The distribution server 118, 20 in response to the request, records the requested content such that the navigation module 134 operates as a network digital video recorder (NDVR). Thus, through execution of the navigation module 134, the client 104 may playback locally-stored content 132(j), content 116(n) that is stored remotely over the network 106, and may even control the recordation and playback of the remotely stored content I 16(n) to the client 104.
25 [0028( Generally, any of the functions described herein can be implemented using software, firmware (e.g., fixed logic circuitry), manual processing, or a combination of these implementations. The terms "module," "functionality," and "logic" as used herein generally represent software, firmware, or a combination of software and firmware. In the case of a software implementation, the module, functionality, or logic represents 30 program code that performs specified tasks when executed on a processor (e.g., CPU or CPUs). The program code can be stored in one or more computer readable memory 304598.12 WO
g devices. The content recordation techniques described below are platform-independent, meaning that the content recordation techniques may be implemented on a variety of commercial computing platforms having a variety of processors.
(0029] The environment 100 supports a variety of techniques for recordation of the 5 content 132(j), 116(n) through use of a recording document 136. The recording document 136, for instance, describes content to be recorded and may conform to an eXtensible Markup Language (XML) schema that is parsable by a parser module 138 to locate a particular content item. For example, the recording document 136 may describe a title and a start time for a desired content item. The parser module 138 is 10 executed on the distribution server I 18 to compare the title and the start time described in the recording document with the EPG data 122(m} stored in the database 120 to determine if and when the particular content item is available. If the particular content item is available, a reference to the particular content item is added to a recording list 140 to cause the particular content item to be recorded. For example, the recording list I S 140 may be utilized by the distribution server 118 to record content I
16(n) at the head end 112 in a NDVR scenario. In another example, the recording list 140 is communicated to the client 104 to cause the navigation module I34 to record content 132(j) locally in a DVR scenario. In a further example, the recording document 136 is communicated from the remote device 142 to the client 104 for parsing by the client 20 104, an example of which is shown in relation to FIG. 2B.
(0030( The recording document 136 may be provided in a variety of ways. As illustrated in FIG. I, the recording document 136 is stored on a remote device 142 that is communicatively coupled to the network l Ob. Therefore, a user of the remote device 142 may provide the recording document 136 to the head end I 12 to cause recording of 25 content described by the recording document 136. Thus, the recording document 136 may be provided remotely by the remote device 142 such that the user does not need to interact with the client 104 locally to cause recordation of desired content.
A variety of other ways of providing the recording document 136 are described in relation to FIGS.
2A, 2B, and 3.
30 (oo3tl FIG. 2A is an illustration of an exemplary system 200 showing the distribution server 118, the client 104, and the remote device i42 of FIG. 1 in greater detail. The 304598.12 WO
client 104 includes a processor 202 and memory 204. Processors are not limited by the materials from which they are formed or the processing mechanisms employed therein.
For example, processors may be comprised of semiconductors) and/or transistors (e.g., electronic integrated circuits (ICs)). In such a context, processor-executable instructions may be electronically-executable instructions. Alternatively, the mechanisms of or for processors, and thus of or for a computing device, may include, but are not limited to, quantum camputing, optical computing, mechanical computing (e.g., using nanotechnology), and so forth. Memory 204 may include one or more memory devices, such as read only memory (RAM), random access memory (RAM), hard disk memory, removable media memory devices, and so on.
100321 The navigation module 134 and the recording list 140 are illustrated as being executed on the processor 202 and are storable in memory 204. The EPG 124 is illustrated as being stored in the memory 204 and is executable on the processor 202. It should be noted that in the illustrated system 200 of FIG. 2A, the recording list 140 is depicted within the client 104 to show that the recording list 140 may be configured for use by the navigation module 134 to cause recordation of content, further discussion of which may be found starting in relation to FIG. 4.
100331 The client I04 may also include a network interface 206 for receiving the content 116(n) of FIG. 1 that is communicated (e.g., streamed) over the network 106.
For example, the network interface 206 may be configured as a tuner that receives broadcast content from over the network 106, may be configured as a transmitter/receiver (transceiver) that is suitable for two-way communication aver the network 106, and so on. Thus, the network interface 206 may be configured to transmit and receive messages over the network to and from the head end 112 and/or the remote device 142.
100341 Content 116(n) received from the network 106 via the network interface may be stored in the database 130 for later output by the client 104 and/or provide for immediate output of the content I I6(n). The database 130 is illustrated as being separate from memory 204, but may also be included in memory 204. For example, the storage device for the database 124 may be co~gured as a hard disk drive and the memory 204 may be co~gured as RAM, both the memory 204 and the database I30 304598.12W0 may be implemented as RAM, both the memory 204 and the database 130 may be implemented as removable memory, and so forth. The client 104 executes the navigation module 134 to retrieve the content 132(j) from the database 124 and output the content I32(j) through an output interface 208 for rendering on the display device 5 122. Thus, in this implementation, the client 104 is capable of operating as a DVR that stores and plays back the content 132(j).
(0035] The client 104 may be locally controlled by a user via inputs provided by an input device 210. The inputs are received by the client 104 from an input interface 212 over a local connection 214. The input interface 212, local connection 214 and input 10 device 210 may be configured in a variety of ways. For example, the input interface 212 may be configured as a wireless port, such as an infrared (IR) or Bluetooth wireless port, for receiving wireless communications from input device 210, such as a remote control device, a handheld input device, or any other wireless device, such as a wireless keyboard. In alternate embodiments, the input interface 212 may use an RF
I S communication link or other made of transmission to communicate with client 104, such as a wired connection which may include a universal serial bus (LJSB) connection, and so on.
[00361 When output of content is requested, the navigation module 134 is executed on the processor 202 to obtain content, such as from content 116(n) of FIG. 1 that is streamed from the distribution server 118 over the network 106, content 132(j) that is stored locally on the database 130, and so on. The navigation module 134 may also restore the content to the original encoded format as provided by the content provider 102 of FIG. 1. For example, content 116(n) of FIG. 1 may be compressed and then streamed from the distribution server 118 to the client 104. Therefore, when the 25 navigation module 134 receives the content, the content may be decompressed for rendering by the display device 128.
(0037] The distribution server 118 also includes a processor 216 and memory 218.
The parser module 138 is illustrated as being executed on the processor 216 aztd is storable in memory 218. The memory 218 of the distribution server II8 is also 30 illustrated as including a plurality of client state data 220(1), where "1"
can be any integer from 1 to "L". The client state data 220(1) is utilized to process requests to 30?598.12W0 record content, such as at the head end 112 of FIG. 1 as content 116(n) and/or at the client in database 130 as content 132(j). For example, the distribution server 118 may include a content manager module 222 (hereinafter, "manager module") that is executable on the processor 216 to manage client 104 content access. The client state 5 data 220(1), for instance, may specify parental blocks to prevent viewing of content items, may specify conditional access rights (e.g., digital access rights) of the client for particular items of content, rating limits, favorite channels, level of service provisioned, and so on. The manager module 222, when executed, may determine if the client I 04 is permitted (i.e., authorized) to record the particular content item, and if so, the 10 distribution server l I8 causes the client 104, and specifically the navigation module 132, to record the particular content item. In this way, the head end I 12 provides an authoritative source for client state data 220(1} in the system 200 and environment I00 as shown, respectively, in FIGS. I and 2. In an implementation, the distribution server 118 may be considered the primary source for the client state data 220{1) for a particular 15 client, even over the client 104 itself. For example, by storing the client state data 220(1) on the distribution server 118, a user may switch set-top boxes without transfernng client state data between the set-top boxes. Further discussion of use of the client state data 220(1) may be found in relation to FIG. 7.
[oo3sl The remote device 142 is also illustrated as including a processor 224 and 20 memory 226. The recording document 136 is illustrated as being stored in memory 226 and is executable on the processor 224. The remote device I42 also includes a recording module 228 which is illustrated as being executed on the processor 224 and is storable in memory 226. The recording module 228, when executed, generates the recording document 136 for a particular content item. For example, the recording 25 module 228 may provide a user interface for accepting user inputs that describe a particular content item. The user inputs are processed by the recording module 228 to generate a recording document 136 that follows a schema that is understood by the parser module 138. The parser module 138, when executed, parses the recording document I36 to locate and compare descriptive data in the recording document 30 with EPG data 122(m) in the database 120. EPG data I22(m} that matches the descriptive data is then utilized to determine how to record a particular content item 304598.12W0 described in the recording document 136. A reference to the particular content item is then added to the recording list 140 to cause the navigation module 134 to be executed on the client 104 to record the particular content item. A variety of other scenarios are also contemplated such that the user may cause recordation of content at the client 104 and/or the head end I 12 of FIG. 1, further examples of which may be found in relation to the following figure.
[00391 FIG. 2B is an illustration of an exemplary system 250 showing the distribution server 118, the client 104, and the remote device 142 of FIG. 1 in greater detail such that the client includes the functionality to parse a recording document. In the system 200 described in relation to FIG. 2A, the distribution server acted as a central repository for client state data 220(t,) and executed the parser module 138 to parse the recording document 136.
(00401 In the exemplary system 250 illustrated in FIG. 2H, however, the client executes the parser module 138 to parse the recording document 136 that is communicated from the remote device 142 over the network 106. The parser module 138 may then be utilized to populate the recording list 140 as previously described by comparing the recording document 136 with EPG 124 that is stored in the memory 204.
Thus, in this instance, the head end 112 acts to broadcast content 116(n) over a broadcast network 252 and does not actively participate in the recordation of the content 132(j) on the client i04, further discussion of which may be found in relation to FIG. 6.
[00411 FIG. 3 is an illustration of a system 300 showing a variety of content recordation techniques as implemented by the distribution server 1 I8 and the client 104 of FIG. 2A. One such content recordation technique is the inclusion of the recording document 302 within content 108(k). For example, the client 104 may receive content 2S 108(k) from the content provider 102 of FIG. 1. The content 108(k) in this example is a television program which includes credits which describe the actors, producers, and so on. The credits may also include a preview for next week's episode of the television program. The preview has an embedded recording document 302 which causes an interactive icon to appear that, when selected, allows the user to automatically schedule a recording for fine next episode of the television program.
304598.12W0 [0042) The recording document 302 is then communicated to the distribution server i 18 over the network 110 for parsing by the parser module 138. The parser module 138, when executed, locates the particular content item (e.g., the next episode of the television program) based on the recording document 302 and the EPG data 122(m) and S adds a reference to the particular content item to a recording list 140. The recording list 140 causes the navigation module 134 to record the content locally in the database 130 as content 132(j). Thus, the recording document 302 embedded in the content 108(k) provides for automatic recording of the next episode of the television program with minimal user intervention.
(ooa3[ In another such technique, a remote content recordation technique is provided by using a remote record service 304. For example, the remote record service 304 may provide a web site which enables a user to select content for recording. The web site 304 may then communicate a recording document 306 that describes the content selected by the user to cause the client 104 to automatically record the selected content 1 S as previously described.
[00441 In a further such technique, the user interacts with the remote device 142 to remotely record content using the client I04. For example, the remote device 142 may execute an emaiI module 308 that causes an email that contains a recording document 310 to be communicated to the distribution server 118. The distribution server 118 may then execute the parser module 138 to compare the descriptive data in the recording document 310 with the EPG data 122(m) to determine if the particular content item referenced in the email is available. If so, the parser modulel38 may then be executed-to determine if access to the particular content item is permitted by the client 104 based on the client state data 220(1). For example, the client state data 220(1) may indicate 2S whether the user subscribes to a content service package that includes the particular content item. If the user does have conditional access rights, the particular content item is added to the recording list 140 for causing the navigation module 134 to record the particular content item as content 132(j) in the database I30.
[oo4sl In another example, the remote device 142 may include a text messaging module 312 to receive a text message from another remote device. The text message may describe a particular content item, such as by providing the title, names of actors, 304598. ! 2 W0 genre, and so on. The text message may be examined to dynamically generate the recording document 310 that contains the content descriptions from the text message.
'The recording document 310 may then be communicated to the distribution server 118 for processing as previously described, 1n this example, the recording document 310 is dynamically generated, further discussion of which may be found in relation to FIGS. 5-7. Although the system 300 of FIG. 3 described the execution of the parser module 138 on the distribution server 118, the parser module 138 may also be executed on the client 104. For example, the parser module 138, when executed on the client 104, may compare the descriptive data in the recording document 306 with the EPG 124 (e.g., the EPG data utilized to form the EPG stored on the client 304) to determine availability of the particular content item. Further discussion of execution of the parser module 138 by the client 104 may also be found in relation to FIGS. 5-7. Although a variety of exemplary content recordation techniques have been described, a variety of other content recordation techniques may also be provided that utilize a recording document 15 for comparison with EPG data.
Exemulai ,~Pfocedures ~0o461 The following discussion describes content recordation techniques that may be implemented utilizing the previously described systems and devices. Aspects of each of the procedures may be implemented in hardware, firmware, or software, or a combination thereof. The procedures are shown as a set of blocks that specify operations performed by one or more devices and are not necessarily limited to the orders shown for performing the operations by the respective blocks.
10o4~] FIG. 4 is a flow diagram depicting a procedure 400 in an exemplary implementation in which a recording document is utilized to record a particular content item. At block 402, a recording document 404 is invoked by a remote device 142 for a particular content item. For example, the remote device 142 rnay access a web site 406 that provides an output of a web page 408 for viewing at the remote device 142. The web page 408, when provided to the remote device 142, may also include the recording document 404 that describes 8 particular content item. For instance, the web page 408 may include a review of a television show that is available from a broadcast from a head 304598,12W0 end 112. If the user wishes to record the television show, the user selects a link in the web page 408, which causes the recording document to be invoked.
~ooasl The recording document 404 in this example follows an XML recording schema. The XML recording schema is an abstract representation depicting the 5 interrelationship between attributes and elements of an XML object, which in this instance is the recording document 404 or a portion of the recording document 404. An example of the recording document 404 which complies with an exemplary XMI, recording schema is shown as follows:
<?xml version=" 1.0" encoding="utf 8" ?>
10 <!-- Sample Click-to-Record (NBC Single-Episode Scenario) -->
<clickToRecord xmlns="urnachemas-microsoft-com:ehome:clicktorecord">
<ds:Signature xmlns:ds="http://www.w3.orgI2000109/xmldsig#">
<!-- XML Signature goes here -->
</ds:Signature>
15 <body>
<metadata>
<!--'Fhe following information should be considered insecure unless signed. -->
<description>A very special episode of Friends.</description>
<moreInfoUrbhttp:/lwww.nbc.com/friends/</moreInfoUrl>
4metadata~
<!-- hard prepad and postpad 5 minutes - if airing specified isn't found, suggest another one -->
<prngramRecord prepadding="5" postpadding="5"
allowAlternateAirings="true" allowAlternateService="false">
<program>
<key field="urnachemas-microsoft-com:ehome:epg:program#title" match="exact">Friends</key>
<key field="urnachemas-microsoft-com:ehome:epg:program#episodetitle" match="exact">The One Where Chandler Marries Monica</key>
304598.12 WO
i' I
<lprogram>
<service>
<key field="urnachemas-microsoft-com:ehome:epgaervice#affiliate" match="startswith">NBC</key>
$ </service>
<t-- Folks in PST have a time (in UTC) specified -->
<airing timeZone="EST">
<key field="urnachemas-microsoft-com:ehome:epg;airing#starttime">2003-10-15T08:OO:OOZ<lkey>
<lairing>
<!-- Other folks record if the show is found within 3 hours of the UTC time specified -->
<airing searchSpan=" 180">
<key field="urnachemas-micmsoft-com:ehome:epg:airing#starttime">2003-10..15T08:00:00Z</key>
</siring>
</programRecord>
</body>
</clickToRecord>
The outermost element <ciickToRecord> is the root element of ttte recording document 404, which is defined by the namespace "urnachemas-microsoft com:ehome:clicktorecord". The <clickToRecord> element contains an element:
<bod~ plus an optional digital signature conforming to an XML Signature 25 specification.
(00491 The <body~ element contains a single <metadata> element followed by one or more <programRecord> elements. The <metadata> element may encapsulate several sub-elements to providing additional data that describes the requested content item. The following is a list of exemplary <metadata> sub-elements:
3oas9s. ~ awo [oosol Element Usage <description> Description of the package {e.g., A Very Special E isode of Friends <expires> Datell"ime after which the recording document ex fires.
<morelnfoUrl> Hyperlink to the source's website (e.g., h :/lentertainment.msn.comltv <updateUrl> Pointer to a URL that may contain updated versions of the recording document to account for schedule char es.
One or more record definition elements may be included after the <metadata>
element as shown in the above exemplary recording document 404. A
<preRecord> record definition element is included which covers both one-time and series recording scenarios.
[oosl[ As shown in the sample document above, the <programRecord> element may include several optional attributes, examples of which are described as follows:
Attribute Default . Usa a prepadding/postpadding0/0 ~ Specifies pre-padding and/or post-padding of the recording in minutes. For example, padding may be utilized to account for a lack of clock synchronization between the head end 112 of FIG.
1 and the client 104.
allowAlternateAirings true Specifies how to handle instances in which a specified' broadcast of a content item cannot be found.
If this attribute is "true", a search for the same content item is performed for different scheduled times and the user is informed of the change, if any. If this attribute is"false", and the show is not found within the s cified time 304598.12W0 window, then the request will fail and the user will be informed.
allowAltemateServices false Similar to the "aliowAlternateAirings", however, by specifying "true"
different content providers (e.g., broadcasters) may be s ecified.
pmgramDuration 0 Specifies an output duration of the content item.
This may be used if the content item is not found in the current EPG
and a temporary recording event must be created.
If 0, the content item must appear in the 'de or the ue fails.
firstRunOnl false Don't retard renms.
daysOf Week Ox7F Indicates which days of the week a content item rnay be recorded for manual and eneric "ke ord"
r nests.
~~~n8 false This element differentiates between one-time and series request behavior for the content item.
100521 The <programRecord> element may include a variety of element types as children that fiuther describe the particular content item, such as <program>
(e,g., a title of a television program), ~ice> (e.g., a broadcast channel that provides the television program), and <airing> (e.g., a time when the television program is to be broadcast). Each of these elements may occur more than once in the recording document 404.
loos3l At block 410, the remote device communicates the recording document 404 to the head end I 12. For example, the recording document 404 may be transmitted (i.e., pushed) over the network 106, implemented using the Internet, for receipt by the head end 112. In another example, the recording document is "pulled" from the remote device 142 by the head end 112. For instance, the head end 112 may be configured to periodically monitor the remote device 142 for presence of the recording document 404.
304598.12 W O
100541 At block 412, the head end 112 queries the database 120 of EPG data 122(m) to determine if the particular content item described by the recording document 404 is available. The head end 122, for instance, may execute the parser module 138 to locate data in the recording document 404 that describes the particular content item, which is illustrated at block 412 of FIG. 4 as "content description 414". 'The content description 414 (i.e., the descriptive data) is then compared with the EPG data 122(m) to find a match. For example, the <program>, ~service>, and <airing> elements may be compared with the EPG data 122(m) to find a particular content item which most satisfies those elements. Thus, the parser module 138, when executed, may determine I 0 how to record the particular content item that is described by the recording document by cross-referencing the content description 414 with the EPG data 122(m).
l0oss] In an implementation, the head end 112 utilizes minimum search held requirements before querying the database that contains EPG data 122(m) (block 412).
For example, speciftc combinations of search criteria, when included in a recording document, may result in a failure in the query (block 412) due to insufficient amount of information (e.g., elements) to locate the particular content item. For instance, a recording document that only specifies a <serviee> (e.g., a broadcast channel) may be considered as invalid unless a corresponding <program> and/or <airing> is provided.
The following is a listing of exemplary legal combinations of the three elements previously described:
<program> (e.g., record this program anytime it is streamed, on any service);
<progam>, <service> (record this program anytime it is streamed from a specifced service);
25 <program>, <airing> (record this program at this time from any service);
<preg~>, <~~rtce>, <airing> (record this program at this time from this service); and <.service>, <airing> (record the named service at the given time).
Although three elements are described, a variety of other elements and combinations thereof may also be included in the recording document 404 to locate a particular content item.
304598.12 WO
ioo561 Through use of elements and different combinations of the elements, for example, search criteria may be broadly or narrowly specified depending upon the desired implementation. For instance, a fan website may post a recording document for recording any episode of a particular television program no matter what time it is 5 broadcast and no matter which channel broadcasts the television program.
Such a recording document may specify the title of the television program (e.g., <program>) without supplying any other additional elements. In another instance, a website provided by a particular content broadcaster may supply a recording document that specifies episodes that are broadcast by that particular content broadcaster and does not 10 wish to include episodes that are broadcast by rival broadcasters. In this instance, the recording document specifies the title of the television program (e.g., <program>) and the broadcaster (e.g., Gservice>).
100571 Although some examples of search criteria have been described, a variety of other search criteria may also be specified in a recording document. For example, the 15 recording document may specify alternative matching attributes, such as "(<program>
and <service>) or (<service> and <airing>)". Additionally, each of the elements may be specified in a variety of ways. For instance, a target service may be specified by call sign, name, affiliate, and so on. Thus, the recording document may flexibly describe search criteria as contemplated by a creator of the recording document.
20 (00581 The search criteria (i.e., elements) may also be processed so that the recording document is transportable between users having different respective content providers.
For example, users may receive content through different channel lineups, the users may be located in different time zones, and so on. Time-based search criteria, for instance, may be specified using any time-zone and then normaiized to a local time-zone when parsed. In another instance, the search criteria may be restricted to within a particular offset from coordinated universal time (UTC). Multiple criteria may be specified in this way so one time can be specified that applies only to Pacific Standard Time (PST) and Eastern Standard Time (EST), for example, and another time set for Mountain Standard Time (MST) and Central Standard Time (CST). In a further instance, a search "window" can be specified to allow the episode to be matched within a specific range of time around the time specified.
304598. t2 WO
X00591 If the particular content item is available, then the head end adds a content reference 418 to the particular content item in the recording list 140 (block 416). The content reference 4 i 8, for instance, may specify a broadcast channel and time to record the referenced content item, map to a memory location of the particular content item in a database 114 of FIG. 1 at the head end 112, and so on.
loobol At block 420, the head end 112 causes the client 104 to record the particular content item referenced in the recording Iist 140. For example, the head end 112 may ex~ute the parser module 138 to communicate the content reference 418 over the network 106 to the client 104. The navigation module 134, upon receipt of the content reference 418, records the particular content item to the database 130 as specified by the content reference 418. Thus, in this example, the remote device 142 is able to cause the client 104 to record a particular content item without direct interaction with the client 104.
(00611 FIG. 5 is an illustration of a system 500 in an exemplary implementation in which a graphical user interface (GUI) 502 is provided by the recording module 228 to dynamically generate the recording document I36 based on user input. In the previously described procedure 400 of FIG. 4, the recording document 404 was preconfigured and obtained to record a particular content item. The recording document may also be dynamically generated based on user input to describe a particular content item for recording.
10o6z1 The remote device 142, for example, includes the recording module 228.
The recording module 228, when executed on the remote device 142, provides an output for display on a display device 504 of the GUI 502. The GUI 504 in this example provides an interface for entering keyword search elements which may be utilized to lacate a particular content item. For instance, the user may utilize as input device to enter a partion of a title and actors in the particular content item, such as "Godfather" 506, "Pacino" 508, and "DeNiro" 510. The recording module 228 utilizes these elements to form the recording document 136. The recording document 136 is then communicated over the network 106 to the distribution server 118 and parsed by the parser module 138 as previously described to determine if the described particular content item of the recording document 136 is available.
304598.12W0 100631 In this example, the elements "Godfather" 506, "Pacino" 508 and "De Niro"
510 are utilized to determine if the particular content item "Godfather Ir' is available by finding a content item described in the EPG data 122(m) of FIG. 1 that satisfies each of these elements. In another implementation, a "best match" may be performed so that the content item described in the EPG data 122{m) which satisfies the most elements in the recording document 136 is reported to the user via the GUI 504. For example, Godfather II may not be available based on a query of the EPG data 122(m).
However, the movie Godfather I, which satisfies the elements "Godfather" 506 and "Pacino" 508 may be available. Therefore a result of the query, which indicates the availability of 10 Godfather I, is output via the GUI 504 so that the user can decide whether to record that particular content item.
100641 FIG. 6 is an illustration of a system 600 in an exemplary implementation in which the recording module is executed to exaraine a textual description of content to dynamically generate a recording document. In the system 500 of FIG. 5, the recording document 136 was dynamically generated based on user input. The recording document I36 may also be dynamically generated without user input.
(00651 The client 104, for instance, irtay be configured as a set-top box 126 that is communicatively coupled to the display device 128. The client 104 executes the navigation module 134 to access a textual description of a particular content item over the network 106, which in FIG. 6 is illustrated as a content review 602 that is available from a web site. The user, upon reading the content review 602, may desire to record the particular content item described in the review. In this instance, however, the content review 602 does not include a preconfigured recording document as previously described in relation to FIG. 3. Therefore, the client 104 executes a recording module 604 to dynamically generate the recording document 136 based on the content review 602.
100651 The recording module 604, for example, may be executed to examine the content review 602 to find one or more words which describe the particular content item. In an implementation, the recording module 604 compares words in the content review 602 with a database 606 of descriptive words which may be utilized to describe content, such as names of broadcast channels, titles, actors, and so on. For instance, the 304598.12 WO
recording module 604, when executed, locates the words "hardball" 608, "Chris Matthews" 610, and "MSNBC" 612 (MSNBC is a trademark of MSNBC Cable L.L.C.
of New York, New York). The recording module 604 then generates a recording document 614 and communicates it over the network 106 to a parser module 616 that is executable on another client 618.
(0o6~1 The parser module 616, when executed on the other client 618, compares the recording document 614 with an EPG 620 to determine if the particular content item described in the recording document 614 is available, and if so, causes a navigation module 622 to record the particular content item as content 624(p), where "p"
can be any integer from one to "P", in the database 626.
(00681 In another implementation, the recording module 604 and the parser module 616 are executed to directly compare words 608-612 in the content review 602 with the EPG 124 that is stored on the client 104. 1n other words, the EPG 124 (and more particularly the EPG data that is utilized to configure the EPG 124) provides ttte I5 database 606. In this implementation, the recording module 604 does not wait until after the recording document 608 is completely generated to perform the comparison, but rather compares words 608-612 with the EPG 124.
(oo6QI It should be noted that in the system 600 of FIG. 6, the client 104 executes the recording module 604 to generate the recording document 136. Another client executes the parser module 616 to determine if the particular content item is available based on another EPG 620 that is stored locally on the other client 618. Thus, the content recordation techniques may also be utilized for interaction between clients 104, 618 without directly involving the head end I 12 of F1G. 1. Further discussion of client execution of the parser module may be found in relation to the following figure.
25 (007oI F1G. 7 is a flow diagram depicting a procedure 700 in an exemplary implementation in which a client dynamically generates a recording document that is utilized to determine availability of a particular content item for recording by the client.
At block 702, the client displays a textual description of a particular content item. A
variety of textual descriptions may be displayed, such as the content review 602 of FIG.
6, an email, a text message communicated from another client, and so on.
304548.12 WO
X00711 At block 704, the client receives an input to active a recording module. For example, the client may provide an icon for selection by the user, a drop-down menu for activation of the recording module, and so on. At block 706, the recording module, when executed, examines the text to locate descriptions of the particular content item.
For instance, the recording module may first examine the text to locate words which are typically used to describe the <program>, <service>, and <airing> elements that were previously described. The recording module may also locate other words which describe the particular content item, such as actor, output duration of the content, genre, start time, stop time, plot, and so on.
10 [00721 At block 708, the recording module generates a recording document that includes the located descriptions of the particular consent item. The recording document, for instance, may be configured according to an XML recording schema that is understood by the parser module. The recording module then passes the recording document to the parser module (block 710).
[00731 At block 712, the parser module queries EPG data to locate the particular content item. In a first scenario, the parser module is executed on the client to query an EPG that is stored locally on the client. In a second scenario, the parser module is executed on the client to query EPG data that is stored at the head end, such as the EPG
data 122(m) stored in the database 120 at the head end 112 of FIG. 1.
[00741 At decision block 714, a determination is made as to whether the located content item conflicts with another content item in the recording Iist. For example, the recording list may be configured for implementation by a DVR that is capable of recording a single content item at any one point in time. Therefore, the parser module may be executed to flag conflicts in the recording list so that the referenced content 25 items are recorded as desired. If there is a conflict (block 714), a message is sent to the user (block 716) so that the user may decide which of the conflicting content items is to be recorded, if any.
(00751 If the located content item does not conflict with another content item in the retarding list (block 714), a determination is made as to whether the client is authorized to record the content (block 718). For example, the parser module may be executed to determine from the client state data 220(1) stored at the distribution server 118 of FIG. 2 304598.12 WO
whether the client is permitted to access the referenced content item. The client state data 220(1), for instance, may be utilized to indicate a variety of conditional access rights, such as parental blocks, digital rights management (DRM), content subscriptions, and so on.
5 ~00~61 If the client is authorized to record the content (block 718), then the located content item is added to a recording list (block 720). For instance, a reference to the located content item may be added which describes how to record the located content item, such as date, time, and channel of a broadcast of a television program, a memory location, and so on. The recording list may then be utilized to cause the navigation 10 module to record the added content item (block 722).
(oo~~l Conciasion Although the invention has been described in language specific to structural features and/or methodological acts, it is to be understood that the invention defined in the appended claims is not necessarily limited to the specific features or acts described.
I 5 Rather, the specific features and acts are disclosed as exemplary forms of implementing the claimed invention.
Claims (41)
1. A method comprising:
querying electronic program guide (EPG) data to determine if a content item described in a recording document is available for recording; and if the content item is available, adding a reference in a recording list for causing recordation of the content item.
querying electronic program guide (EPG) data to determine if a content item described in a recording document is available for recording; and if the content item is available, adding a reference in a recording list for causing recordation of the content item.
2. A method as described in claim 1, wherein the querying is performed by execution of a parser module on a head end.
3. A method as described in claim 1, wherein:
the querying is performed by execution of a parser module on a head end; and the reference in the recording list is for causing recordation of the content item by a client.
the querying is performed by execution of a parser module on a head end; and the reference in the recording list is for causing recordation of the content item by a client.
4. A method as described in claim 1, wherein the querying is performed by execution of a parser module on a client.
5. A method as described in claim 1, wherein:
the query is performed at a client; and the reference in the recording list is for causing recordation of the content item at a head end.
the query is performed at a client; and the reference in the recording list is for causing recordation of the content item at a head end.
6. A method as described in claim 1, further comprising determining if the available content item conflicts with another content item in the recording list.
7. A method as described in claim 1, further comprising examining client state data that describes conditional access rights of a plurality of clients to determine if recordation of the content item for a particular said client is permitted.
8. A method as described in claim 1, wherein the recording document describes the content item through at least one of a restrictive criterion, a service, a time, or a genre.
9. A method as described in claim 1, further comprising generating the recording document from a textual description of the content item.
10. A method as described in claim 9, wherein the textual description is selected from the group consisting of:
one or more words entered by a user via a user interface;
an article;
a text message;
an email; and another content item.
one or more words entered by a user via a user interface;
an article;
a text message;
an email; and another content item.
11. One or more computer readable media comprising computer executable instructions that, when executed by a computer, direct the computer to perform the method as described in claim 1.
12. A method comprising:
examining a textual description to locate one or more words that describe a content item;
comparing the one or more words with electronic program guide (EPG) data to determine if the content item is available for recording; and if the content item is available, adding a reference in a recording list to cause recordation of the content item.
examining a textual description to locate one or more words that describe a content item;
comparing the one or more words with electronic program guide (EPG) data to determine if the content item is available for recording; and if the content item is available, adding a reference in a recording list to cause recordation of the content item.
13. A method as described in claim 12, wherein the textual description is selected from the group consisting of:
one or more words entered by a user via a user interface;
an article;
a text message;
an email; and another content item.
one or more words entered by a user via a user interface;
an article;
a text message;
an email; and another content item.
14. A method as described in claim 12, wherein the content item is selected from the group consisting of:
a television program;
a movie;
a picture;
a music file; and media.
a television program;
a movie;
a picture;
a music file; and media.
15. A method as described in claim 12, wherein:
the examining is performed by executing a recording module on a client; and the comparing and the adding are performed by executing a parser module on a head end.
the examining is performed by executing a recording module on a client; and the comparing and the adding are performed by executing a parser module on a head end.
16. A method as described in claim 12, wherein the examining, the comparing, and the adding are performed by executing a recording module and a parser module on a client.
17. A method as described in claim 12, further comprising generating a recording document that includes the located one or more words.
18. A method as described in claim 12, further comprising:
generating a recording document that includes the located one or more words;
communicating the recording document to a head end which executes a parser module to perform the comparing and the adding; and communicating the recording list to a client to cause recordation of the content item described in the EPG data through execution of a navigation module on the client.
generating a recording document that includes the located one or more words;
communicating the recording document to a head end which executes a parser module to perform the comparing and the adding; and communicating the recording list to a client to cause recordation of the content item described in the EPG data through execution of a navigation module on the client.
19. A method as described in claim 12, further comprising determining if the client is authorized to record the content item.
20. A method as described in claim 19, wherein the determining is performed at a head end using client state data that is stored on the head end.
21. One or more computer readable media comprising computer executable instructions that, when executed by a computer, direct the computer to perform the method as described in claim 12.
22. One or more computer readable media comprising computer executable instructions that, when executed by a computer, direct the computer to:
examine a textual description to locate one or wore words that describe a content item;
generate a recording document having the one or more words; and form a communication for communicating the recording document for comparison with electronic program guide (EPG) data to determine if the content item described by the recording document is available for recording.
examine a textual description to locate one or wore words that describe a content item;
generate a recording document having the one or more words; and form a communication for communicating the recording document for comparison with electronic program guide (EPG) data to determine if the content item described by the recording document is available for recording.
23. One or mare computer readable media as described in claim 22, wherein the computer executable instructions further direct the computer to:
determine if the content item described by the recording document is available for recording; and if the content item is available, add a reference to the available content item to a recording list.
determine if the content item described by the recording document is available for recording; and if the content item is available, add a reference to the available content item to a recording list.
24. One or more computer readable media as described in claim 22, wherein the computer executable instructions further direct the computer to examine client state data that describes conditional access rights of a plurality of clients to determine if recordation of the content item for a particular said client is permitted.
25. One or more computer readable media as described in claim 22, wherein the computer executable instructions further direct the computer to determine if the available content item conflicts with another content item in a recording list.
26. One or more computer readable media as described in claim 22, wherein the textual description is selected from the group consisting of:
one or more words entered by a user via a user interface;
an article;
a text message;
an email; and another content item.
one or more words entered by a user via a user interface;
an article;
a text message;
an email; and another content item.
27. A head end comprising:
a processor; and memory configured to maintain:
electronic program guide (EPG) data;
a recording document having a plurality of elements which describe a content item; and a parser module that is executable on the processor to:
determine if the content item described in the recording document is available for recording by comparing at least one said element with the electronic program guide (EPG) data; and if the content item is available, add a reference to a recording list for causing recordation of the content item.
a processor; and memory configured to maintain:
electronic program guide (EPG) data;
a recording document having a plurality of elements which describe a content item; and a parser module that is executable on the processor to:
determine if the content item described in the recording document is available for recording by comparing at least one said element with the electronic program guide (EPG) data; and if the content item is available, add a reference to a recording list for causing recordation of the content item.
28. A head end as described in claim 27, wherein the reference in the recording list is for causing recordation of the content item in the memory.
29. A head end as described in claim 27, wherein the reference in the recording list is for causing recordation of the content item at a client.
30. A head end as described in claim 27, wherein the parser module is further executable on the processor to generate the recording document from a textual description of the content item.
31. A head end as described in claim 30, wherein the textual description is selected from the group consisting of:
one or more words entered by a user via a user interface;
an article;
a text message;
an email; and another content item.
one or more words entered by a user via a user interface;
an article;
a text message;
an email; and another content item.
32. A head end as described in claim 27, wherein the parser module is further executable on the processor to examine client state data that describes conditional access rights of a plurality of clients to determine if recordation of the content item for a particular said client is permitted.
33. A head end as described in claim 27, wherein the parser module is further executable on the processor to determine if the available content item conflicts with another content item referenced in the recording list.
34. A client comprising:
a processor; and memory configured to maintain:
an electronic program guide (EPG) formed from a plurality of EPG data;
a recording document having a plurality of elements which describe a content item; and a parser module that is executable on the processor to;
determine if the content item described in the recording document is available for recording by comparing at least one said element with the electronic program guide (EPG) data; and if the content item is available, add a reference in a recording list, based on the query, for causing recordation of the content item.
a processor; and memory configured to maintain:
an electronic program guide (EPG) formed from a plurality of EPG data;
a recording document having a plurality of elements which describe a content item; and a parser module that is executable on the processor to;
determine if the content item described in the recording document is available for recording by comparing at least one said element with the electronic program guide (EPG) data; and if the content item is available, add a reference in a recording list, based on the query, for causing recordation of the content item.
35. A client as described in claim 34, wherein the reference in the recording list is for causing recordation of the content item at a head end.
36. A client as described in claim 34, wherein the reference in the recording list is for causing recordation of the content item through execution of a navigation module on the client.
37. A client as described in claim 34, wherein the parser module is further executable on the processor ~ the recording document from a textual description of the content item.
38. A head end as described in claim 37, wherein the textual description is selected from the group consisting of:
one or more words entered by a user via a user interface;
an article;
a text message;
an email; and another content item.
one or more words entered by a user via a user interface;
an article;
a text message;
an email; and another content item.
39. A client as described in claim 34, wherein the parser module is further executable on the processor to examine client state data, which describes conditional access rights, to determine if recordation of the content item is permitted.
40. A client as described in claim 34, wherein the parser module is further executable on the processor to determine if the available content item conflicts with another content item in the recording list.
41. A system comprising:
a network;
a head end that is communicatively coupled to the network, includes a database having electronic program guide (EPG) data, and has a parser module that is executable thereon to:
query the EPG data to determine if a content item described in a recording document received from over the network is available for recording;
if the content item is available, examine client state data that describes conditional access rights of a plurality of clients to determine if recordation of the content item for a particular said client is permitted;
if recordation of the content item for the particular said client is permitted, add a reference in a recording list for causing recordation of the content item; and form a communication for communicating the recording list via the network; and the particular said client that is communicatively coupled to the network and includes a navigation module that is executable thereon to:
receive the communication having the recording list; and record the referenced content item.
a network;
a head end that is communicatively coupled to the network, includes a database having electronic program guide (EPG) data, and has a parser module that is executable thereon to:
query the EPG data to determine if a content item described in a recording document received from over the network is available for recording;
if the content item is available, examine client state data that describes conditional access rights of a plurality of clients to determine if recordation of the content item for a particular said client is permitted;
if recordation of the content item for the particular said client is permitted, add a reference in a recording list for causing recordation of the content item; and form a communication for communicating the recording list via the network; and the particular said client that is communicatively coupled to the network and includes a navigation module that is executable thereon to:
receive the communication having the recording list; and record the referenced content item.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/891,579 | 2004-07-15 | ||
US10/891,579 US9021529B2 (en) | 2004-07-15 | 2004-07-15 | Content recordation techniques |
PCT/US2004/034763 WO2006019385A1 (en) | 2004-07-15 | 2004-10-19 | Content recordation techniques |
Publications (2)
Publication Number | Publication Date |
---|---|
CA2508652A1 true CA2508652A1 (en) | 2006-01-15 |
CA2508652C CA2508652C (en) | 2014-12-02 |
Family
ID=35637035
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CA2508652A Active CA2508652C (en) | 2004-07-15 | 2004-10-19 | Content recordation techniques |
Country Status (11)
Country | Link |
---|---|
US (1) | US9021529B2 (en) |
EP (1) | EP1658723B1 (en) |
JP (1) | JP4912301B2 (en) |
KR (1) | KR101159328B1 (en) |
CN (1) | CN100512398C (en) |
AU (1) | AU2004288599A1 (en) |
BR (1) | BRPI0406525A8 (en) |
CA (1) | CA2508652C (en) |
MX (1) | MXPA05007149A (en) |
RU (1) | RU2368094C2 (en) |
WO (1) | WO2006019385A1 (en) |
Families Citing this family (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7159232B1 (en) | 1999-11-16 | 2007-01-02 | Microsoft Corporation | Scheduling the recording of television programs |
US20040006768A1 (en) * | 2002-06-27 | 2004-01-08 | Deshpande Amod Dattatray | Parsed program guide data |
US7774815B1 (en) | 2002-09-30 | 2010-08-10 | Arris Group, Inc. | Context-sensitive interactive television ticker |
US9021529B2 (en) | 2004-07-15 | 2015-04-28 | Microsoft Technology Licensing, Llc | Content recordation techniques |
US11232768B2 (en) * | 2005-04-12 | 2022-01-25 | Douglas G. Richardson | Embedding animation in electronic mail, text messages and websites |
EP1734525A1 (en) * | 2005-06-13 | 2006-12-20 | Sony DADC Austria AG | Method for converting non copy protected data into copy protected data |
US20080212941A1 (en) * | 2005-12-30 | 2008-09-04 | Lillethun David J | Recording media content on different devices |
JP4187011B2 (en) * | 2006-06-01 | 2008-11-26 | ソニー株式会社 | Information processing system, information processing apparatus and method, and program |
US20080124053A1 (en) * | 2006-09-01 | 2008-05-29 | Hutten Matthijs C | Method for using a video content recording apparatus with syntax for video content recording parameters |
US20080131086A1 (en) * | 2006-09-01 | 2008-06-05 | Matthijs Hutten | Video content recording apparatus with syntax for video content recording parameters |
US20080080836A1 (en) * | 2006-09-29 | 2008-04-03 | Hutten Matthijs C | Video content recording apparatus with electronic program guide functionality |
US20080092198A1 (en) * | 2006-09-29 | 2008-04-17 | Hutten Matthijs C | Method for using a video content recording apparatus with electronic program guide functionality |
US20080080835A1 (en) * | 2006-09-29 | 2008-04-03 | Hutten Matthijs C | Video content recording apparatus with card-slot-specific recording |
US20080092174A1 (en) * | 2006-09-29 | 2008-04-17 | Hutten Matthijs C | Method for using a video content recording apparatus with card-slot-specific recording |
US20080115173A1 (en) * | 2006-11-10 | 2008-05-15 | Guideworks Llc | Systems and methods for using playlists |
US8601515B2 (en) * | 2006-12-28 | 2013-12-03 | Motorola Mobility Llc | On screen alert to indicate status of remote recording |
US8880529B2 (en) | 2007-05-15 | 2014-11-04 | Tivo Inc. | Hierarchical tags with community-based ratings |
CN101681369B (en) * | 2007-05-15 | 2012-07-18 | Tivo有限公司 | Media data content search system |
KR100880526B1 (en) * | 2007-09-27 | 2009-01-28 | 브로드밴드미디어주식회사 | System, method and set-top box for providing function of displaying residual date and expiration date for each vod content in vod service using iptv network |
US9824389B2 (en) * | 2007-10-13 | 2017-11-21 | The Directv Group, Inc. | Method and system for confirming the download of content at a user device |
US9288539B2 (en) * | 2007-12-12 | 2016-03-15 | Intel Corporation | System and method for a user interface to manage the recording, downloading and sharing of content from multiple sources |
FR2926432B1 (en) * | 2008-01-16 | 2012-07-27 | Radiotelephone Sfr | SYSTEM AND METHOD FOR REMOTE PROGRAMMING OF A TELEVISION POST ASSIST. |
JP4535166B2 (en) * | 2008-04-30 | 2010-09-01 | ソニー株式会社 | Information receiving apparatus and method, program, and broadcasting system |
US8272024B2 (en) | 2010-12-31 | 2012-09-18 | General Instrument Corporation | Distributed recording of content |
CN104144318A (en) * | 2013-05-08 | 2014-11-12 | 北京航天长峰科技工业集团有限公司 | Video inverted-order playback and rapid positioning method based on HIKVISION DVR |
US10893122B2 (en) | 2016-03-31 | 2021-01-12 | Rovi Guides, Inc. | Methods and systems for determining user recovery times to real-life event |
US10546059B2 (en) | 2016-03-31 | 2020-01-28 | Rovi Guides, Inc. | Methods and systems for determining how long to modify a user profile based on a real-life event |
US11108881B2 (en) * | 2016-03-31 | 2021-08-31 | Rovi Guides, Inc. | Methods and systems for determining end dates for user profile modifications based on real-life events |
Family Cites Families (383)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US618359A (en) * | 1899-01-24 | Frank lambert | ||
US598509A (en) * | 1898-02-08 | Educational or advertising fan | ||
US5659653A (en) | 1978-09-11 | 1997-08-19 | Thomson Consumer Electronics, S.A. | Method for programming a recording device and programming device |
US4908713A (en) | 1981-12-14 | 1990-03-13 | Levine Michael R | VCR Programmer |
US5692214A (en) | 1981-12-14 | 1997-11-25 | Levine; Michael R. | System for unattended recording of video programs by remote control code transmitter module which receives user selections from a personal computer |
US5684153A (en) | 1984-08-16 | 1997-11-04 | Beecham Group Plc | Process for the preparation of purine derivatives |
US4706121B1 (en) | 1985-07-12 | 1993-12-14 | Insight Telecast, Inc. | Tv schedule system and process |
US5508731A (en) | 1986-03-10 | 1996-04-16 | Response Reward Systems L.C. | Generation of enlarged participatory broadcast audience |
US5697844A (en) | 1986-03-10 | 1997-12-16 | Response Reward Systems, L.C. | System and method for playing games and rewarding successful players |
US4945563A (en) | 1986-11-05 | 1990-07-31 | Satellite Technology Services, Inc. | Video system and method for controlled viewing and videotaping |
JPS6468171A (en) | 1987-09-09 | 1989-03-14 | Ikegami Tsushinki Kk | Data processor |
US4894789A (en) | 1988-02-22 | 1990-01-16 | Yee Keen Y | TV data capture device |
US5010499A (en) | 1988-02-22 | 1991-04-23 | Yee Keen Y | Digital data capture for use with TV set or monitor |
US5121476A (en) | 1988-02-22 | 1992-06-09 | Yee Keen Y | TV data capture device |
US4977455B1 (en) | 1988-07-15 | 1993-04-13 | System and process for vcr scheduling | |
CA1341310C (en) | 1988-07-15 | 2001-10-23 | Robert Filepp | Interactive computer network and method of operation |
CA2005070C (en) | 1988-12-23 | 1999-04-27 | Henry C. Yuen | Apparatus and method for using encoded video recorder/player timer preprogramming information |
US5307173A (en) | 1988-12-23 | 1994-04-26 | Gemstar Development Corporation | Apparatus and method using compressed codes for television program record scheduling |
US5532732A (en) | 1988-12-23 | 1996-07-02 | Gemstar Development Corporation | Apparatus and methods for using compressed codes for monitoring television program viewing |
DE3905881C2 (en) | 1989-02-25 | 1999-08-19 | Dornier Gmbh Lindauer | Device for measuring warp tension in a weaving machine |
US5351075A (en) | 1990-03-20 | 1994-09-27 | Frederick Herz | Home video club television broadcasting system |
JP2564500B2 (en) | 1990-04-05 | 1996-12-18 | 日立金属株式会社 | Method and device for winding amorphous ribbon |
US5293357A (en) | 1990-09-10 | 1994-03-08 | The Superguide Corporation | Method and apparatus for controlling a television program recording device |
ATE220273T1 (en) | 1990-09-10 | 2002-07-15 | Starsight Telecast Inc | TELEVISION PROGRAM SYSTEM |
US5528759A (en) | 1990-10-31 | 1996-06-18 | International Business Machines Corporation | Method and apparatus for correlating network management report messages |
EP0484603B1 (en) | 1990-11-09 | 1995-09-13 | International Business Machines Corporation | Non-repudiation in computer networks |
JP2864759B2 (en) | 1991-02-07 | 1999-03-08 | 三菱電機株式会社 | Programmable controller |
MY110023A (en) | 1991-05-02 | 1997-11-29 | Thomson Consumer Electronics Inc | Adaptive menu for programming a videocassette recorder. |
WO1992022983A2 (en) | 1991-06-11 | 1992-12-23 | Browne H Lee | Large capacity, random access, multi-source recorder player |
US5355484A (en) | 1991-08-12 | 1994-10-11 | International Business Machines Corporation | Dynamically established event monitors in event management services of a computer system |
US5488409A (en) | 1991-08-19 | 1996-01-30 | Yuen; Henry C. | Apparatus and method for tracking the playing of VCR programs |
US5343239A (en) | 1991-11-20 | 1994-08-30 | Zing Systems, L.P. | Transaction based interactive television system |
US5861881A (en) | 1991-11-25 | 1999-01-19 | Actv, Inc. | Interactive computer system for providing an interactive presentation with personalized video, audio and graphics responses for multiple viewers |
US5247364A (en) | 1991-11-29 | 1993-09-21 | Scientific-Atlanta, Inc. | Method and apparatus for tuning data channels in a subscription television system having in-band data transmissions |
US5953485A (en) | 1992-02-07 | 1999-09-14 | Abecassis; Max | Method and system for maintaining audio during video control |
US5528490A (en) | 1992-04-10 | 1996-06-18 | Charles E. Hill & Associates, Inc. | Electronic catalog system and method |
US5223924A (en) | 1992-05-27 | 1993-06-29 | North American Philips Corporation | System and method for automatically correlating user preferences with a T.V. program information database |
US5600364A (en) | 1992-12-09 | 1997-02-04 | Discovery Communications, Inc. | Network controller for cable television delivery systems |
US5798785A (en) | 1992-12-09 | 1998-08-25 | Discovery Communications, Inc. | Terminal for suggesting programs offered on a television program delivery system |
US5600573A (en) | 1992-12-09 | 1997-02-04 | Discovery Communications, Inc. | Operations center with video storage for a television program packaging and delivery system |
US9286294B2 (en) | 1992-12-09 | 2016-03-15 | Comcast Ip Holdings I, Llc | Video and digital multimedia aggregator content suggestion engine |
US6201536B1 (en) | 1992-12-09 | 2001-03-13 | Discovery Communications, Inc. | Network manager for cable television system headends |
US5987211A (en) | 1993-01-11 | 1999-11-16 | Abecassis; Max | Seamless transmission of non-sequential video segments |
US5515173A (en) | 1993-03-05 | 1996-05-07 | Gemstar Developement Corporation | System and method for automatically recording television programs in television systems with tuners external to video recorders |
US6973669B2 (en) | 1993-03-29 | 2005-12-06 | Microsoft Corporation | Pausing television programming in response to selection of hypertext link |
NL9300619A (en) | 1993-04-08 | 1994-11-01 | Nederland Ptt | System for the transmission of selection code signals to TV or radio stations. |
US6762733B2 (en) | 1993-06-24 | 2004-07-13 | Nintendo Co. Ltd. | Electronic entertainment and communication system |
US5822123A (en) | 1993-09-09 | 1998-10-13 | Davis; Bruce | Electronic television program guide schedule system and method with pop-up hints |
US5485553A (en) | 1993-10-29 | 1996-01-16 | Hewlett-Packard Company | Method and apparatus for managing and initiating video capture and printing |
US5771354A (en) | 1993-11-04 | 1998-06-23 | Crawford; Christopher M. | Internet online backup system provides remote storage for customers using IDs and passwords which were interactively established when signing up for backup services |
EP0669761A3 (en) | 1994-02-23 | 1999-03-03 | Hitachi, Ltd. | Television signal receiving apparatus incorporating an information retrieving and reproducing apparatus |
US6463205B1 (en) | 1994-03-31 | 2002-10-08 | Sentimental Journeys, Inc. | Personalized video story production apparatus and method |
US5539822A (en) | 1994-04-19 | 1996-07-23 | Scientific-Atlanta, Inc. | System and method for subscriber interactivity in a television system |
US6002444A (en) | 1994-05-20 | 1999-12-14 | United Video Properties, Inc. | Video clip program guide |
US5694546A (en) | 1994-05-31 | 1997-12-02 | Reisman; Richard R. | System for automatic unattended electronic information transport between a server and a client by a vendor provided transport software with a manifest list |
US20020133816A1 (en) | 1994-06-21 | 2002-09-19 | Greene Steven Bradford | System for collecting data concerning received transmitted material |
EP1845527A3 (en) * | 1994-07-08 | 2012-04-25 | Sony Corporation | Receiving controlled-access broadcast signals |
US5743673A (en) * | 1994-08-04 | 1998-04-28 | Bravo; Sergio M. | Watertight sealing system with relief valve for manhole having a spill bucket |
JP3644455B2 (en) | 1994-09-29 | 2005-04-27 | ソニー株式会社 | Program information broadcasting system, program information display method and receiving apparatus |
CN1129309C (en) | 1994-10-27 | 2003-11-26 | 英戴克系统公司 | Apparatus and methods for downloading recorder programming data in video signal |
US5867205A (en) * | 1994-11-14 | 1999-02-02 | Intel Corporation | Method and apparatus for controlling video/audio and channel selection for a communication signal based on textual information indicative of channel contents of a signal |
US6029195A (en) | 1994-11-29 | 2000-02-22 | Herz; Frederick S. M. | System for customized electronic identification of desirable objects |
US5589832A (en) | 1994-12-02 | 1996-12-31 | Lucent Technologies Inc. | Low noise non-sampled successive approximation |
US5617526A (en) | 1994-12-13 | 1997-04-01 | Microsoft Corporation | Operating system provided notification area for displaying visual notifications from application programs |
US5752159A (en) | 1995-01-13 | 1998-05-12 | U S West Technologies, Inc. | Method for automatically collecting and delivering application event data in an interactive network |
JPH08214281A (en) | 1995-02-06 | 1996-08-20 | Sony Corp | Charging method and system |
US6732366B1 (en) | 1995-02-24 | 2004-05-04 | James Russo | Stored program pay-per-play |
US5619247A (en) | 1995-02-24 | 1997-04-08 | Smart Vcr Limited Partnership | Stored program pay-per-play |
US5591799A (en) * | 1995-03-03 | 1997-01-07 | Air Products And Chemicals, Inc. | Aqueous emulsion materials containing copolymerized vinyl amide monomers and hydrolysis products thereof |
US5600632A (en) | 1995-03-22 | 1997-02-04 | Bell Atlantic Network Services, Inc. | Methods and apparatus for performance monitoring using synchronized network analyzers |
US5517257A (en) | 1995-03-28 | 1996-05-14 | Microsoft Corporation | Video control user interface for interactive television systems and method for controlling display of a video movie |
US5880768A (en) | 1995-04-06 | 1999-03-09 | Prevue Networks, Inc. | Interactive program guide systems and processes |
JPH08286831A (en) | 1995-04-14 | 1996-11-01 | Canon Inc | Pen input type electronic device and its control method |
US5848352A (en) | 1995-04-26 | 1998-12-08 | Wink Communications, Inc. | Compact graphical interactive information system |
US5861906A (en) | 1995-05-05 | 1999-01-19 | Microsoft Corporation | Interactive entertainment network system and method for customizing operation thereof according to viewer preferences |
US5818441A (en) | 1995-06-15 | 1998-10-06 | Intel Corporation | System and method for simulating two-way connectivity for one way data streams |
US5737552A (en) | 1995-07-28 | 1998-04-07 | Starwave Corporation | Machine, method and medium for linear programming with interactive conversational interface |
US5801753A (en) | 1995-08-11 | 1998-09-01 | General Instrument Corporation Of Delaware | Method and apparatus for providing an interactive guide to events available on an information network |
US5761602A (en) | 1995-09-13 | 1998-06-02 | Wagner Dsp Technologies | Hybrid multichannel data transmission system utilizing a broadcast medium |
US5873076A (en) | 1995-09-15 | 1999-02-16 | Infonautics Corporation | Architecture for processing search queries, retrieving documents identified thereby, and method for using same |
US6388714B1 (en) | 1995-10-02 | 2002-05-14 | Starsight Telecast Inc | Interactive computer system for providing television schedule information |
US6732369B1 (en) | 1995-10-02 | 2004-05-04 | Starsight Telecast, Inc. | Systems and methods for contextually linking television program information |
US6199206B1 (en) | 1995-10-24 | 2001-03-06 | Sony Corporation | Television transmitter, television transmitting method, television receiver and television receiving method |
JPH09130346A (en) | 1995-10-30 | 1997-05-16 | Sony Corp | Av data reception equipment, av data transmission equipment, and broadcasting system |
US6157413A (en) | 1995-11-20 | 2000-12-05 | United Video Properties, Inc. | Interactive special events video signal navigation system |
DE19545882B4 (en) | 1995-12-08 | 2004-04-08 | Yes International Ag | System for displaying visual information |
US5794210A (en) | 1995-12-11 | 1998-08-11 | Cybergold, Inc. | Attention brokerage |
US6389593B1 (en) | 1995-12-12 | 2002-05-14 | Sony Corporation | Method of and apparatus for controlling transmission of information on programs |
US5761606A (en) | 1996-02-08 | 1998-06-02 | Wolzien; Thomas R. | Media online services access via address embedded in video or audio program |
JP3063606B2 (en) | 1996-02-13 | 2000-07-12 | 日本電気株式会社 | Method for manufacturing semiconductor device |
US5928850A (en) | 1996-02-19 | 1999-07-27 | Konica Corporation | Silver halide photographic light-sensitive material |
US5838314A (en) | 1996-02-21 | 1998-11-17 | Message Partners | Digital video services system with optional interactive advertisement capabilities |
AU2327697A (en) | 1996-02-22 | 1997-09-10 | Ronald M. Perkes | Multimedia computer and television apparatus |
JP2000505616A (en) | 1996-02-26 | 2000-05-09 | イー グイド インコーポレイテッド | Cordless phone backlinks for interactive television systems |
US5778181A (en) | 1996-03-08 | 1998-07-07 | Actv, Inc. | Enhanced video programming system and method for incorporating and displaying retrieved integrated internet information segments |
US5774664A (en) | 1996-03-08 | 1998-06-30 | Actv, Inc. | Enhanced video programming system and method for incorporating and displaying retrieved integrated internet information segments |
US6018768A (en) | 1996-03-08 | 2000-01-25 | Actv, Inc. | Enhanced video programming system and method for incorporating and displaying retrieved integrated internet information segments |
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 |
US6195501B1 (en) | 1996-03-28 | 2001-02-27 | Intel Corporation | Computer control of a video cassette recorder using wireless communication and a vertical blanking interval triggering |
DE69732062T2 (en) | 1996-03-29 | 2005-06-02 | Matsushita Electric Industrial Co., Ltd., Kadoma | Radio receiving apparatus for television signals and program display method |
US6025837A (en) | 1996-03-29 | 2000-02-15 | Micrsoft Corporation | Electronic program guide with hyperlinks to target resources |
US6240555B1 (en) | 1996-03-29 | 2001-05-29 | Microsoft Corporation | Interactive entertainment system for presenting supplemental interactive content together with continuous video programs |
US5764910A (en) | 1996-04-02 | 1998-06-09 | National Semiconductor Corporation | Method and apparatus for encoding and using network resource locators |
US5961603A (en) | 1996-04-10 | 1999-10-05 | Worldgate Communications, Inc. | Access system and method for providing interactive access to an information source through a networked distribution system |
US5848397A (en) | 1996-04-19 | 1998-12-08 | Juno Online Services, L.P. | Method and apparatus for scheduling the presentation of messages to computer users |
US6058430A (en) | 1996-04-19 | 2000-05-02 | Kaplan; Kenneth B. | Vertical blanking interval encoding of internet addresses for integrated television/internet devices |
FI103450B1 (en) | 1996-04-23 | 1999-06-30 | Nokia Mobile Phones Ltd | Multimedia terminal and procedure for conducting multimedia reception |
US5848396A (en) | 1996-04-26 | 1998-12-08 | Freedom Of Information, Inc. | Method and apparatus for determining behavioral profile of a computer user |
JP3911047B2 (en) | 1996-04-30 | 2007-05-09 | ソニー株式会社 | Recording reservation control system and recording reservation control method |
US5929849A (en) | 1996-05-02 | 1999-07-27 | Phoenix Technologies, Ltd. | Integration of dynamic universal resource locators with television presentations |
US5835712A (en) | 1996-05-03 | 1998-11-10 | Webmate Technologies, Inc. | Client-server system using embedded hypertext tags for application and database development |
US5940073A (en) | 1996-05-03 | 1999-08-17 | Starsight Telecast Inc. | Method and system for displaying other information in a TV program guide |
KR100445679B1 (en) | 1996-05-10 | 2004-12-04 | 소니 가부시끼 가이샤 | The data broadcast receiving apparatus |
US6008836A (en) | 1996-06-03 | 1999-12-28 | Webtv Networks, Inc. | Method and apparatus for adjusting television display control using a browser |
US5862220A (en) | 1996-06-03 | 1999-01-19 | Webtv Networks, Inc. | Method and apparatus for using network address information to improve the performance of network transactions |
US6034689A (en) | 1996-06-03 | 2000-03-07 | Webtv Networks, Inc. | Web browser allowing navigation between hypertext objects using remote control |
US6035304A (en) | 1996-06-25 | 2000-03-07 | Matsushita Electric Industrial Co., Ltd. | System for storing and playing a multimedia application adding variety of services specific thereto |
US6029193A (en) | 1996-06-25 | 2000-02-22 | Matsushita Electric Industrial Co., Ltd. | Data sending/receiving system, data broadcasting method and data receiving apparatus for television broadcasting |
US5857190A (en) | 1996-06-27 | 1999-01-05 | Microsoft Corporation | Event logging system and method for logging events in a network system |
US5937331A (en) | 1996-07-01 | 1999-08-10 | Kalluri; Rama | Protocol and system for transmitting triggers from a remote network and for controlling interactive program content at a broadcast station |
US6026435A (en) | 1996-07-12 | 2000-02-15 | Sanyo Electric Co., Ltd. | Internet information displaying apparatus and internet information displaying method |
DE69737536T2 (en) | 1996-08-02 | 2007-12-06 | Sanyo Electric Co., Ltd., Moriguchi | Display device for Internet information |
JPH1066036A (en) | 1996-08-15 | 1998-03-06 | Oki Electric Ind Co Ltd | Tv system converter |
US5991306A (en) | 1996-08-26 | 1999-11-23 | Microsoft Corporation | Pull based, intelligent caching system and method for delivering data over a network |
WO1998010589A1 (en) | 1996-09-03 | 1998-03-12 | Starsight Telecast, Inc. | Schedule system with enhanced recording capability |
US5920700A (en) | 1996-09-06 | 1999-07-06 | Time Warner Cable | System for managing the addition/deletion of media assets within a network based on usage and media asset metadata |
US5832223A (en) | 1996-09-13 | 1998-11-03 | Motorola, Inc. | System, method and device for automatic capture of internet access information in a broadcast signal for use by an internet access device |
US6172677B1 (en) | 1996-10-07 | 2001-01-09 | Compaq Computer Corporation | Integrated content guide for interactive selection of content and services on personal computer systems with multiple sources and multiple media presentation |
AU4896397A (en) | 1996-10-08 | 1998-05-05 | Allen Chang | Talking remote control with display |
JPH10174007A (en) | 1996-10-11 | 1998-06-26 | Toshiba Corp | Multi-function television receiver |
CA2267890C (en) | 1996-10-16 | 2005-12-13 | Gemstar Development Corporation | Access to internet data through a television system |
US20030005463A1 (en) | 1999-09-30 | 2003-01-02 | Douglas B Macrae | Access to internet data through a television system |
US5774666A (en) | 1996-10-18 | 1998-06-30 | Silicon Graphics, Inc. | System and method for displaying uniform network resource locators embedded in time-based medium |
US5982445A (en) | 1996-10-21 | 1999-11-09 | General Instrument Corporation | Hypertext markup language protocol for television display and control |
US5991596A (en) | 1996-10-24 | 1999-11-23 | Stanford Telecommunications, Inc. | Wireless request channel for use with information broadcast system |
US6049831A (en) | 1996-11-08 | 2000-04-11 | Gte Laboratories Incorporated | System for transmitting network-related information where requested network information is separately transmitted as definitions and display information |
US6512551B1 (en) | 1996-11-12 | 2003-01-28 | Compaq Computer Corporation | Platform for displaying information from multiple sources |
US5801747A (en) | 1996-11-15 | 1998-09-01 | Hyundai Electronics America | Method and apparatus for creating a television viewer profile |
US6023698A (en) | 1996-12-05 | 2000-02-08 | International Business Machines Corporation | System and method for transparently registering and updating information over the internet |
CA2764753C (en) | 1996-12-10 | 2015-08-04 | United Video Properties, Inc. | Internet television program guide system |
EP1809017B1 (en) | 1996-12-10 | 2014-02-19 | United Video Properties, Inc. | Internet television program guide system |
US20030066085A1 (en) | 1996-12-10 | 2003-04-03 | United Video Properties, Inc., A Corporation Of Delaware | Internet television program guide system |
JPH10174082A (en) | 1996-12-13 | 1998-06-26 | Toshiba Corp | Two-way tv broadcast system and file access method applied to the system |
JP3575205B2 (en) | 1996-12-13 | 2004-10-13 | ソニー株式会社 | Remote commander and network connection system |
US6177931B1 (en) * | 1996-12-19 | 2001-01-23 | Index Systems, Inc. | Systems and methods for displaying and recording control interface with television programs, video, advertising information and program scheduling information |
DE69715040T2 (en) | 1996-12-20 | 2003-05-08 | Princeton Video Image Inc | ADAPTER FOR TARGETED ELECTRONIC INSERTION OF CHARACTERS IN VIDEO SIGNALS |
US6604242B1 (en) | 1998-05-18 | 2003-08-05 | Liberate Technologies | Combining television broadcast and personalized/interactive information |
US5889950A (en) | 1996-12-20 | 1999-03-30 | Intel Corporation | Method and apparatus for distribution of broadcast data |
US5991799A (en) | 1996-12-20 | 1999-11-23 | Liberate Technologies | Information retrieval system using an internet multiplexer to focus user selection |
US6256785B1 (en) | 1996-12-23 | 2001-07-03 | Corporate Media Patners | Method and system for providing interactive look-and-feel in a digital broadcast via an X-Y protocol |
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 |
US6473903B2 (en) | 1996-12-30 | 2002-10-29 | Koninklijke Philips Electronics N.V. | Method and system for implementing interactive broadcast programs and commercials |
US6510557B1 (en) | 1997-01-03 | 2003-01-21 | Texas Instruments Incorporated | Apparatus for the integration of television signals and information from an information service provider |
US6983478B1 (en) | 2000-02-01 | 2006-01-03 | Bellsouth Intellectual Property Corporation | Method and system for tracking network use |
US6637032B1 (en) | 1997-01-06 | 2003-10-21 | Microsoft Corporation | System and method for synchronizing enhancing content with a video program using closed captioning |
WO1998031114A1 (en) | 1997-01-06 | 1998-07-16 | Bellsouth Corporation | Method and system for tracking network use |
US6526575B1 (en) | 1997-01-07 | 2003-02-25 | United Video Properties, Inc. | System and method for distributing and broadcasting multimedia |
US6012087A (en) | 1997-01-14 | 2000-01-04 | Netmind Technologies, Inc. | Unique-change detection of dynamic web pages using history tables of signatures |
US5826165A (en) | 1997-01-21 | 1998-10-20 | Hughes Electronics Corporation | Advertisement reconciliation system |
CA2278709A1 (en) | 1997-01-27 | 1998-08-13 | Benjamin Slotznick | System for delivering and displaying primary and secondary information |
US6415319B1 (en) | 1997-02-07 | 2002-07-02 | Sun Microsystems, Inc. | Intelligent network browser using incremental conceptual indexer |
US5818935A (en) | 1997-03-10 | 1998-10-06 | Maa; Chia-Yiu | Internet enhanced video system |
CN100438610C (en) | 1997-03-11 | 2008-11-26 | Actv公司 | Digital interactive system for providing full interactivity with programming events |
US6064376A (en) | 1997-03-13 | 2000-05-16 | United Video Properties, Inc. | Adjustable program guide display system |
JPH10261251A (en) * | 1997-03-18 | 1998-09-29 | Sony Corp | Receiver, receiving method, transmitter, transmitting method, transmitter/receiver and transmitting/receiving method |
US6134379A (en) | 1997-03-20 | 2000-10-17 | Avid Technology, Inc. | Method and apparatus for synchronizing devices in an audio/video system |
US6209028B1 (en) | 1997-03-21 | 2001-03-27 | Walker Digital, Llc | System and method for supplying supplemental audio information for broadcast television programs |
US20050097594A1 (en) | 1997-03-24 | 2005-05-05 | O'donnell Frank | Systems and methods for awarding affinity points based upon remote control usage |
US6005565A (en) | 1997-03-25 | 1999-12-21 | Sony Corporation | Integrated search of electronic program guide, internet and other information resources |
US6253228B1 (en) | 1997-03-31 | 2001-06-26 | Apple Computer, Inc. | Method and apparatus for updating and synchronizing information between a client and a server |
GB2325537B8 (en) | 1997-03-31 | 2000-01-31 | Microsoft Corp | Query-based electronic program guide |
KR100321839B1 (en) | 1997-04-02 | 2002-03-08 | 포만 제프리 엘 | Method and apparatus for integrating hyperlinks in video |
JP3491665B2 (en) | 1997-04-16 | 2004-01-26 | ソニー株式会社 | Remote control device and remote control method |
US5990883A (en) | 1997-04-28 | 1999-11-23 | Microsoft Corporation | Unified presentation of programming from different physical sources |
US6023585A (en) | 1997-05-02 | 2000-02-08 | Webtv Networks, Inc. | Automatically selecting and downloading device drivers from a server system to a client system that includes one or more devices |
CN1146238C (en) | 1997-05-21 | 2004-04-14 | 皇家菲利浦电子有限公司 | Transmission and reception of TV programs |
US6260192B1 (en) | 1997-06-02 | 2001-07-10 | Sony Corporation | Filtering system based on pattern of usage |
US6014689A (en) | 1997-06-03 | 2000-01-11 | Smith Micro Software Inc. | E-mail system with a video e-mail player |
JPH10340234A (en) | 1997-06-06 | 1998-12-22 | Infuoshitei:Kk | Information access method and device therefor |
DE69828279T2 (en) | 1997-06-06 | 2005-12-08 | Thomson Multimedia Inc., Indianapolis | GLOBAL CONDITIONAL ACCESS SYSTEM FOR BROADCASTING SERVICES |
US6681393B1 (en) | 1997-06-06 | 2004-01-20 | Nds Limited | Viewer interaction feedback method and system for use with an interactive telecommunication system |
US6108706A (en) | 1997-06-09 | 2000-08-22 | Microsoft Corporation | Transmission announcement system and method for announcing upcoming data transmissions over a broadcast network |
TW393860B (en) | 1997-06-09 | 2000-06-11 | Sony Corp | Receiving device and receiving method |
US20030040962A1 (en) | 1997-06-12 | 2003-02-27 | Lewis William H. | System and data management and on-demand rental and purchase of digital data products |
US5978828A (en) | 1997-06-13 | 1999-11-02 | Intel Corporation | URL bookmark update notification of page content or location changes |
US6012086A (en) | 1997-06-24 | 2000-01-04 | Sony Corporation | Internet event timer recording for video and/or audio |
KR100246792B1 (en) | 1997-06-24 | 2000-03-15 | 윤종용 | Pnognoum pnocessing time guide method amd apparatus |
US5864823A (en) | 1997-06-25 | 1999-01-26 | Virtel Corporation | Integrated virtual telecommunication system for E-commerce |
KR100340253B1 (en) * | 1997-06-25 | 2002-06-12 | 윤종용 | Improved home network, browser based, command and control |
US6317885B1 (en) | 1997-06-26 | 2001-11-13 | Microsoft Corporation | Interactive entertainment and information system using television set-top box |
IL121230A (en) | 1997-07-03 | 2004-05-12 | Nds Ltd | Intelligent electronic program guide |
US6057872A (en) | 1997-07-09 | 2000-05-02 | General Instrument Corporation | Digital coupons for pay televisions |
US20020007493A1 (en) | 1997-07-29 | 2002-01-17 | Laura J. Butler | Providing enhanced content with broadcast video |
US6021426A (en) | 1997-07-31 | 2000-02-01 | At&T Corp | Method and apparatus for dynamic data transfer on a web page |
WO1999011065A1 (en) | 1997-08-27 | 1999-03-04 | Starsight Telecast, Inc. | Systems and methods for replacing television signals |
US6141488A (en) | 1997-09-05 | 2000-10-31 | United Video Properties, Inc. | Program guide system for recording television programs |
US6600496B1 (en) | 1997-09-26 | 2003-07-29 | Sun Microsystems, Inc. | Interactive graphical user interface for television set-top box |
GB9721947D0 (en) | 1997-10-16 | 1997-12-17 | Thomson Consumer Electronics | Intelligent IP packet scheduler algorithm |
US6412111B1 (en) | 1997-10-09 | 2002-06-25 | International Business Machines Corporation | Data processing system and method for implementing programmable distribution of information by a video server |
US6009410A (en) | 1997-10-16 | 1999-12-28 | At&T Corporation | Method and system for presenting customized advertising to a user on the world wide web |
TW392402B (en) | 1997-10-22 | 2000-06-01 | Hitachi Ltd | Method for using audio and video machine and audio and video machine system |
US5867208A (en) | 1997-10-28 | 1999-02-02 | Sun Microsystems, Inc. | Encoding system and method for scrolling encoded MPEG stills in an interactive television application |
US5963264A (en) | 1997-10-30 | 1999-10-05 | Echostar Engineering Corporation | Selecting a digital television program and the control of a non-attached recording device |
US6816904B1 (en) | 1997-11-04 | 2004-11-09 | Collaboration Properties, Inc. | Networked video multimedia storage server environment |
US6061719A (en) | 1997-11-06 | 2000-05-09 | Lucent Technologies Inc. | Synchronized presentation of television programming and web content |
US6636890B1 (en) | 1997-11-28 | 2003-10-21 | International Business Machines Corporation | Stand-alone internet mailbox for cable subscribers |
US6173112B1 (en) * | 1997-11-28 | 2001-01-09 | International Business Machines Corporation | Method and system for recording in-progress broadcast programs |
US6029045A (en) | 1997-12-09 | 2000-02-22 | Cogent Technology, Inc. | System and method for inserting local content into programming content |
US6253204B1 (en) | 1997-12-17 | 2001-06-26 | Sun Microsystems, Inc. | Restoring broken links utilizing a spider process |
US6016497A (en) | 1997-12-24 | 2000-01-18 | Microsoft Corporation | Methods and system for storing and accessing embedded information in object-relational databases |
US6252629B1 (en) | 1997-12-26 | 2001-06-26 | Matsushita Electric Industrial Co., Ltd. | Timer-recording controller for controlling a timer-recording apparatus used to record a broadcast audio signal, a broadcast video signal, or a broadcast data signal |
JPH11196342A (en) | 1997-12-26 | 1999-07-21 | Matsushita Electric Ind Co Ltd | Sender and terminal |
US6097441A (en) | 1997-12-31 | 2000-08-01 | Eremote, Inc. | System for dual-display interaction with integrated television and internet content |
US6201538B1 (en) | 1998-01-05 | 2001-03-13 | Amiga Development Llc | Controlling the layout of graphics in a television environment |
US6064440A (en) | 1998-01-08 | 2000-05-16 | Navis Digital Media Systems | Apparatus for inserting data into the vertical blanking interval of a video signal |
US6078961A (en) | 1998-01-15 | 2000-06-20 | International Business Machines Corporation | Method for real-time delivery of multimedia information requiring a very high bandwidth path over the internet |
JP3701199B2 (en) | 1998-01-23 | 2005-09-28 | インデックス システムズ インコーポレイテッド | Home entertainment system and operation method thereof |
CA2228331C (en) | 1998-01-30 | 2002-01-15 | Ibm Canada Limited-Ibm Canada Limitee | A token-based deadline enforcement system for electronic document submission |
US20020059095A1 (en) | 1998-02-26 | 2002-05-16 | Cook Rachael Linette | System and method for generating, capturing, and managing customer lead information over a computer network |
US6792618B1 (en) | 1998-03-02 | 2004-09-14 | Lucent Technologies Inc. | Viewer customization of displayed programming based on transmitted URLs |
JPH11252471A (en) | 1998-03-03 | 1999-09-17 | Matsushita Electric Ind Co Ltd | Center device and terminal equipment for broadcasting program and program information |
US7185355B1 (en) | 1998-03-04 | 2007-02-27 | United Video Properties, Inc. | Program guide system with preference profiles |
CN1183746C (en) | 1998-03-04 | 2005-01-05 | 联合视频制品公司 | Program guide system with monitoring of advertisement usage and user activities |
JPH11259927A (en) | 1998-03-06 | 1999-09-24 | Matsushita Electric Ind Co Ltd | Program recording/reserving device |
US6161182A (en) | 1998-03-06 | 2000-12-12 | Lucent Technologies Inc. | Method and apparatus for restricting outbound access to remote equipment |
JPH11261978A (en) | 1998-03-11 | 1999-09-24 | Sony Corp | Device and method for processing information and providing medium |
US6286005B1 (en) | 1998-03-11 | 2001-09-04 | Cannon Holdings, L.L.C. | Method and apparatus for analyzing data and advertising optimization |
US6055564A (en) | 1998-03-11 | 2000-04-25 | Hewlett Packard Company | Admission control where priority indicator is used to discriminate between messages |
US6459427B1 (en) | 1998-04-01 | 2002-10-01 | Liberate Technologies | Apparatus and method for web-casting over digital broadcast TV network |
US6006265A (en) | 1998-04-02 | 1999-12-21 | Hotv, Inc. | Hyperlinks resolution at and by a special network server in order to enable diverse sophisticated hyperlinking upon a digital network |
US6745245B1 (en) | 1998-04-09 | 2004-06-01 | Webtv Networks, Inc. | Managing access to set-top box objects using television conditional access system |
GB2336129B (en) * | 1998-04-09 | 2003-06-04 | Norman Fraser Mackenzie | Pop-up picture card |
US6018359A (en) | 1998-04-24 | 2000-01-25 | Massachusetts Institute Of Technology | System and method for multicast video-on-demand delivery system |
US6141678A (en) | 1998-04-29 | 2000-10-31 | Webtv Networks, Inc. | Presenting information relating to a program by recognizing text in closed captioning data |
EP1076994B1 (en) | 1998-04-30 | 2006-01-18 | United Video Properties, Inc. | Program guide system with advertisements |
US6564379B1 (en) | 1998-04-30 | 2003-05-13 | United Video Properties, Inc. | Program guide system with flip and browse advertisements |
US6725461B1 (en) | 1998-04-30 | 2004-04-20 | Wink Communications, Inc. | Reminder system for broadcast and non-broadcast events based on broadcast interactive applications |
US6530082B1 (en) | 1998-04-30 | 2003-03-04 | Wink Communications, Inc. | Configurable monitoring of program viewership and usage of interactive applications |
US7272298B1 (en) | 1998-05-06 | 2007-09-18 | Burst.Com, Inc. | System and method for time-shifted program viewing |
US6393430B1 (en) | 1998-05-08 | 2002-05-21 | Sony Corporation | Method and system for automatically recording music data files by using the hard drive of a personal computer as an intermediate storage medium |
US7117518B1 (en) | 1998-05-14 | 2006-10-03 | Sony Corporation | Information retrieval method and apparatus |
US20020095676A1 (en) | 1998-05-15 | 2002-07-18 | Robert A. Knee | Interactive television program guide system for determining user values for demographic categories |
US6169541B1 (en) | 1998-05-28 | 2001-01-02 | International Business Machines Corporation | Method, apparatus and system for integrating television signals with internet access |
US6928652B1 (en) | 1998-05-29 | 2005-08-09 | Webtv Networks, Inc. | Method and apparatus for displaying HTML and video simultaneously |
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 |
US20050028206A1 (en) | 1998-06-04 | 2005-02-03 | Imagictv, Inc. | Digital interactive delivery system for TV/multimedia/internet |
US20050204388A1 (en) | 1998-06-11 | 2005-09-15 | Knudson Edward B. | Series reminders and series recording from an interactive television program guide |
US6229532B1 (en) | 1998-06-11 | 2001-05-08 | Sony Corporation | Method and apparatus for building a uniform resource locator menu in an Internet television system |
US6614987B1 (en) | 1998-06-12 | 2003-09-02 | Metabyte, Inc. | Television program recording with user preference determination |
GB2377846B (en) | 1998-06-12 | 2003-03-05 | British Sky Broadcasting Ltd | Improvements in receivers for television signals |
US6698020B1 (en) | 1998-06-15 | 2004-02-24 | Webtv Networks, Inc. | Techniques for intelligent video ad insertion |
US6536041B1 (en) | 1998-06-16 | 2003-03-18 | United Video Properties, Inc. | Program guide system with real-time data sources |
US7181756B1 (en) | 1998-06-17 | 2007-02-20 | Microsoft Corporation | Television/internet terminal user interface |
US6215483B1 (en) | 1998-06-17 | 2001-04-10 | Webtv Networks, Inc. | Combining real-time and batch mode logical address links |
US6400407B1 (en) | 1998-06-17 | 2002-06-04 | Webtv Networks, Inc. | Communicating logical addresses of resources in a data service channel of a video signal |
US6237039B1 (en) | 1998-06-30 | 2001-05-22 | Webtv Networks, Inc. | Method and apparatus for downloading auxiliary data to a client from a network during client idle periods |
US6268849B1 (en) | 1998-06-30 | 2001-07-31 | United Video Properties, Inc. | Internet television program guide system with embedded real-time data |
TW416224B (en) | 1998-07-07 | 2000-12-21 | United Video Properties Inc | Interactive television program guide system with local advertisements |
US6442755B1 (en) | 1998-07-07 | 2002-08-27 | United Video Properties, Inc. | Electronic program guide using markup language |
CN1867068A (en) | 1998-07-14 | 2006-11-22 | 联合视频制品公司 | Client-server based interactive television program guide system with remote server recording |
CN1180615C (en) | 1998-07-17 | 2004-12-15 | 联合视频制品公司 | Interactive television program guide system having multiple devices within household |
AR020608A1 (en) * | 1998-07-17 | 2002-05-22 | United Video Properties Inc | A METHOD AND A PROVISION TO SUPPLY A USER REMOTE ACCESS TO AN INTERACTIVE PROGRAMMING GUIDE BY A REMOTE ACCESS LINK |
PT1988708T (en) | 1998-07-17 | 2017-05-17 | Rovi Guides Inc | Interactive television program guide with remote access |
US6754905B2 (en) | 1998-07-23 | 2004-06-22 | Diva Systems Corporation | Data structure and methods for providing an interactive program guide |
US20010043795A1 (en) * | 1998-08-07 | 2001-11-22 | Anthony Wood | Video data recorder for recording predefined format shows |
US8589975B2 (en) | 1998-08-21 | 2013-11-19 | United Video Properties, Inc. | Electronic program guide with advance notification |
US6898762B2 (en) | 1998-08-21 | 2005-05-24 | United Video Properties, Inc. | Client-server electronic program guide |
US6243713B1 (en) | 1998-08-24 | 2001-06-05 | Excalibur Technologies Corp. | Multimedia document retrieval by application of multimedia queries to a unified index of multimedia data for a plurality of multimedia data types |
TW447221B (en) | 1998-08-26 | 2001-07-21 | United Video Properties Inc | Television message system |
US6317779B1 (en) | 1998-09-03 | 2001-11-13 | Hewlett-Packard Company | Audio/video from internet direct to compact disc through web browser |
US6198511B1 (en) | 1998-09-10 | 2001-03-06 | Intel Corporation | Identifying patterns in closed caption script |
ATE282920T1 (en) | 1998-09-11 | 2004-12-15 | Two Way Media Ltd | DELIVERY OF INTERACTIVE APPLICATIONS |
US6357042B2 (en) | 1998-09-16 | 2002-03-12 | Anand Srinivasan | Method and apparatus for multiplexing separately-authored metadata for insertion into a video data stream |
TW465235B (en) | 1998-09-17 | 2001-11-21 | United Video Properties Inc | Electronic program guide with digital storage |
US6446082B1 (en) | 1998-09-21 | 2002-09-03 | Impress Corporation | Method of receiving time-specified program contents |
US6437836B1 (en) | 1998-09-21 | 2002-08-20 | Navispace, Inc. | Extended functionally remote control system and method therefore |
US6907449B2 (en) | 1998-09-22 | 2005-06-14 | Qwest Communications International, Inc. | Conferencing system for simultaneous broadcast of audio and transmission of documents via push technology |
GB2342195A (en) | 1998-09-30 | 2000-04-05 | Xerox Corp | Secure token-based document server |
US6772139B1 (en) | 1998-10-05 | 2004-08-03 | Smith, Iii Julius O. | Method and apparatus for facilitating use of hypertext links on the world wide web |
US6813776B2 (en) | 1998-10-06 | 2004-11-02 | International Business Machines Corporation | Method for automatic and semi-automatic event scheduling based on information embedded in multimedia content |
US6675385B1 (en) | 1998-10-21 | 2004-01-06 | Liberate Technologies | HTML electronic program guide for an MPEG digital TV system |
US6446262B1 (en) | 1998-10-26 | 2002-09-03 | Two Way Tv Limited | Broadcasting interactive applications |
US6317881B1 (en) | 1998-11-04 | 2001-11-13 | Intel Corporation | Method and apparatus for collecting and providing viewer feedback to a broadcast |
US20040210932A1 (en) | 1998-11-05 | 2004-10-21 | Toshiaki Mori | Program preselecting/recording apparatus for searching an electronic program guide for programs according to predetermined search criteria |
US6502243B1 (en) | 1998-11-10 | 2002-12-31 | Lgerca, Inc. | Method and system for locating a resource within a broadcasting environment |
US7165098B1 (en) | 1998-11-10 | 2007-01-16 | United Video Properties, Inc. | On-line schedule system with personalization features |
US6504990B1 (en) | 1998-11-12 | 2003-01-07 | Max Abecassis | Randomly and continuously playing fragments of a video segment |
US6215783B1 (en) | 1998-11-13 | 2001-04-10 | Genesys Telecommunications Laboratories, Inc. | Private IP telephony backbone linking widely-distributed enterprise sites |
US6374402B1 (en) * | 1998-11-16 | 2002-04-16 | Into Networks, Inc. | Method and apparatus for installation abstraction in a secure content delivery system |
US6314569B1 (en) | 1998-11-25 | 2001-11-06 | International Business Machines Corporation | System for video, audio, and graphic presentation in tandem with video/audio play |
US6526577B1 (en) | 1998-12-01 | 2003-02-25 | United Video Properties, Inc. | Enhanced interactive program guide |
US6256071B1 (en) | 1998-12-11 | 2001-07-03 | Hitachi America, Ltd. | Methods and apparatus for recording video files and for generating a table listing the recorded files and links to additional information |
JP2000184320A (en) | 1998-12-11 | 2000-06-30 | Nec Corp | Recording and reproducing device and display device for electronic program guide |
US6374404B1 (en) | 1998-12-16 | 2002-04-16 | Sony Corporation Of Japan | Intelligent device having background caching of web pages from a digital television broadcast signal and method of same |
WO2000038421A1 (en) | 1998-12-21 | 2000-06-29 | Sony Electronics, Inc. | A method and apparatus for providing electronic coupons |
US6591292B1 (en) | 1999-01-08 | 2003-07-08 | Thomson Licensing S.A. | Method and interface for incorporating program information into an electronic message |
US6178114B1 (en) | 1999-01-12 | 2001-01-23 | Macronix International Co., Ltd. | Sensing apparatus and method for fetching multi-level cell data |
US6615408B1 (en) | 1999-01-15 | 2003-09-02 | Grischa Corporation | Method, system, and apparatus for providing action selections to an image referencing a product in a video production |
US7296282B1 (en) | 1999-01-22 | 2007-11-13 | Koplar Interactive Systems International Llc | Interactive optical cards and other hand-held devices with increased connectivity |
US6564380B1 (en) | 1999-01-26 | 2003-05-13 | Pixelworld Networks, Inc. | System and method for sending live video on the internet |
US6522342B1 (en) | 1999-01-27 | 2003-02-18 | Hughes Electronics Corporation | Graphical tuning bar for a multi-program data stream |
US6631413B1 (en) | 1999-01-28 | 2003-10-07 | International Business Machines Corporation | Method for optimizing profits in electronic delivery of digital objects |
US6442593B1 (en) * | 1999-02-01 | 2002-08-27 | Sony Corporation | Methods and apparatus for transmitting prioritized electronic mail messages |
US6167235A (en) | 1999-02-03 | 2000-12-26 | Motorola | Method and apparatus for providing additional information to a selective call device about a broadcast |
US6351270B1 (en) | 1999-03-01 | 2002-02-26 | Sony Corporation | Miniature video in the guide logo |
US6348932B1 (en) | 1999-03-01 | 2002-02-19 | Sony Corporation | Provide two different types of service in a menu |
US7359871B1 (en) | 1999-03-02 | 2008-04-15 | Alticor Investments Inc. | System and method for managing recurring orders in a computer network |
US7051351B2 (en) | 1999-03-08 | 2006-05-23 | Microsoft Corporation | System and method of inserting advertisements into an information retrieval system display |
US7032030B1 (en) | 1999-03-11 | 2006-04-18 | John David Codignotto | Message publishing system and method |
US6990676B1 (en) | 1999-03-17 | 2006-01-24 | Sony Corporation | Locally stored content previews. Representative of programming content in an electronic programming guide through a graphic image accessed from the hard drive of a set top box |
US6665870B1 (en) * | 1999-03-29 | 2003-12-16 | Hughes Electronics Corporation | Narrative electronic program guide with hyper-links |
US8943527B2 (en) | 1999-03-30 | 2015-01-27 | Tivo Inc. | Audience measurement system |
US7665111B1 (en) | 1999-10-20 | 2010-02-16 | Tivo Inc. | Data storage management and scheduling system |
US6611654B1 (en) | 1999-04-01 | 2003-08-26 | Koninklijke Philips Electronics Nv | Time- and location-driven personalized TV |
US6597891B2 (en) | 1999-04-05 | 2003-07-22 | International Business Machines Corporation | Combining online browsing and on-demand data broadcast for selecting and downloading digital content |
US6560777B2 (en) | 1999-04-07 | 2003-05-06 | Webtv Networks, Inc. | Broadcast enhancement trigger addressed to multiple uniquely addressed information resources |
US6938270B2 (en) | 1999-04-07 | 2005-08-30 | Microsoft Corporation | Communicating scripts in a data service channel of a video signal |
US6460180B1 (en) | 1999-04-20 | 2002-10-01 | Webtv Networks, Inc. | Enabling and/or disabling selected types of broadcast triggers |
US6571392B1 (en) | 1999-04-20 | 2003-05-27 | Webtv Networks, Inc. | Receiving an information resource from the internet if it is not received from a broadcast channel |
CA2335629C (en) | 1999-04-26 | 2010-02-16 | Sony Corporation | Image recording system |
US6792615B1 (en) | 1999-05-19 | 2004-09-14 | New Horizons Telecasting, Inc. | Encapsulated, streaming media automation and distribution system |
US6745368B1 (en) | 1999-06-11 | 2004-06-01 | Liberate Technologies | Methods, apparatus, and systems for storing, retrieving and playing multimedia data |
US7150031B1 (en) | 2000-06-09 | 2006-12-12 | Scientific-Atlanta, Inc. | System and method for reminders of upcoming rentable media offerings |
US6721954B1 (en) | 1999-06-23 | 2004-04-13 | Gateway, Inc. | Personal preferred viewing using electronic program guide |
US6604239B1 (en) | 1999-06-25 | 2003-08-05 | Eyescene Inc. | System and method for virtual television program rating |
EP1197075A1 (en) | 1999-06-28 | 2002-04-17 | United Video Properties, Inc. | Interactive television program guide system and method with niche hubs |
US6330719B1 (en) | 1999-06-30 | 2001-12-11 | Webtv Networks, Inc. | Interactive television receiver unit browser that waits to send requests |
US6668378B2 (en) | 1999-06-30 | 2003-12-23 | Webtv Networks, Inc. | Interactive television triggers having connected content/disconnected content attribute |
US7103904B1 (en) | 1999-06-30 | 2006-09-05 | Microsoft Corporation | Methods and apparatus for broadcasting interactive advertising using remote advertising templates |
US6415438B1 (en) | 1999-10-05 | 2002-07-02 | Webtv Networks, Inc. | Trigger having a time attribute |
US6349410B1 (en) | 1999-08-04 | 2002-02-19 | Intel Corporation | Integrating broadcast television pause and web browsing |
US6647417B1 (en) | 2000-02-10 | 2003-11-11 | World Theatre, Inc. | Music distribution systems |
US6229541B1 (en) | 1999-09-03 | 2001-05-08 | Isurftv | Use of templates for cost-effective secure linking of video stream objects |
US7222354B1 (en) | 1999-10-05 | 2007-05-22 | International Business Machines, Corporation | Dynamic composition at the set-top box |
US7155735B1 (en) | 1999-10-08 | 2006-12-26 | Vulcan Patents Llc | System and method for the broadcast dissemination of time-ordered data |
AU1473601A (en) | 1999-11-09 | 2001-06-06 | Highcast Network | System and method for creating virtual media channel |
US20040205829A1 (en) | 2000-09-12 | 2004-10-14 | Highcast Network, Inc. | System and method for creating a virtual media channel |
US7159232B1 (en) | 1999-11-16 | 2007-01-02 | Microsoft Corporation | Scheduling the recording of television programs |
US6499054B1 (en) | 1999-12-02 | 2002-12-24 | Senvid, Inc. | Control and observation of physical devices, equipment and processes by multiple users over computer networks |
US6473751B1 (en) | 1999-12-10 | 2002-10-29 | Koninklijke Philips Electronics N.V. | Method and apparatus for defining search queries and user profiles and viewing search results |
US6366907B1 (en) | 1999-12-15 | 2002-04-02 | Napster, Inc. | Real-time search engine |
US7174562B1 (en) | 1999-12-20 | 2007-02-06 | Microsoft Corporation | Interactive television triggers having connected content/disconnected content attribute |
US6785902B1 (en) | 1999-12-20 | 2004-08-31 | Webtv Networks, Inc. | Document data structure and method for integrating broadcast television with web pages |
US7139723B2 (en) | 2000-01-13 | 2006-11-21 | Erinmedia, Llc | Privacy compliant multiple dataset correlation system |
US6701528B1 (en) | 2000-01-26 | 2004-03-02 | Hughes Electronics Corporation | Virtual video on demand using multiple encrypted video segments |
US6956833B1 (en) | 2000-02-08 | 2005-10-18 | Sony Corporation | Method, system and devices for wireless data storage on a server and data retrieval |
US7178162B2 (en) | 2000-02-10 | 2007-02-13 | Chyron Corporation | Incorporating graphics and interactive triggers in a video stream |
US20020046407A1 (en) * | 2000-02-18 | 2002-04-18 | Alexander Franco | Use of web pages to remotely program a broadcast content recording system |
US7908635B2 (en) | 2000-03-02 | 2011-03-15 | Tivo Inc. | System and method for internet access to a personal television service |
AU2001249093A1 (en) | 2000-03-03 | 2001-09-17 | Mizrahi Enterprises, Inc. | Method and system for selectively recording content relating to an audio/visual presentation |
US20020056123A1 (en) | 2000-03-09 | 2002-05-09 | Gad Liwerant | Sharing a streaming video |
US7284064B1 (en) | 2000-03-21 | 2007-10-16 | Intel Corporation | Method and apparatus to determine broadcast content and scheduling in a broadcast system |
US7167895B1 (en) | 2000-03-22 | 2007-01-23 | Intel Corporation | Signaling method and apparatus to provide content on demand in a broadcast system |
US6968364B1 (en) | 2000-03-30 | 2005-11-22 | Microsoft Corporation | System and method to facilitate selection and programming of an associated audio/visual system |
US7673315B1 (en) | 2000-03-30 | 2010-03-02 | Microsoft Corporation | System and method for providing program criteria representing audio and/or visual programming |
AU2001251427A1 (en) | 2000-04-05 | 2001-10-23 | Ods Properties, Inc. | Interactive wagering systems and methods for restricting wagering access |
US6765557B1 (en) * | 2000-04-10 | 2004-07-20 | Interlink Electronics, Inc. | Remote control having touch pad to screen mapping |
US20010030667A1 (en) | 2000-04-10 | 2001-10-18 | Kelts Brett R. | Interactive display interface for information objects |
US6766524B1 (en) | 2000-05-08 | 2004-07-20 | Webtv Networks, Inc. | System and method for encouraging viewers to watch television programs |
US20020092015A1 (en) | 2000-05-26 | 2002-07-11 | Sprunk Eric J. | Access control processor |
US8495679B2 (en) | 2000-06-30 | 2013-07-23 | Thomson Licensing | Method and apparatus for delivery of television programs and targeted de-coupled advertising |
US7103905B2 (en) | 2000-08-28 | 2006-09-05 | Digeo, Inc. | System and method to provide media programs for synthetic channels |
JP4581201B2 (en) | 2000-08-31 | 2010-11-17 | ソニー株式会社 | Reservation management method, reservation management apparatus, and program storage medium |
US6834156B1 (en) | 2000-10-25 | 2004-12-21 | Xm Satellite Radio, Inc. | Method and apparatus for controlling user access and decryption of locally stored content at receivers in a digital broadcast system |
US6804528B1 (en) | 2000-11-03 | 2004-10-12 | Lucent Technologies, Inc. | Apparatus and method for use in the multicast of traffic data in wireless multiple access communications systems |
JP4043828B2 (en) | 2001-04-19 | 2008-02-06 | 松下電器産業株式会社 | License management system, license management apparatus, and relay apparatus |
US20020194585A1 (en) | 2001-06-15 | 2002-12-19 | Connelly Jay H. | Methods and apparatus for providing ranking feedback for content in a broadcast system |
US7099952B2 (en) | 2001-06-28 | 2006-08-29 | Microsoft Corporation | Transportable identifier and system and method to facilitate access to broadcast data |
US6485044B1 (en) | 2001-08-01 | 2002-11-26 | Patrick J. Blake | Bicycle stunt pegs for grinding |
US7107608B2 (en) | 2001-10-01 | 2006-09-12 | Microsoft Corporation | Remote task scheduling for a set top box |
US7600246B2 (en) | 2002-04-17 | 2009-10-06 | Microsoft Corporation | Method and apparatus for analyzing program data |
US20040078817A1 (en) | 2002-05-14 | 2004-04-22 | Steven Horowitz | Dynamic program events recording |
JP2003339041A (en) | 2002-05-21 | 2003-11-28 | Sony Ericsson Mobilecommunications Japan Inc | Contents providing system, server apparatus, and terminal equipment |
US6892352B1 (en) | 2002-05-31 | 2005-05-10 | Robert T. Myers | Computer-based method for conveying interrelated textual narrative and image information |
GB0214444D0 (en) * | 2002-06-21 | 2002-07-31 | Thirdspace Living Ltd | User interface system |
US20040002156A1 (en) | 2002-06-26 | 2004-01-01 | Stratagene | Selective cloning of homoduplex nucleic acids |
JP2004064184A (en) | 2002-07-25 | 2004-02-26 | Victor Co Of Japan Ltd | Broadcast program reception system and program video recording apparatus |
WO2004034700A1 (en) * | 2002-10-11 | 2004-04-22 | Sony Corporation | Network control confirmation system, control communication terminal, server, and network control confirmation method |
JP3806688B2 (en) | 2002-11-28 | 2006-08-09 | 三洋電機株式会社 | Portable viewing device |
US20050066353A1 (en) * | 2003-09-18 | 2005-03-24 | Robert Fransdonk | Method and system to monitor delivery of content to a content destination |
US7356672B2 (en) | 2004-05-28 | 2008-04-08 | The Regents Of The University Of California | Warp processor for dynamic hardware/software partitioning |
US9021529B2 (en) | 2004-07-15 | 2015-04-28 | Microsoft Technology Licensing, Llc | Content recordation techniques |
US8613024B2 (en) | 2005-12-13 | 2013-12-17 | United Video Properties, Inc. | Cross-platform predictive popularity ratings for use in interactive television applications |
-
2004
- 2004-07-15 US US10/891,579 patent/US9021529B2/en active Active
- 2004-08-19 CN CNB2004800204037A patent/CN100512398C/en active Active
- 2004-10-19 BR BRPI0406525A patent/BRPI0406525A8/en not_active Application Discontinuation
- 2004-10-19 AU AU2004288599A patent/AU2004288599A1/en not_active Abandoned
- 2004-10-19 CA CA2508652A patent/CA2508652C/en active Active
- 2004-10-19 WO PCT/US2004/034763 patent/WO2006019385A1/en not_active Application Discontinuation
- 2004-10-19 RU RU2005120668A patent/RU2368094C2/en active
- 2004-10-19 EP EP04786621.5A patent/EP1658723B1/en active Active
- 2004-10-19 JP JP2007521446A patent/JP4912301B2/en active Active
- 2004-10-19 KR KR1020057012341A patent/KR101159328B1/en active IP Right Grant
- 2004-10-19 MX MXPA05007149A patent/MXPA05007149A/en active IP Right Grant
Also Published As
Publication number | Publication date |
---|---|
JP4912301B2 (en) | 2012-04-11 |
RU2005120668A (en) | 2007-01-20 |
KR101159328B1 (en) | 2012-06-22 |
CA2508652C (en) | 2014-12-02 |
US20060117351A1 (en) | 2006-06-01 |
KR20070083242A (en) | 2007-08-24 |
MXPA05007149A (en) | 2006-04-05 |
CN1823521A (en) | 2006-08-23 |
AU2004288599A1 (en) | 2006-02-02 |
US9021529B2 (en) | 2015-04-28 |
WO2006019385A8 (en) | 2007-05-18 |
EP1658723A4 (en) | 2008-06-04 |
RU2368094C2 (en) | 2009-09-20 |
EP1658723B1 (en) | 2019-02-20 |
CN100512398C (en) | 2009-07-08 |
JP2008507198A (en) | 2008-03-06 |
WO2006019385A1 (en) | 2006-02-23 |
BRPI0406525A (en) | 2006-05-09 |
BRPI0406525A8 (en) | 2017-12-05 |
EP1658723A1 (en) | 2006-05-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA2508652C (en) | Content recordation techniques | |
US20210345007A1 (en) | Multimedia content search and recording scheduling system | |
US20220086520A1 (en) | Systems and methods for mirroring and transcoding media content | |
EP3425903B1 (en) | Systems and methods for supporting multi-user media content access using index points | |
US20040268403A1 (en) | Context-sensitive television tags | |
US20050262533A1 (en) | User interface having a cycling display of content representations | |
US20080028074A1 (en) | Supplemental Content Triggers having Temporal Conditions | |
AU2008361364A1 (en) | Server-based program recording scheduling | |
US20050278739A1 (en) | Video insertion when content is not available |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
EEER | Examination request |