The invention provides a method and system for distributing personalized content to potentially large numbers of recipients. A pool is selected, from among all content available for distribution, of those content elements that will be made available for simultaneous distribution, and personalized content is selected for distribution from that pool. The content of the pool can change with new selections over time. For each individual recipient, content elements in the pool are examined to determine if they are predicted to be of sufficient interest to that recipient for distribution, and if so, those content elements are distributed. If not, successive content elements in the pool are examined, relaxing the standard for sufficient interest, until at least one content element is found and distributed to the individual recipient.
|
67. A method comprising:
determining a score for one of a set of content elements in a pool, said score being responsive to a predicted interest in said one content element by an individual recipient;
comparing said score with a threshold;
choosing whether to distribute said one content element to said individual recipient, in response to said comparing; and
selecting a new pool that differs from said pool, said new pool being selected based on timing information.
66. A method comprising:
determining a score for one of a set of content elements in a pool, said score being responsive to a predicted interest in said one content element by an individual recipient;
comparing said score with a threshold;
choosing whether to distribute said one content element to said individual recipient, in response to said comparing; and
selecting a new pool that differs from said pool, said new pool being selected by replacing said pool entirely.
68. A system including:
means for determining a score for one of a set of content elements in a pool, said score being responsive to a predicted interest in said one content element by an individual recipient;
means for comparing said score with a threshold;
means for choosing whether to distribute said one content element to said individual recipient, in response to said comparing; and
means for selecting a new pool that differs from said pool, said means for selecting said new pool includes means for replacing said pool entirely.
69. A system including:
means for determining a score for one of a set of content elements in a pool, said score being responsive to a predicted interest in said one content element by an individual recipient;
means for comparing said score with a threshold;
means for choosing whether to distribute said one content element to said individual recipient, in response to said comparing; and
means for selecting a new pool that differs from said pool, said means for selecting said new pool includes means for selecting based on timing information.
1. A method comprising:
determining a score for one of a set of content elements in a pool, said score being responsive to a predicted interest in said one content element by an individual recipient;
comparing said score with a threshold;
choosing whether to distribute said one content element to said individual recipient, in response to said comparing; and
selecting a new pool that differs from said pool, said selecting said new pool includes:
selecting an individual content element for addition to said pool, and
selecting an individual content element for removal from said pool.
45. A method comprising:
determining a score for more than one of several different content elements in a pool of content elements, said scores being responsive to a predicted interest in said different content elements by an individual recipient;
comparing said scores with a threshold;
noting a plurality of content elements in said pool, each having an associated score, in response to said comparing;
selecting one of said plurality of content elements in response to said scores; and
choosing whether to distribute at least one of said plurality of content elements to said individual recipient.
71. A computer program stored on a tangible computer-readable medium, the computer program comprising one or more code segments that, when executed, cause a computer to:
determine a score for one of a set of content elements in a pool, a score being responsive to a predicted interest in said one content element by an individual recipient;
compare said score with a threshold;
choose whether to distribute said one content element to said individual recipient, in response to said comparing; and
select a new pool that differs from said pool, said new pool being selected based on timing information.
70. A computer program stored on a tangible computer-readable medium, the computer program comprising one or more code segments that, when executed, cause a computer to:
determine a score for one of a set of content elements in a pool, a score being responsive to a predicted interest in said one content element by an individual recipient;
compare said score with a threshold;
choose whether to distribute said one content element to said individual recipient, in response to said comparing; and
select a new pool that differs from said pool, said new pool being selected by replacing said pool entirely.
14. A system including:
a plurality of scores for content elements in a set of content elements in a pool, said scores being responsive to a predicted interest by an individual recipient of said one content element to a recipient;
a result of comparing said scores with a threshold;
an adjusted threshold, said adjusted threshold being determined in response to said result for comparing;
a communication path disposed for coupling said one content element to said individual recipient, in response to said result of comparing; and
a selected one of said content elements, said selected one being in response to said scores.
52. A system comprising:
means for determining a score for more than one of several different content elements in a pool of content elements, said scores being responsive to a predicted interest in said different content element by an individual recipient;
means for comparing said scores with a threshold;
means for noting a plurality of content elements in said pool, each having an associated score, in response to said comparing;
means for selecting one of said plurality of content elements in response to said scores; and
means for choosing whether to distribute at least one of said plurality of content elements to said individual recipient.
17. A system including:
means for determining a score for one of a set of content elements in a pool, said score being responsive to a predicted interest in said one content element by an individual recipient;
means for comparing said score with a threshold;
means for choosing whether to distribute said one content element to said individual recipient, in response to said comparing; and
means for selecting a new pool that differs from said pool, said means for selecting said new pool includes:
means for selecting an individual content element for addition to said pool, and
means for selecting an individual content element for removal from said pool.
31. A computer program stored on a tangible computer-readable medium, the computer program comprising one or more code segments that, when executed, cause a computer to:
determine a score for one of a set of content elements in a pool, a score being responsive to a predicted interest in said one content element by an individual recipient;
compare said score with a threshold;
choose whether to distribute said one content element to said individual recipient, in response to said comparing; and
select a new pool that differs from said pool, said selection of said new pool includes:
selecting an individual content element for addition to said pool, and
selecting an individual content element for removal from said pool.
15. A system including:
a plurality of scores for content elements in a set of content elements in a pool, said scores being responsive to a predicted interest by an individual recipient of said one content element to a recipient;
a result of comparing said scores with a threshold;
an adjusted threshold, said adjusted threshold being in response to said result for comparing;
a corresponding set of results of comparing said plurality of scores with said adjusted threshold;
a communication path disposed for coupling said one content element to said individual recipient, in response to said result of comparing; and
a selected one of said content elements, said selected one being responsive to said set of results of comparing.
59. A computer program for choosing whether to distribute one content element stored on a tangible computer-readable medium, the computer program comprising one or more code segments that, when executed, cause a computer to:
determine a score for more than one of several different content elements in a pool of content elements, said scores being responsive to a predicted interest in said different content elements by an individual recipient;
compare said scores with a threshold;
note a plurality of content elements in said pool, each having an associated score, in response to said comparing;
select one of said plurality of content elements in response to said scores; and
choose whether to distribute at least one of said plurality of content elements to said individual recipient.
3. A method as in
4. A method as in
5. A method as in
repeating said determining and comparing, for a plurality of content elements in said pool; and
selecting one of said plurality in response to said scores.
6. A method as in
7. A method as in
8. A method as in
9. A method as in
10. A method as in
11. A method as in
12. A method as in
13. A method as in
16. A method as in
18. A system as in
19. A system as in
20. A system as in
21. A system as in
means for repeating said determining and comparing, for a plurality of content elements in said pool; and
means for selecting one of said plurality in response to determining and comparing performed by said means for determining and comparing.
22. A system as in
23. A system as in
24. A system as in
25. A system as in
26. A system as in
27. A system as in
28. A system as in
29. A system as in
30. A system as in
32. A computer program as in
33. A computer program as in
34. A computer program as in
35. A computer program as in
repeat said determining and comparing, for a plurality of content elements in said pool; and
select one of said plurality of content elements in response to determining and comparing repeatedly performed.
36. A computer program as in
37. A computer program as in
38. A computer program as in
39. A computer program as in
40. A computer program as in
41. A computer program as in
42. A computer program as in
43. A computer program as in
44. A computer program as in
46. The method of
47. The method of
48. A method as in
49. The method of
adjusting said threshold in response to said comparing; and
noting a plurality of content elements in said pool, each having an associated score, in response to said adjusting.
50. A method as in
51. The method of
adjusting said threshold in response to said comparing; and
noting a plurality of content elements in said pool, each having an associated score, in response to said adjusting.
53. The system of
54. The system of
55. A system as in
56. The system of
means for adjusting said threshold in response to said comparing; and
means for noting a plurality of content elements in said pool, each having an associated score, in response to said adjusting.
57. A system as in
58. The system of
means for adjusting said threshold in response to said comparing; and
means for noting a plurality of content elements in said pool, each having an associated score, in response to said adjusting.
60. The computer program of
61. The computer program of
62. The computer program as in
63. The computer program of
adjust said threshold in response to said comparing; and
note a plurality of content elements in said pool, each having an associated score, in response to said adjusting.
64. The computer program of
65. The computer program of
adjust said threshold in response to said comparing; and
note a plurality of content elements in said pool, each having an associated score, in response to said adjusting.
|
1. Field of the Invention
This invention relates to distributing personalized content.
2. Related Art
Known distribution systems for content include broadcast systems, such as broadcast radio and broadcast television, and personalized systems, such as direct purchases of records and videotapes. Recent developments in content distribution include digital storage of content and digital distribution of content, including both audio and video. For example, it is now possible to store popular songs on disk and distribute those songs to recipients using a communication network.
One problem in the known art is that distributing personalized information greatly increases the bandwidth used for distribution. At any one moment, each individual recipient can have different desires for content, so a large number of recipients can use substantial amounts of distribution bandwidth. Distribution bandwidth includes both the communication infrastructure to transmit that content to recipients, as well as the infrastructure to retrieve that content from storage and present that content to the communication infrastructure. For example, while it can be relatively easy to store several thousand songs on magnetic media, it is still relatively difficult to retrieve more than a few dozen of those songs from magnetic media simultaneously.
Accordingly, it would be desirable to distribute personalized content to potentially large numbers of recipients, without incurring the problems of the known art. This advantage is achieved in an embodiment of the invention in which a pool is selected, from among all content available for distribution, of those content elements that will be made available for simultaneous distribution, and personalized content is selected for distribution from that pool.
The invention provides a method and system for distributing personalized content to potentially large numbers of recipients. A pool is selected, from among all content available for distribution, of those content elements that will be made available for simultaneous distribution, and personalized content is selected for distribution from that pool. The content of the pool can change with new selections over time. For each individual recipient, content elements in the pool are examined to determine if they are predicted to be of sufficient interest to that recipient for distribution, and if so, those content elements are distributed. If not, successive content elements in the pool are examined, relaxing the standard for sufficient interest, until at least one content element is found and distributed to the individual recipient.
In the following description, a preferred embodiment of the invention is described with regard to preferred process steps and data structures. Those skilled in the art would recognize after perusal of this application that embodiments of the invention can be implemented using general or special purpose processors under program control, or other circuits, adapted to particular process steps and data structures described herein, and that implementation of the process steps and data structures described herein would not require undue experimentation or further invention.
System Elements
A system 100 for distributing personalized content includes a processor 110, program and data memory 120, mass storage 130, and a communication path 140 to a community 150 of individual recipients.
The processor 110 and memory 120 include any one of a set of known processors, operating under control of operating system and application programs in the memory 120. The mass storage 130 includes magnetic, optical, or magneto-optical storage suitable for maintains large amounts of data and delivering segments of that data to the memory 120 upon instruction by the processor 110.
The mass storage 130 maintains a relatively large number of content elements. In a preferred embodiment, each content element comprises an audio song in a digital format, such as an AU format, a WAV format, (preferably) a “Real Audio” or “Real Player” format, or another known format. Storage and delivery of all of these digital formats are known in the art. For example, in a preferred embodiment, the mass storage 130 maintains about 80,000 songs.
The invention is described herein with primary regard to delivery of audio songs in a digital format. However, the invention has wide applicability to delivery of other content elements, including other types of data and other types of format. For example, the invention is applicable to delivery of music videos, other audiovisual or video elements, graphic elements, mapping information, seismic information, telemetry information, or other known data in addition to or in combination therewith.
Network Distribution
The communication path 140 includes a communication link 141 (such as a T1 connection or a similar link) to a communication network 142 (such as the internet or a similar network). The communication link 141 is disposed for transmitting data from the memory 120 at a rate sufficient to deliver each content element to the community 150 of individual recipients, so that each individual recipient 151 in the community 150 receives content elements substantially in real time.
The communication network 142 is disposed for transmitting data from the communication link 141 to each individual recipient 151 in the community 150 at a rate sufficient to deliver each content element to each individual recipient 151 in the community 150 substantially in real time.
In alternative embodiments, the communication network 142 may be disposed for transmitting data to sets of individual recipients 151 in the community 150 using a multicast distribution technique, such as IP multicast.
Each content element maintained on the mass storage 130 is assigned to one or more channels for distribution.
In a preferred embodiment, each channel includes a recognizable genre or subdivision of known music, such as for example “Big Bands,” “Classical,” “Country & Western,” “Heavy Metal,” “Love Songs,” “1950s,” and the like. For example, in a pre-ferred embodiment, each song maintained on the mass storage 130 is assigned to one or more of about 100 or so channels. Channels can, but need not, be assigned numeric or alphanumeric identifiers.
Each channel comprises content elements that are thought to appeal to substantially the same set of individual recipients 151 in the community 150.
For example, content elements are assigned to the channel “Country & Western” because it is believed that they will all have appeal to a group of individual recipients 151 in the community 150 who like “Country & Western” songs.
However, within each particular channel, those individual recipients 151 who receive content elements from that particular channel often have differing likes and dislikes. For each particular channel, the content elements on that channel do not necessarily have the same appeal to each individual recipient 151 receiving content elements from that channel.
Distribution Pool
For each particular channel, the system 100 maintains a pool 160 in the memory 120 of selected content elements assigned to that channel.
Those content elements selected for the pool 160 are maintained in the memory 120 to be distributed to individual recipients 151. The pool 160 is more than one such content element, but smaller than the entire collection of content elements on the mass storage 130.
The processor 110 and memory 120 are disposed to be able to deliver substantially all the content elements in the pool 160 simultaneously and substantially in real time.
In alternative embodiments, the pool 160 can be maintained on the mass storage 130 in addition to or instead of in the memory 120. The pool 160 is limited only by the ability of the system 100 to retrieve and deliver substantially all of the content elements in the pool 160 simultaneously.
In a preferred embodiment, the pool 160 comprises about 30 content elements for each channel. The inventor has found that this is a sufficient large number that, at any particular time, virtually every individual recipient 151 will have at least one content element they will enjoy. The inventor has also found that this is a sufficiently small number that the processor 110 and memory 120 are not substantially taxed by attempting to deliver all content elements in the pool 160 simultaneously.
In alternative embodiments, the number of content elements in the pool 160 could be different. The number of content elements in the pool 160 may be selected in response to various factors, in addition to or instead of the factors noted above.
The content elements in the pool 160 are replaced from time to time; thus, the pool 160 does not comprise the same content elements at all times.
In a preferred embodiment, each content element in the pool 160 has a known play length, which is the amount of time it takes to play that song in real time. Each song is retained in the pool 160 for its play length (plus any amount of time required to actually distribute the song if it has been selected for distribution to individual recipients 151). After a particular content element is ready for replacement, the processor 110 selects a new content element from the entire set of content elements (for that particular channel) to enter into the pool 160.
In alternative embodiments, the content elements in the pool 160 may be replaced in response to other factors, in addition to or instead of play length:
For each individual recipient 151 requesting personalized distribution, there are times when a content element is selected for personalized distribution to that individual recipient 151. At those times, the content element is selected from the pool 160. After examining at least one such content element, the processor 110 selects one content element for distribution to that individual recipient 151. After that one content element is distributed to that individual recipient 151 (and if the individual recipient 151 still desires personalized distribution) the processor 110 continues to examine content elements in the pool 160 and select them for distribution to that individual recipient 151.
In a preferred embodiment, the processor 110 selects content elements for personalized distribution at times responsive to each individual recipient 151, such as when an individual recipient 151 specifically requests distribution of a content element, or when a previous content element ends, or triggered by a timer or other event.
In alternative embodiments, the processor 110 may select content elements for personalized distribution at times responsive to sets of individual recipients 151, such as when content elements are scheduled for multicast to a plurality of individual recipients 151. In such alternative embodiments, the processor 110 may give preference to those content elements scheduled for multicast. The preference may be expressed, for example, by adjusting the score of content elements responsive to that schedule or by restricting the selection for personalized distribution to those content elements.
The processor 110 selects a first content element from the pool 160, and determines a predicted interest by the individual recipient 151 in that first content element.
In a preferred embodiment, the first content element is selected from the pool in a weighted round robin manner. In alternative embodiments, the first content element may be selected in response to another technique, such as at random.
In a preferred embodiment, the processor 110 determines the predicted interest in response to a set of known correlation factors between the particular individual recipient 151 and other known groups of individual recipients 151 in the community 150. The processor 110 preferably uses a known CF (collaborative filtering) technique. CF techniques are known in the art of predicting audience response.
In alternative embodiments, where determining a predicted interest is relatively less resource-intensive, the processor 110 may make the determination using other techniques. For example, the processor 110 may make the determination for a larger number of content elements in the pool 160 (even for all of them). The processor 110 may make the determination for content elements not already in the pool 160 (for possible addition to the pool 160).
The processor 110 compares the predicted interest with a minimum interest threshold, to determine whether the first content element will probably be liked or disliked by the particular individual recipient 151.
In a preferred embodiment, both the predicted interest and the interest threshold are compared using dimensionless units. In this application these units are referred to as being on a scale of zero (worst) to ten (best). However, there is no special reason for the scale to have this particular granularity or these particular endpoint values.
In a preferred embodiment, the minimum interest threshold is initially set relatively high, to maximize the probability that the individual recipient 151 will like the song. For example, the initial minimum interest threshold is preferably set to about nine (on a scale of zero to ten).
The processor 110 also compares the first content element with a set of business rules, to determine whether distribution of the first content element will be disallowed for administrative reasons. Business rules have three possible types:
If the processor 110 determines that the content element meets the minimum interest threshold and the business rules, it distributes the content element tot the individual recipient 151.
If the processor 110 determines that the content element should not be distributed for either reason, it selects a second content element from the pool 160 and repeats the examination with regard to that second content element.
For each successive content element it examines, the processor 110 adjusts the minimum interest threshold downward. The processor 110 compares each of the content elements it has examined against the adjusted minimum interest threshold, and selects the best one.
Thus, if the first content element does not meet the relatively high initial threshold, both the first and second content elements are compared against a somewhat relaxed threshold. If both the first and second content elements do not meet the relaxed threshold, a third content element is selected and all of the first, second, and third content elements are compared against a further relaxed threshold. This process is repeated until one of the following:
In either case, the processor 110 distributes one content element it has examined that has the best predicted interest (and satisfies the business rules).
In a preferred embodiment, the minimum interest threshold is adjusted downward by multiplying the previous minimum interest threshold by a factor smaller than one. For example, this factor is preferably about 0.9.
In a preferred embodiment, the maximum number of content elements examined by the processor 110 is about half the size of the pool 160. For example, this number is preferably about 15.
In alternative embodiments, any of the values used for this process may be adaptively selected in response to a variety of factors:
In a preferred embodiment, the processor 110 selects content elements for personalized distribution separately for each channel.
In alternative embodiments, the individual recipient 151 can select a plurality of channels from which the processor 110 selects content elements for personalized distribution. In such alternative embodiments, the processor 110 can select content elements from a union of pools 160 for each channel, or using some other technique.
Method of Operation
A method 200 is performed by the system 100, including the processor 110, memory 120, mass storage 130, and communication path 140.
Pool Selection
At a flow point 210, the system 100 has a set of content elements for distribution to the community 150.
At as tep 211, the processor 110 selects a set of content elements for entry into the pool 160. As noted herein, the number of elements in the pool 160 is preferably about 30, but may be different and may be adaptive in response to factors noted herein.
At a step 212, the processor 110 periodically replaces one or more content elements in the pool 160. As noted herein, the processor 110 preferably replaces each content element in the pool 160 after the duration of its play length. At that time, the processor 110 retains ejected content elements in the memory 120 if they are then currently being distributed, but marks them as ineligible for selection for personalized distribution.
In alternative embodiments, at the step 212, the processor 110 may periodically replace all of the content elements in the pool 160. For example, the processor 110 may perform this step periodically about every 30 seconds.
If the system 100 is reset for any reason, such as by a system failure or a reset forced by an operator, the method 200 returns to the flow point 210 and the processor 110 selects a new pool 160.
Content Element Selection
At a flow point 220, the system 100 has selected the pool 160 of content elements for personalized distribution to individual recipients 151 in the community 150.
At a step 221, an individual recipient 151 makes a request for personalized content from a particular channel (or as noted above, from a particular set of channels). The processor 110 receives the request and the method 200 proceeds with the next step.
At a step 222, the processor 110 searches the pool 160 for a next content element to be distributed. As noted herein, the particular method for search is preferably a weighted round robin technique, but there is no particular reason in the context of this invention for using any particular search technique.
At a step 223, the processor 110 determines a predicted rating for the selected content element. As noted herein, the processor 110 preferably uses a known CF technique.
At a step 224, the processor 110 determines if the selected content element meets the business rules for selection.
At a step 225, the processor 110 combines the predicted rating with other selected factors to determine a score for that particular content element.
In a preferred embodiment, violating any of the business rules bars distribution of the content element, so the processor 110 assigns the content element the lowest possible score (zero).
In alternative embodiments, violating licensing restrictions has the same effect, but violating marketing or administrative restrictions may have a less drastic effect. For example, the processor 110 can significantly reduce the score of the content element, but not reduce it to zero, for violating selected “soft” marketing business rules.
At a step 226, the processor 110 determines if the score meets or exceeds a selected minimum threshold for the individual recipient 151. As noted above, the initial value for the minimum threshold is about nine (on a scale of zero to ten), but may be different or may be adaptive responsive to a variety of factors.
If the score for the selected content element meets or exceeds the selected minimum threshold, the method 200 proceeds with the flow point 230, and the content element is distributed to the individual recipient 151.
If the score for the selected content element does not meet the selected minimum threshold, the method 200 proceeds with the next step.
At a step 227, the processor 110 adjusts the selected minimum threshold to determine an adjusted minimum threshold. As noted above, the processor 110 preferably multiplies the selected minimum threshold by a factor less than one, such as 0.9, but in alternative embodiments the factor may be different or may be adaptive in response to various factors.
At a step 228, the processor 110 determines if the score for any content element selected so far meets or exceeds the adjusted minimum threshold.
If one or more content elements selected so far meet or exceed the adjusted minimum threshold, the processor 110 selects the content element with the highest score. The method 200 proceeds with the flow point 230, and that content element is distributed to the individual recipient 151.
If none of the content elements selected so far meet or exceed the adjusted threshold, the method 200 returns to the step 222, and a next content element is selected.
As noted herein, the method 200 returns to the step 222 only a selected maximum number of times. In a preferred embodiment, this selected maximum number is about 15. In alternative embodiments, this selected maximum number may be different or may be adaptive in response to various factors.
If the selected maximum number of returns to the step 222 would be exceeded, the processor 110 selects the content element with the highest score, similarly to the case when that score did meet or exceed the adjusted minimum threshold. Similarly, the method 200 proceeds with the flow point 230, and that content element is distributed to the individual recipient 151.
Content Element Distribution
At a flow point 230, the system 100 has selected a particular content element for distribution to the individual recipient 151.
At a step 231, the processor 110 reads the selected content element into the memory 120 from the mass storage 130 (if the selected content element is not already in the memory 120).
At a step 232, the processor 110 distributes the selected content element from the memory 120, using the communication path 140, to the individual recipient 151.
At a flow point 240, the system 100 has distributed the selected content element to the individual recipient 151, and is ready to distribute further personalized content elements. The method 200 proceeds with the flow point 230.
Although preferred embodiments are disclosed herein, many variations are possible which remain within the concept, scope, and spirit of the invention, and these variations would become clear to those skilled in the art after perusal of this application.
Patent | Priority | Assignee | Title |
10171624, | Apr 24 2000 | TIVO CORPORATION | Management of pre-loaded content |
10242006, | Dec 18 2013 | GOOGLE LLC | Identifying and/or recommending relevant media content |
10609451, | Apr 24 2000 | TIVO CORPORATION | Method and system for automatic insertion of interactive TV triggers into a broadcast data stream |
10735805, | Aug 25 2011 | Comcast Cable Communications, LLC | Application triggering |
10742766, | Apr 24 2000 | TIVO CORPORATION | Management of pre-loaded content |
11076205, | Mar 07 2014 | Comcast Cable Communications, LLC | Retrieving supplemental content |
11297382, | Aug 25 2011 | Comcast Cable Communications, LLC | Application triggering |
11665394, | Mar 13 2013 | Comcast Cable Communications, LLC | Selective interactivity |
11736778, | Mar 07 2014 | Comcast Cable Communications, LLC | Retrieving supplemental content |
11877026, | Mar 13 2013 | Comcast Cable Communications, LLC | Selective interactivity |
11968419, | Aug 25 2011 | Comcast Cable Communications, LLC | Application triggering |
12069348, | Mar 07 2014 | Comcast Cable Communications, LLC | Retrieving supplemental content |
8196168, | Dec 10 2003 | Time Warner, Inc | Method and apparatus for exchanging preferences for replaying a program on a personal video recorder |
9471671, | Dec 18 2013 | GOOGLE LLC | Identifying and/or recommending relevant media content |
9699265, | Apr 24 2000 | TIVO CORPORATION | Method and system for transforming content for execution on multiple platforms |
9788058, | Apr 24 2000 | ADEIA MEDIA HOLDINGS LLC | Method and system for automatic insertion of interactive TV triggers into a broadcast data stream |
9888292, | Apr 24 2000 | TIVO CORPORATION | Method and system to provide interactivity using an interactive channel bug |
Patent | Priority | Assignee | Title |
5721827, | Oct 02 1996 | PERSONAL AUDIO LLC | System for electrically distributing personalized information |
5920702, | Jul 19 1994 | Sarnoff Corporation | Method of striping a data stream onto subsets of storage devices in a multiple user data distribution system |
5973722, | Sep 16 1996 | Rockwell Collins, Inc | Combined digital audio/video on demand and broadcast distribution system |
5996014, | Oct 30 1996 | Kabushiki Kaisha Toshiba | Distribution multimedia server system using shared disk arrays connected in a chain and having two ports each that are striped with digitalized video data |
6005597, | Oct 27 1997 | Disney Enterprises, Inc. | Method and apparatus for program selection |
6014701, | Jul 03 1997 | Microsoft Technology Licensing, LLC | Selecting a cost-effective bandwidth for transmitting information to an end user in a computer network |
6041239, | Jul 18 1997 | Motorola, Inc | Method and apparatus for distributing offered load in a wireless communications system |
6097720, | Apr 07 1998 | Hewlett Packard Enterprise Development LP | Enabling multicast distribution efficiencies in a dialup access environment |
6119163, | Jul 06 1998 | Two-Way Media Ltd | Multicasting method and apparatus |
6122658, | Jul 03 1997 | Microsoft Technology Licensing, LLC | Custom localized information in a networked server for display to an end user |
6253375, | Jan 13 1997 | Comcast IP Holdings I, LLC | System for interactively distributing information services |
6345293, | Jul 03 1997 | Microsoft Technology Licensing, LLC | Personalized information for an end user transmitted over a computer network |
6363383, | Dec 26 1997 | Red Hat, Inc | Information filtering for selectively limiting access |
6530083, | Jun 19 1998 | Gateway, Inc | System for personalized settings |
6687703, | Dec 26 1997 | Red Hat, Inc | Information filtering system and information filtering method |
7096486, | Jun 26 1998 | MAXELL, LTD | TV program selection support system |
7162487, | Dec 26 1997 | Red Hat, Inc | Information filtering system and information filtering method |
20070174866, |
Executed on | Assignor | Assignee | Conveyance | Frame | Reel | Doc |
Jun 24 1998 | TERRAFLEX DATA SYSTEMS INCORPORATED | SPINNER NETWORKS, INC | CHANGE OF NAME SEE DOCUMENT FOR DETAILS | 009574 | /0482 | |
Jun 26 1998 | AOL LLC, a Delaware Limited Liability Company | (assignment on the face of the patent) | / | |||
Sep 25 1998 | BILL, DAVID | SPINNER NETWORKS, INC | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 009550 | /0261 | |
May 28 1999 | ADAMS ACQUISITION SUB, INC A DELAWARE CORPORATION | SPINNER NETWORKS, INC A CALIFORNIA CORPORATION | MERGER SEE DOCUMENT FOR DETAILS | 020611 | /0319 | |
Apr 03 2006 | SPINNER NETWORKS INCORPORATED | AOL LLC, A DELAWARE LIMITED LIABILITY COMPANY FORMERLY KNOWN AS AMERICA ONLINE, INC | REORGANIZATION | 020621 | /0465 | |
Apr 03 2006 | ADAMS ACQUISITION SUB, INC | AOL LLC, A DELAWARE LIMITED LIABILITY COMPANY FORMERLY KNOWN AS AMERICA ONLINE, INC | REORGANIZATION | 020621 | /0465 | |
Apr 03 2006 | AMERICA ONLINE, INC | AOL LLC, A DELAWARE LIMITED LIABILITY COMPANY FORMERLY KNOWN AS AMERICA ONLINE, INC | REORGANIZATION | 020621 | /0465 | |
Dec 04 2009 | AOL LLC | AOL Inc | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 023723 | /0645 | |
Dec 09 2009 | YEDDA, INC | BANK OF AMERICAN, N A AS COLLATERAL AGENT | SECURITY AGREEMENT | 023649 | /0061 | |
Dec 09 2009 | TRUVEO, INC | BANK OF AMERICAN, N A AS COLLATERAL AGENT | SECURITY AGREEMENT | 023649 | /0061 | |
Dec 09 2009 | Tacoda LLC | BANK OF AMERICAN, N A AS COLLATERAL AGENT | SECURITY AGREEMENT | 023649 | /0061 | |
Dec 09 2009 | SPHERE SOURCE, INC | BANK OF AMERICAN, N A AS COLLATERAL AGENT | SECURITY AGREEMENT | 023649 | /0061 | |
Dec 09 2009 | AOL Inc | BANK OF AMERICAN, N A AS COLLATERAL AGENT | SECURITY AGREEMENT | 023649 | /0061 | |
Dec 09 2009 | AOL ADVERTISING INC | BANK OF AMERICAN, N A AS COLLATERAL AGENT | SECURITY AGREEMENT | 023649 | /0061 | |
Dec 09 2009 | BEBO, INC | BANK OF AMERICAN, N A AS COLLATERAL AGENT | SECURITY AGREEMENT | 023649 | /0061 | |
Dec 09 2009 | ICQ LLC | BANK OF AMERICAN, N A AS COLLATERAL AGENT | SECURITY AGREEMENT | 023649 | /0061 | |
Dec 09 2009 | GOING, INC | BANK OF AMERICAN, N A AS COLLATERAL AGENT | SECURITY AGREEMENT | 023649 | /0061 | |
Dec 09 2009 | Lightningcast LLC | BANK OF AMERICAN, N A AS COLLATERAL AGENT | SECURITY AGREEMENT | 023649 | /0061 | |
Dec 09 2009 | MAPQUEST, INC | BANK OF AMERICAN, N A AS COLLATERAL AGENT | SECURITY AGREEMENT | 023649 | /0061 | |
Dec 09 2009 | Netscape Communications Corporation | BANK OF AMERICAN, N A AS COLLATERAL AGENT | SECURITY AGREEMENT | 023649 | /0061 | |
Dec 09 2009 | Quigo Technologies LLC | BANK OF AMERICAN, N A AS COLLATERAL AGENT | SECURITY AGREEMENT | 023649 | /0061 | |
Sep 30 2010 | BANK OF AMERICA, N A | Lightningcast LLC | TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS | 025323 | /0416 | |
Sep 30 2010 | BANK OF AMERICA, N A | YEDDA, INC | TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS | 025323 | /0416 | |
Sep 30 2010 | BANK OF AMERICA, N A | TRUVEO, INC | TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS | 025323 | /0416 | |
Sep 30 2010 | BANK OF AMERICA, N A | Tacoda LLC | TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS | 025323 | /0416 | |
Sep 30 2010 | BANK OF AMERICA, N A | AOL Inc | TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS | 025323 | /0416 | |
Sep 30 2010 | BANK OF AMERICA, N A | AOL ADVERTISING INC | TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS | 025323 | /0416 | |
Sep 30 2010 | BANK OF AMERICA, N A | GOING INC | TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS | 025323 | /0416 | |
Sep 30 2010 | BANK OF AMERICA, N A | MAPQUEST, INC | TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS | 025323 | /0416 | |
Sep 30 2010 | BANK OF AMERICA, N A | Quigo Technologies LLC | TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS | 025323 | /0416 | |
Sep 30 2010 | BANK OF AMERICA, N A | SPHERE SOURCE, INC | TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS | 025323 | /0416 | |
Sep 30 2010 | BANK OF AMERICA, N A | Netscape Communications Corporation | TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS | 025323 | /0416 | |
Jul 01 2013 | AOL Inc | JPMORGAN CHASE BANK, N A , AS ADMINISTRATIVE AGENT | SECURITY AGREEMENT | 030936 | /0011 | |
Jul 01 2013 | PICTELA, INC | JPMORGAN CHASE BANK, N A , AS ADMINISTRATIVE AGENT | SECURITY AGREEMENT | 030936 | /0011 | |
Jul 01 2013 | MAPQUEST, INC | JPMORGAN CHASE BANK, N A , AS ADMINISTRATIVE AGENT | SECURITY AGREEMENT | 030936 | /0011 | |
Jul 01 2013 | BUYSIGHT, INC | JPMORGAN CHASE BANK, N A , AS ADMINISTRATIVE AGENT | SECURITY AGREEMENT | 030936 | /0011 | |
Jul 01 2013 | AOL ADVERTISING INC | JPMORGAN CHASE BANK, N A , AS ADMINISTRATIVE AGENT | SECURITY AGREEMENT | 030936 | /0011 | |
Jun 23 2015 | JPMORGAN CHASE BANK, N A | AOL Inc | RELEASE OF SECURITY INTEREST IN PATENT RIGHTS -RELEASE OF 030936 0011 | 036042 | /0053 | |
Jun 23 2015 | JPMORGAN CHASE BANK, N A | AOL ADVERTISING INC | RELEASE OF SECURITY INTEREST IN PATENT RIGHTS -RELEASE OF 030936 0011 | 036042 | /0053 | |
Jun 23 2015 | JPMORGAN CHASE BANK, N A | PICTELA, INC | RELEASE OF SECURITY INTEREST IN PATENT RIGHTS -RELEASE OF 030936 0011 | 036042 | /0053 | |
Jun 23 2015 | JPMORGAN CHASE BANK, N A | BUYSIGHT, INC | RELEASE OF SECURITY INTEREST IN PATENT RIGHTS -RELEASE OF 030936 0011 | 036042 | /0053 | |
Jun 23 2015 | JPMORGAN CHASE BANK, N A | MAPQUEST, INC | RELEASE OF SECURITY INTEREST IN PATENT RIGHTS -RELEASE OF 030936 0011 | 036042 | /0053 | |
Jun 12 2017 | AOL Inc | OATH INC | CHANGE OF NAME SEE DOCUMENT FOR DETAILS | 043672 | /0369 | |
Nov 02 2021 | VERIZON MEDIA INC | Yahoo Ad Tech LLC | CHANGE OF NAME SEE DOCUMENT FOR DETAILS | 059471 | /0514 |
Date | Maintenance Fee Events |
Apr 07 2010 | ASPN: Payor Number Assigned. |
Nov 30 2011 | M2551: Payment of Maintenance Fee, 4th Yr, Small Entity. |
Feb 12 2016 | REM: Maintenance Fee Reminder Mailed. |
Apr 07 2016 | M1559: Payment of Maintenance Fee under 1.28(c). |
May 02 2016 | STOL: Pat Hldr no Longer Claims Small Ent Stat |
May 04 2016 | M1552: Payment of Maintenance Fee, 8th Year, Large Entity. |
May 04 2016 | M1555: 7.5 yr surcharge - late pmt w/in 6 mo, Large Entity. |
Feb 17 2020 | REM: Maintenance Fee Reminder Mailed. |
Aug 03 2020 | EXP: Patent Expired for Failure to Pay Maintenance Fees. |
Date | Maintenance Schedule |
Jul 01 2011 | 4 years fee payment window open |
Jan 01 2012 | 6 months grace period start (w surcharge) |
Jul 01 2012 | patent expiry (for year 4) |
Jul 01 2014 | 2 years to revive unintentionally abandoned end. (for year 4) |
Jul 01 2015 | 8 years fee payment window open |
Jan 01 2016 | 6 months grace period start (w surcharge) |
Jul 01 2016 | patent expiry (for year 8) |
Jul 01 2018 | 2 years to revive unintentionally abandoned end. (for year 8) |
Jul 01 2019 | 12 years fee payment window open |
Jan 01 2020 | 6 months grace period start (w surcharge) |
Jul 01 2020 | patent expiry (for year 12) |
Jul 01 2022 | 2 years to revive unintentionally abandoned end. (for year 12) |