|
|
|
| United States Patent | 5616876 |
| Link to this page | http://www.wikipatents.com/5616876.html |
| Inventor(s) | Cluts; Jonathan C. (Redmond, WA) |
| Abstract | An interactive network provides music to subscribers. A "more like"
function allows a subscriber to use a seed song to identify other songs
that are similar to the seed song, and to add the new songs to the current
playlist. The similarity between songs is based on the subjective content
of the songs, as reflected in style tables prepared by editors. The
subscriber may control the closeness of the match by adjusting a style
slider provided by the user interface. A style equalizer employs eight
faders that indicate the predominant styles of the songs in the playlist.
A subscriber may use the style equalizer to see what types of songs are
included in the playlist, and to adjust the mix of songs that are played
from the playlist. |
|
|
|
Title Information  |
|
|
|
|
|
Drawing from US Patent 5616876 |
|
|
System and methods for selecting music on the basis of subjective content |
|
|
|
|
|
| Publication Date |
April 1, 1997 |
|
|
|
|
|
| Filing Date |
April 19, 1995 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Title Information  |
|
|
References  |
|
|
| *references marked with an asterisk below are user-added references |
|
U.S. References |
|
|
|
|
|
|
U.S. References |
|
|
Foreign References |
|
|
|
|
|
|
Foreign References |
|
|
Other References |
|
|
|
|
|
|
Other References |
|
|
|
|
|
References  |
|
|
|
|
|
| Market Size |
|
Estimate the gross annual revenues of the relevant market
sector:
|
| | |
| |
|
|
| Market Share |
|
Estimate the percentage of the relevant market sector this invention will capture:
|
| | |
| |
|
|
| Reasonable Royalty |
|
What percentage of gross sales should the inventor or assignee be paid?
|
| | |
| |
|
|
|
Public's "Guesstimation" of Royalty Value
|
| Market Size | N/A | [No votes] | | x | Market Share | N/A | [No votes] | | x | Reasonable Royalty | N/A | [No votes] |
| | N/A | |
| |
|
|
|
|
|
|
|
|
|
|
|
|
Market Review  |
|
|
Technical Review  |
|
|
Claims  |
|
|
What is claimed is:
1. In an interactive media distribution system including a media server, a distribution network, an output device and an input device, a method for selecting programming
information items from said media server comprising the steps of:
storing on said server a plurality of programming information items and editorial data associated with said programming information items;
playing, in response to a first input signal from said input device, an initial programming information item from said plurality of programming information items;
creating, in response to a second input signal from said input device, a list of proposed new programming information items on the basis of said editorial data associated with said initial programming information item and said plurality of
programming information items;
presenting on said output device said list of said proposed new programming information items; and
adding, in response to a third input signal from said input device, said proposed new programming information items to a playlist.
2. In an interactive media distribution system including a media server, a distribution network, an output device and an input device, a method for selecting programming information items as recited in claim 1, wherein said editorial data
comprises subjective content and weighting information associated with each of said programming information items, and wherein creating a list of proposed new programming information items comprises the steps of:
retrieving said editorial data associated with said initial programming information item;
identifying other programming information items having similar editorial data; and
selecting a predetermined number of said other programming information items having similar editorial data.
3. In an interactive media distribution system including a media server, a distribution network, an output device and an input device, a method for selecting programming information items as recited in claim 1, wherein said editorial data
comprises subjective content and weighting information associated with the author of each of said programming information items, and wherein creating a list of proposed new programming information items comprises the steps of:
identifying the author of said initial programming information item;
retrieving the editorial data associated with said author;
identifying other authors having similar editorial data; and
selecting a predetermined number of programming information items by authors having similar editorial data.
4. In an interactive media distribution system including a media server, a distribution network, an output device and an input device, a method for selecting programming information items as recited in claim 1, wherein creating a list of
proposed new programming information items comprises the steps of:
determining the setting of a matching closeness indicator; and
selecting new programming information items by comparing said editorial data associated with said initial programming information item with said editorial data associated with said plurality of programming information items, said comparison being
based on the setting of said matching closeness indicator.
5. In an interactive media distribution system including a media server, a distribution network, an output device and an input device, a method for selecting programming information items as recited in claim 1, wherein said interactive media
distribution system comprises an interactive television system.
6. In an interactive media distribution system including a media server, a distribution network, an output device and an input device, a method for selecting programming information items as recited in claim 1, wherein said server is a
continuous media server.
7. In an interactive media distribution system including a media server, a distribution network, an output device and an input device, a method for selecting programming information items as recited in claim 1, wherein said output device is a
television monitor and said input device is a remote control unit.
8. In an interactive media distribution system including a media server, a distribution network, an output device and an input device, a method for selecting programming information items as recited in claim 1, wherein said programming
information items comprise musical selections.
9. In an interactive media distribution system including a media server, a distribution network, an output device and an input device, a method for selecting programming information items as recited in claim 1, wherein said programming
information items comprise movies.
10. In an interactive media distribution system including a media server, a distribution network, an output device and an input device, a method for selecting programming information items as recited in claim 1, wherein said programming
information items comprise news stories.
11. In an interactive music distribution system including a server, a distribution network, an output device and an input device, a method for selecting musical selections from said server comprising the steps of:
storing on said server a plurality of musical selections and editorial data associated with said musical selections;
playing, in response to a first input signal from said input device, an initial musical selection from said plurality of musical selections;
creating, in response to a second input signal from said input device, a list of proposed new musical selections on the basis of said editorial data associated with said initial musical selection and said plurality of musical selections;
presenting on said output device said list of said proposed new musical selections; and
adding, in response to a third input signal from said input device, said proposed new musical selections to a playlist.
12. In an interactive music distribution system including a server, a distribution network, an output device and an input device, a method for selecting musical selections as recited in claim 11, wherein said editorial data comprises subjective
style and weighting information associated with each of said musical selections, and wherein creating a list of proposed new musical selections comprises the steps of:
retrieving said editorial data associated with said initial musical selection;
identifying other musical selections having similar editorial data; and
selecting a predetermined number of said other musical selections having similar editorial data.
13. In an interactive music distribution system including a server, a distribution network, an output device and an input device, a method for selecting musical selections as recited in claim 11, wherein said editorial data comprises subjective
style and weighting information associated with an album on which each of said musical selections was released, and wherein creating a list of proposed new musical selections comprises the steps of:
identifying the album on which said initial musical selection was released:
retrieving said editorial data associated with said album;
identifying other albums having similar editorial data; and
selecting a predetermined number of musical selections from said other albums having similar editorial data.
14. In an interactive music distribution system including a server, a distribution network, an output device and an input device, a method for selecting musical selections as recited in claim 11, wherein said editorial data comprises subjective
style and weighting information associated with the artist who performed each of said musical selections, and wherein creating a list of proposed new musical selections comprises the steps of:
identifying the artist who performed said initial musical selections;
retrieving the editorial data associated with said artist;
identifying other artists having similar editorial data; and
selecting a predetermined number of musical selections performed by artists having similar editorial data.
15. In an interactive music distribution system including a server, a distribution network, an output device and an input device, a method for selecting musical selections as recited in claim 11, wherein creating a list of proposed new musical
selections comprises the steps of:
determining the setting of a matching closeness indicator; and
selecting new musical selections by comparing said editorial data associated with said initial musical selection with said editorial data associated with said plurality of musical selections, said comparison being based on the setting of said
matching closeness indicator.
16. In an interactive music distribution system including a server, a distribution network, an output device and an input device, a method for selecting musical selections as recited in claim 11, wherein said interactive music distribution
system comprises an interactive television system.
17. In an interactive music distribution system including a server, a distribution network, an output device and an input device, a method for selecting musical selections as recited in claim 11, wherein said server is a continuous media server.
18. In an interactive music distribution system including a server, a distribution network, an output device and an input device, a method for selecting musical selections as recited in claim 11, wherein said output device is a television
monitor and said input device is a remote control unit.
19. A method for classifying and selecting programming information items having subjective content, comprising the steps of:
storing a plurality of programming information items;
storing editorial data associated with said programming information items, said editorial data including a plurality of categories and weightings associating each programming information item with said categories;
identifying, in response to a first input signal from an input device, an initial programming information item from said plurality of programming information items;
determining, in response to a second input signal from said input device, the setting of a matching closeness indicator;
determining matching categories for said initial programming entry, said matching categories including the categories whose weightings correspond to the position of the matching closeness indicator;
identifying matching programming information items, said matching programming information items including said matching categories with weightings corresponding to the setting of said matching closeness indicator; and
presenting said matching programming information items of a user.
20. A method for classifying and selecting programming information items having subjective content as recited in claim 19, wherein said matching closeness indicator is set in response to a third input signal from said input device.
21. A method for classifying and selecting programming information items having subjective content as recited in claim 19, wherein said programming information items comprise songs.
22. A method for classifying and selecting programming information items having subjective content as recited in claim 19, wherein said programming information items comprise news stories.
23. A method for classifying and selecting programming information items having subjective content as recited in claim 19, wherein said programming information items comprise movies.
24. A system for classifying and selecting programming information having subjective content, comprising:
a data storage device containing a plurality of programming information items and editorial data associated with said programming information items;
an output device for providing information to a user;
an input device for receiving input from said user; and
a computer associated with said data storage device, said computer being configured to:
play, in response to a first input signal from said input device, an initial programming information item from said plurality of programming information items,
create, in response to a second input signal from said input device, a list of proposed new programming information items on the basis of said editorial data associated with said programming information items,
present on said output device said list of proposed new programming information items, and
add, in response to a third input signal from said input device, said proposed new programming information items to a playlist.
25. A system for classifying and selecting programming information as recited in claim 24, wherein said editorial data includes a plurality of style categories and weightings associated with each of said style categories.
26. A system for classifying and selecting programming information as recited in claim 25, wherein said proposed new programming information items and said initial programming selection include at least one identical style category.
27. A system for classifying and selecting programming information as recited in claim 24, wherein said programming information items comprise songs.
28. A system for classifying and selecting programming information as recited in claim 24, wherein said programming information items comprise new stories.
29. A system for classifying and selecting programming information as recited in claim 24, wherein said programming information items comprise movies.
30. In an interactive system including a server, an output device, and an input device, a method for indicating the mix of programming information included in a playlist and adjusting the mix of programming information played from said playlist,
comprising the steps of:
loading a playlist including a plurality of programming information items;
loading editorial data associated with said plurality of programming information items;
displaying on said output device a predetermined number of indicators;
associating with each of said indicators a category from said editorial data, said indicators being positioned to indicate the portion of said plurality of programming information items corresponding to each of said categories;
adjusting, in response to an input signal from said input device, the position of at least one of said indicators;
selecting programming information items from said playlist such that the portions of said selected programming information items associated with each of said categories corresponds to the adjusted positions of said indicators; and
playing said selected programming information items on said output device.
31. In an interactive system including a server, an output device, and an input device, a method for indicating the mix of programming information included in a playlist and adjusting the mix of programming information played from said playlist
as recited in claim 30, wherein associating a category with each of said indicators comprises the steps of:
determining the predominant categories of said categories; and
assigning said predominant categories to said indicators.
32. In an interactive system including a server, an output device, and an input device, a method for indicating the mix of programming information included in a playlist and adjusting the mix of programming information played from said playlist
as recited in claim 31, wherein determining the predominant categories comprises the steps of:
identifying the categories included in said editorial data; and
determining the number of programming information items associated with each of said categories.
33. In an interactive system including a server, an output device, and an input device, a method for indicating the mix of programming information included in a playlist and adjusting the mix of programming information played from said playlist
as recited in claim 30, wherein selecting songs comprises the steps of:
determining a total number of positions associated with said indicators;
determining a number of positions associated with one of said indicators; and
dividing said number of positions by said total number of positions.
34. In an interactive system including a server, an output device, and an input device, a method for indicating the mix of programming information included in a playlist and adjusting the mix of programming information played from said playlist
as recited in claim 30, where;in said programming information items comprise songs.
35. In an interactive system including a server, an output device, and an input device, a method for indicating the mix of programming information included in a playlist and adjusting the mix of programming information played from said playlist
as recited in claim 30, wherein said programming information items comprise news stories.
36. In an interactive system including a server, an output device, and an input device, a method for indicating the mix of programming information included in a playlist and adjusting the mix of programming information played from said playlist
as recited in claim 30, wherein said programming information items comprise movies.
37. In an interactive system including a server, an output device, and an input device, a method for indicating the mix of programming information included in a playlist and adjusting the mix of programming information played from said playlist
as recited in claim 30, wherein said server comprises a desktop computer and said output device comprises a display.
38. In an interactive system including a server, an output device, and an input device, a method for indicating the mix of programming information included in a playlist and adjusting the mix of programming information played from said playlist
as recited in claim 30, wherein said input device is a remote control unit.
39. In an interactive system including a server, an output device, and an input device, a method for indicating the mix of programming information included in a playlist and adjusting the mix of programming information played from said playlist
as recited in claim 30, wherein said video output device is a television monitor.
40. In an interactive music system including a server, a video output device, an audio output device and an input device, a method for indicating the mix of songs included in a playlist and adjusting the mix of songs played from said playlist,
comprising the steps of:
loading a playlist including a plurality of songs;
loading editorial data associated with said plurality of songs;
displaying on said video output device a predetermined number of indicators;
associating with each of said indicators a category from said editorial data;
setting the position of said indicators to indicate the portion of said plurality of songs corresponding to each of said categories;
adjusting, in response to an input signal from said input device, the position of at least one of said indicators;
selecting songs from said playlist such that the portions of said selected songs associated with each of said categories corresponds to the adjusted positions of said indicators; and
playing said selected songs on said audio output device.
41. In an interactive music system including a server, a video output device, an audio output device and an input device, a method for indicating the mix of songs included in a playlist and adjusting the mix of songs played from said playlist as
recited in claim 40, wherein associating a category with each of said indicators comprises the steps of:
determining the predominant categories of said categories; and
assigning said predominant categories to said indicators.
42. In an interactive music system including a server, a video output device, an audio output device and an input device, a method for indicating the mix of songs included in a playlist and adjusting the mix of songs played from said playlist as
recited in claim 41, wherein determining the predominant categories comprises the steps of:
identifying the categories included in said editorial data; and
determining the number of songs associated with each of said categories.
43. In an interactive music system including a server, a video output device, an audio output device and an input device, a method for indicating the mix of songs included in a playlist and adjusting the mix of songs played from said playlist as
recited in claim 40, wherein selecting songs comprises the steps of:
determining a total number of positions associated with said indicators;
determining a number of positions associated with one of said indicators: and
dividing said number of positions by said total number of positions.
44. In an interactive music system including a server, a video output device, an audio output device and an input device, a method for indicating the mix of songs included in a playlist and adjusting the mix of songs played from said playlist as
recited in claim 40, wherein said input device is a remote control unit.
45. In an interactive music system including a server, a video output device, an audio output device and an input device, a method for indicating the mix of songs included in a playlist and adjusting the mix of songs played from said playlist as
recited in claim 40, wherein said video output device is a television monitor. |
|
|
|
|
Claims  |
|
|
Description  |
|
|
TECHNICAL FIELD
The present invention relates to systems and methods for selecting and playing audio selections, and more particularly relates to methods for selecting and playing audio selections on the basis of their subjective content.
BACKGROUND OF THE INVENTION
The expansion and improvement of cable television systems (sometimes referred to as community antenna television or CATV systems) have made it possible for cable companies to provide a variety of programming services to subscribers. These
services typically include a multitude of television channels that are viewed on the subscriber's television. Some cable companies also provide music channels that are connected to a subscriber's stereo system through a subscriber terminal.
Although CATV systems were originally designed to distribute television signals in the "downstream" direction only (i.e., from a central "headend" location to multiple subscriber locations, which is also known as the "forward" path), the advent
of pay-per-view services and of other interactive television applications has fueled the development of bidirectional or "two-way" cable systems. These two-way cable systems also provide for the transmission of signals from the subscriber locations back
to the headend via an "upstream" direction or a "reverse" path.
By upgrading conventional CATV systems to increase their bandwidth, cable service providers can use the additional channels gained by this wider bandwidth network to provide many new subscriber services. The ever-expanding deployment of fiber
optic technology supports the implementation of an "interactive network" that allows a subscriber to obtain desirable services or programming at a time and date specified by the subscriber. Indeed, it is feasible that this interactive network will have
sufficient bandwidth to supply hundreds of channels of programming information, thereby leading to an explosion of program options available to subscribers. Potential subscriber services supported by this interactive network include Movies on Demand
(MOD) or Video on Demand (VOD), interactive music channels, interactive computing, shopping, entertainment, and other related services.
An interactive network makes it possible for subscribers to have immediate access to vast selections of music. For example, record companies may provide catalogs of their music for subscribers to listen to via an interactive network. Similarly,
various publishers may compile playlists of various styles of music (e.g., Jazz, Classical, Top 40, etc.) that will be available to subscribers via an interactive network.
When music catalogs are available via an interactive network, a subscriber must have a way to select the music he or she would like to listen to. The computers that form a part of an interactive network facilitate selection by song title,
artist, or album name. As in a record store, music may also be classified and searched by style (e.g., Jazz, Classical, Top 40, etc.). Thus, in an interactive network, it will be very simple for a subscriber to select a specific song.
However, unless a subscriber is familiar with a particular artist or song title, there is no simple way to identify other music that the subscriber may enjoy. Because of the subjective nature of such a decision, there is no simple way for a
subscriber to identify additional music that is similar to a song he or she likes. This is a significant disadvantage in an environment where a large assortment of music is readily available.
When a listener browses published playlists, the playlists are typically described by a short title, such as Jazz, Classical, Top 40, Progressive Rock, etc. When a subscriber listens to such a playlist, there is no simple way for the subscriber
to get a clearer idea of the specific types of music that are included in the playlist. Similarly, there is no simple way for a subscriber to alter the mix of the songs that are played back from the playlist.
In summary, there is no simple, effective way for a subscriber to identify and select music he or she is likely to enjoy on the basis of the music's subjective content and its similarity to a song the subscriber is familiar with. Furthermore,
there is no way for a user to quickly assess the mix of music included in a playlist and to alter the mix of music played from the playlist.
Therefore, there is a need in the art for a system that allows a subscriber to pick a song he or she likes and to then identify additional songs that include similar subjective content. Likewise, there is a need in the art for a system that
allows a user to perceive the content of a playlist and alter the mix of songs played from the playlist.
SUMMARY OF THE INVENTION
The present invention satisfies the above described needs by providing systems and methods for selecting and playing music based on its subjective content.
Generally described, the present invention provides a method for selecting programming information items in an interactive media distribution system that includes a server, a distribution network, an output device and an input device. The method
includes storing on the server a plurality of programming information items and editorial data associated with the programming information items. An initial programming information items is played in response to a first input signal. In response to a
second input signal, a list of proposed new programming information items is created on the basis of the editorial data associated with the initial programming information item and the plurality of programming information items. The list of proposed new
programming information items is presented on the output device. The proposed new programming information items are then added to a playlist in response to a third input signal.
The present invention also provides a method for classifying and selecting programming information items having subjective content. A plurality of programming information items and editorial data associated with the programming information items
are stored. The editorial data includes a plurality of categories and weightings associating each programming information item with the categories. An initial programming information item is selected in response to a first input signal. The setting of
a matching closeness indicator is determined in response to a second input signal. The method determines matching categories for the initial programming entry. The matching categories include the categories whose weightings correspond to the position
of the matching closeness indicator. The method determines matching programming information items based on the initial programming information item. The matching items include the matching categories with weightings corresponding to the setting of the
matching closeness indicator. The matching items are presented to the user.
The present invention also provides a system for classifying and selecting programming information having subjective content. The system includes a data storage device containing a plurality of programming information items and editorial data
associated with the programming information items, an output device for providing information to a user, an input device for receiving input from the user, and a computer associated with the data storage device. The computer is configured to play an
initial programming information item in response to a first input signal. The computer creates a list of proposed new programming information items on the basis of the editorial data associated with the programming information items in response to a
second input signal. The list of proposed new programming information items is presented on the output device. Finally, the proposed new programming information items are added to a playlist in response to a third input signal.
In another aspect, the present invention provides a method for indicating the mix of programming information included in a playlist and adjusting the mix of programming information played from the playlist. The method includes loading a playlist
including a plurality of programming information items and loading editorial data associated with the programming information items. A predetermined number of indicators are displayed on the output device. Each of the indicators is associated with a
category from the editorial data. The indicators are positioned to indicate the portion of the plurality of programming information items corresponding to each of the categories. At least one of the indicators is adjusted in response to an input signal
from an input device. In response to the adjustment of one or more indicators, the method selects programming information items from the playlist such that the portions of the selected programming information items associated with each of the categories
corresponds to the adjusted positions of the indicators.
It is therefore an object of the present invention to provide a system for classifying and selecting information having subjective content.
It is another object of the present invention to provide a method for the context based selection of subjective material.
It is another object of the present invention to provide a method for adding items having subjective content to a group of items having similar subjective content.
It is another object of the present invention to predict, based on a listener's current choice of music, the choices from an audio content database that are most like the current choice.
It is another object of the present invention to identify other music that is similar to the music a listener is listening to.
It is another object of the present invention to identify more music that is like a current musical selection.
It is another object of the present invention to identify other movies that are similar to a movie a viewer is watching.
It is another object of the present invention to display the types of music are in a playlist.
It is another object of the present invention to allow a user to alter the mix of music that is selected and played from a playlist.
It is another object of the present invention to select various types of programming on the basis of its subjective content.
BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 illustrates an interactive network system.
FIG. 2 illustrates a set top terminal, which forms a part of the interactive network system of FIG. 1.
FIG. 3 illustrates the preferred remote control unit for use with the set top terminal of FIG. 2.
FIG. 4 is illustrates the features of the initial screen display in the preferred audio on demand system.
FIG. 5 illustrates the features of the playlist screen display in the preferred audio on demand system.
FIG. 6 illustrates a list of songs provided in response to the find button on the playlist screen display of FIG. 5.
FIG. 7 illustrates the "more like" panel provided in response to the "more" button on the playlist screen display of FIG. 5.
FIG. 8 illustrates a list of songs provided by the "more like" function.
FIG. 9 is a flow diagram illustrating the steps taken by a subscriber when using the "more like" function.
FIG. 10 is a flow diagram illustrating the "more like" function as implemented in a program module running on the preferred interactive network.
FIG. 11 illustrates the features of the "style equalizer" screen display.
FIG. 12 is a flow diagram illustrating the steps taken by a subscriber when using the "style equalizer" function.
FIG. 13 is a flow diagram illustrating the "style equalizer" function as implemented in a program module running on the preferred interactive network.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT
The preferred embodiment of the present invention is directed to systems and methods for selecting music on the basis of its subjective content, and is implemented in an interactive network system that can deliver a variety of services, including
entertainment, information, and transaction services, to consumers via an interactive broadband network. The preferred system, which is referred to as the audio on demand system, allows a subscriber to listen to songs provided by the system. The
subscriber may select songs on the basis of title, artist and album. The subscriber may also select playlists, which arc predetermined collections of songs The audio on demand system provides a "more like" function that identifies more music that is
like the subscriber's current selection. In addition, the system includes a "style equalizer" that allows a subscriber to see the predominant styles of music included in a playlist, and to adjust the mix of music played from the playlist.
Although the preferred embodiment will be generally described in the context of an interactive television system for delivering broadcast television programs, music, and related information, those skilled in the art will recognize that the
present invention also can be used to support the delivery of other forms of programming information, including radio, broadcast print, audio, games, computer software, including program modules such as application programs and operating systems, and
other combinations of audio, video and/or computer software. Accordingly, it will be understood that the terms "programming information" and "programming information items" generally include information transmitted electronically to entertain, instruct,
educate, or inform the recipient, as well as program modules for supporting these services.
Turning first to the nomenclature of the specification, the detailed description which follows is represented largely in terms of processes and symbolic representations of operations by conventional computer components, including a central
processing unit (CPU), memory storage devices for the CPU, and connected pixel-oriented display devices. These operations include the manipulation of data bits by the CPU and the maintenance of these bits within data structures resident in one or more
of the memory storage devices. Such data structures impose a physical organization upon the collection of data bits stored within computer memory and represent specific electrical or magnetic elements. These symbolic representations are the means used
by those skilled in the art of computer programming and computer construction to most effectively convey teachings and discoveries to others skilled in the art.
For the purposes of this discussion, a process is generally conceived to be a sequence of computer-executed steps leading to a desired result. These steps generally require physical manipulations of physical quantities. Usually, though not
necessarily, these quantities take the form of electrical, magnetic, or optical signals capable of being stored, transferred, combined, compared, or otherwise manipulated. It is conventional for those skilled in the art to refer to these signals as
bits, values, elements, symbols, characters, terms, numbers, records, files or the like. It should be kept in mind, however, that these and similar terms should be associated with appropriate physical quantities for computer operations, and that these
terms are merely conventional labels applied to physical quantities that exist within and during operation of the computer.
It should also be understood that manipulations within the computer are often referred to in terms such as adding, comparing, moving, etc. which are often associated with manual operations performed by a human operator. It must be understood
that no involvement of a human operator is necessary or even desirable in the present invention. The operations described herein are machine operations performed in conjunction with a human operator or user that interacts with the computer. The
machines used for performing the operation of the present invention include general purpose digital computers or other similar computing devices.
In addition, it should be understood that the programs, processes, methods, etc. described herein are not related or limited to any particular computer or apparatus. Rather, various types of general purpose machines may be used with programs
constructed in accordance with the teachings described herein. Similarly, it may prove advantageous to construct specialized apparatus to perform the method steps described herein by way of dedicated computer systems with hard-wired logic or programs
stored in nonvolatile memory, such as read only memory.
Referring now the drawings, in which like numerals represent like elements throughout the several figures, the present invention and the preferred operating environments will be described.
THE OPERATING ENVIRONMENT
A typical CATV system for the delivery of television programming to subscribers comprises three main elements: a headend, a distribution system, and subscriber drops.
The "headend" is a signal reception and processing center that collects, organizes and distributes signals. The headend receives satellite-delivered video and audio programming, over-the-air broadcast television station signals, and network
feeds delivered by terrestrial microwave and other communication systems. In addition, headends may inject local broadcast programming into the package of signals sent to subscribers, such as commercials and live programs created in a television studio.
The "distribution system" carries the signals from the headend to a number of distribution points in a community and, in turn, distributes the these signals to individual neighborhoods for delivery to subscribers. A modern distribution system
typically comprises a combination of coaxial cable and optical fibers with trunk amplifiers periodically spaced to compensate for attenuation of the signals along the line.
"Subscriber drops" are taps in the distribution system that feed individual lines into subscribers' television sets or subscriber set-top terminals, often referred to as "subscriber premises equipment" or "customer premises equipment" ("CPE").
Referring to FIG. 1, an interactive network system 10 includes a headend system 12 for delivering programming information to and receiving instructions from a consumer system 14 via a "two-way" distribution network 16. The headend system 12 is
the control center for collecting, organizing, and distributing the signals for all interactive network operations and the source for all programming information. The distribution network 16 transports signals carrying programming information and
instructions between the headend system 12 and the consumer system 14. The distribution network 16 can include a world-wide public asynchronous transfer mode (ATM) compatible network with links to the Internet, third party service providers, and other
wired and wireless communications networks. The consumer system 14 includes the equipment required for a consumer to receive programming information directly at his or her office or residence and to transmit requests and instructions to the headend
system 12.
The headend system 12 can include a set of headend servers 20, including a continuous media server (CMS) system 22 and one or more administrative servers 24, to support various network functions, and a control network 26 linking these headend
servers. The headend servers 20 can execute program modules, including service and application program software, to support the transmission of programming information and the reception of requests for such programming information.
It will be appreciated that the headend servers 20 are not necessarily located in one physical location, but can be linked by wired and/or wireless communications paths supplied by the control network. The control network 26 can be a local area
network, a wide area network, or a combination of both types of networks. For the preferred embodiment, the control network 26 is implemented as an ATM-based network for routing digital data between the headend servers 20 and the distribution network
16.
The CMS system 22 is a server-based file storage and delivery system that can manage on-demand access to stored digitized data, such as audio and video. On-demand access of digitized data is a particularly desirable characteristic of the CMS
system 22 because it allows the interactive network to support the on-demand delivery of various types of programming, such as music, movies, etc. The preferred CMS system 22 can supply digital data streams at a constant rate to numerous consumers of the
consumer system 14.
The CMS system 22 includes one or more storage servers 28, which operate to retrieve and to transmit the digitized data as required by clients of the CMS system, i.e., the equipment of the consumer system 14. The digitized data, which typically
comprises programming information, is maintained on one or more memory storage devices 30 connected to the storage servers 28. Each memory storage device 30 can be implemented as a SCSI hard disk drive, an optical storage system, or any other similar
mass storage media. By spreading the data management operations across a group of storage servers and memory storage devices, user load can be balanced with the limited disk, network, and input/output (I/O) resources of the headend system. This also
supports fault tolerance by replicating digitized data within the CMS system 22 to survive the failure of a storage server or a memory storage device.
To support the tasks of updating or revising programming information stored on a memory storage device 30 of the CMS system 22, a computer workstation 32 and a remote server 34 can be connected to the control network 26 via a communications link
36. This communications link allows a program distributor or supplier, which typically operates at a location remote from the CMS system 22, to transmit programming information for storage by one or more of the memory storage devices 30 and eventual
distribution to consumers via the headend system 12. The communications link 36 can be implemented by either a wireless or wired communications system. For example, the communications link 36 can be constructed as a microwave link or as a conventional
telephone link.
The administrative servers 24 of the headend system 12 can support a variety of services and applications associated with the interactive network system 10, including network security, monitoring, object storage, financial transactions, data
management, and other administrative functions. The administrative servers 24 also handle the interactive service requests or instructions transmitted via the consumer system 14 by consumers. For an application involving a large base of consumers, an
administrative server 24 is preferably dedicated to a particular service or function. For example, one or more servers can handle all consumer authorization requirements, whereas other servers can handle network management services, and so forth. These
administrative servers preferably support the Simple Network Management Protocol (SNMP) to enable end-to-end network administration and monitoring.
The headend system 12 also can support the distribution of programming information and other services via an analog distribution system 38 that is coupled to the distribution network 16. This distribution of analog formatted signals can be
handled by a separate headend system associated with a community antenna television (CATV) system. The headend of the CATV system typically supports satellite-delivered video and audio programs, over-the-air broadcast television station signals, and
broadcast network signal feeds delivered by microwave and other communications systems.
The distribution network 16 is a two-way communications network that connects the headend system 12 to various community distribution points of the consumer system 14 and, in turn, to individual neighborhood nodes for delivery to consumers of
services supplied by the interactive network system 10. The distribution network 16 comprises one or more downstream channels supporting transmissions from the headend system to the consumer system and one or more upstream channels for carrying
transmissions from the consumer system to the headend system. This bidirectional communications network supports delivery of programming information via the headend system 12 to each consumer and the delivery of requests for programming information by a
consumer to the headend system 12. The distribution network 16 can be implemented by a microwave distribution system, a telephone system, coaxial cables, optical fibers, or any combination of these delivery systems. However, the preferred distribution
network is implemented by a combination of hybrid optical fiber/coaxial cable (HFC) and optical fiber-to-the-curb (FTTC).
Those persons skilled in the art will appreciate that the programming information delivered over the distribution network 16 typically includes both video and audio signals. Programming information can be delivered in digital format, analog
format, or a combination of both analog and digital formats. For the preferred embodiment, music-related programming is delivered as a stream of digital audio and video signals in a compressed digital data stream, which may include conventional MPEG-1
and MPEG-2 compressed video streams. Likewise, requests or instructions issued by consumers via the consumer system 14 are preferably formatted as digital signals.
The CMS system 22 and the administrative servers 24 are connected to the distribution network 16 via an ATM switching system 40. The ATM switching system 40 supports network switching requirements for delivery by the headend system 12 of digital
data streams carrying multimedia content and the handling of interactive service requests from consumers.
Because the interactive network 10 is a two-way communications system, the ATM switching system 40 preferably connects to the distribution network 16 via modulation/demodulation devices. The downstream channels of the distribution network 16 can
be connected to the ATM switching system 40 via digital modulators 42, whereas the reverse channels of the distribution network 16 are connected to reverse channel receivers 44.
Each consumer within a neighborhood node of the consumer system 14 is connected to the distribution network 16 via a subscriber drop cable 46, which is typically part of a local cable network administered by a multiple service operator (MSO).
The drop cable 46 is typically a coaxial cable or optical fiber connected to a set-top terminal 48 or set-top box located at the consumer's location. This combination of the drop cable 46 and the set-top terminal 48 operates as a "tap" into the
distribution network 16, and allows the consumer to (1) receive program modules and programming information distributed by the headend system 12 and to (2) transmit requests or instructions to the headend system 12. For example, the set-top terminal 48
can accept and convert signals carrying programming information to a format compatible for presentation by an output device 50, such as a television or a computer system. This output device 50, | | |