Referring now to the drawings wherein like elements are numbered alike in the several FIGURES:
The detailed description explains the exemplary embodiments, together with advantages and features, by way of example with reference to the drawings.
Audio-on-demand server 202 is shown as including first and second audio media storage drives 111 and 112 and processing mechanism 110 for purposes of illustration. One or more of first audio media storage drive 111, second audio media storage drives 112, or processing mechanism 110 could be external to audio-on-demand server 202. Optionally, processing mechanism 110 may be implemented using a plurality of processors, one or more of which is internal to audio-on-demand server 202, and one or more of which is external to audio-on-demand server 202. A plurality of separate storage drives may be interconnected or networked to implement first audio media storage drive 111, or the first and second audio media storage drives 111, 112 may be combined into a single integrated audio media storage drive. Moreover, use of two audio media storage drives is not required, as any number of one or more audio media storage drives can be employed. First and second audio media storage drives 111, 112 are each illustratively implemented using one or more computer hard drives, optical storage drives, magnetic tape drives, semiconductor memory, nanotechnology-based memory devices, or various combinations thereof.
Processing mechanism 110 accesses first audio media storage drive 111 to generate a first audio signal 115 including a first item of audio content. Processing mechanism 110 accesses second audio media storage drive 112 to generate a second audio signal 116 including a second item of audio content.
A radio receiver 113 receives one or more terrestrial radio broadcasts, satellite radio broadcasts, or both. The one or more radio broadcasts are fed to respective inputs of an analog to digital converter 114, which converts each radio broadcast into a corresponding digital program stream. Radio receiver 113 and analog to digital converter 114 could, but need not, be combined into a single element. In the present example, analog to digital converter 114 provides a third audio signal 117 that includes a digital program stream. Optionally, the digital program stream could be stored in a audio media storage drive for delayed broadcast or, as shown in
Network 200 is capable of accessing the Internet 133 by means of an audio stream server 135. Audio stream server 135 accesses one or more audio streams from one or more Internet web sites that provide live radio broadcasts, audio programming on demand, or both. In the example of
Respective first, second, third and fourth audio signals 115, 116, 117 and 118 each include a corresponding sequence of packets in a digital format compatible with internet protocol (IP) networking. In other words, first, second, third, and fourth audio signals 115, 116, 117 and 118 may each represent a sequence of packets. Illustratively, the sequence of packets represented by first, second, third, and fourth audio signals 115, 116, 117, and 118 are each in a packetized format that complies with MPEG-4 standard H.264. Optionally, at least one of first, second, third, and fourth audio signals 115, 116, 117, and 118 also includes video information in the form of still or moving graphics, still or moving images, or both.
Processing mechanism 110 is capable of accepting input from an input mechanism 193. Input mechanism 193 could, but need not, be implemented using a modem, data receiver, computer keyboard, touch screen, pushbuttons, one or more switches, voice-activated software, personal computer, computer server, mainframe computer, laptop computer, computer console, or various combinations thereof. In practice, input mechanism 193 could, but need not, be combined with processing mechanism 110 such that input mechanism 193 and processing mechanism 110 are implemented by a single element such as a server, personal computer, or other device.
Input mechanism 193 is responsive to input from a system operator to control audio-on-demand server 202 and audio stream server 135. This operator input may provide one or more rules for controlling audio-on-demand server 202 and audio stream server 135 to reflect one or more operator policies.
Input mechanism 193 is responsive to a listener input received from an electronic program guide application 171 (to be described in greater detail hereinafter) and transmitted over routers/switches 132, 131, 130 via network interface equipment 160. This listener input represents a request for on-demand listening of an item of audio content selected using electronic program guide application 171. The listener input also specifies one of immediate listening, delayed listening, or deferred listening (to be described in greater detail hereinafter with reference to
By way of example, a listener selects immediate listening of a first item of audio content using electronic program guide application 171. This selection is received by network interface equipment 160, routers 132, 131, 130, input mechanism 193, and processing mechanism 110. In response to receipt of the listener selection, processing mechanism 110 commands audio-on-demand server 202 to access the first item of audio content which is stored on first audio media storage drive 111. Audio-on-demand server 202 generates a first multicast program stream in the form of first audio signal 115. First audio signal 115 includes the first item of audio content.
Illustratively, in response to additional listener selections received at input mechanism 193, processing mechanism 110 may command audio-on-demand server 202 to access a second item of audio content stored on second audio media storage drive 112 to generate a second multicast program stream in the form of second audio signal 116 including the second item of audio content. In this example, the first and second items of audio content are audio-on-demand selections, voice programs, or various combinations thereof. Similarly, in response to additional listener selections received at input mechanism 193, processing mechanism 110 may command analog to digital converter 114 to access a third item of audio content from radio receiver 113 in the form of third audio signal 117 including the third item of audio content. The third item of audio content is a terrestrial or satellite radio broadcast station.
In response to another listener selection received at input mechanism 193, processing mechanism 110 commands audio stream server 134 to access a fourth item of audio content from the Internet 133 and to generate a fourth audio signal 118 including the fourth item of audio content. The fourth item of audio content includes an Internet broadcast station. Accordingly, first, second, third and fourth audiovisual signals 115, 116, 117, and 118m each representing streams of individual packets corresponding to respective first, second, and third multicast program streams pass through a series of routers/switches 130, 131, 132 until one or more of the streams reaches a listener's location. First, second, third and fourth audio signals 115, 116, 117 and 118 are described only for purposes of illustration, it being understood that three signals are not required, as any number of one or more audio signals may be provided, and these one or more signals may optionally include video information in addition to audio information.
At a listener's location, network interface equipment 160 receives one of the first, second, third and fourth multicast program streams from router/switch 132 on network 200. Network interface equipment 160 is operatively coupled to a set top box 170 using a wireless or wireline link and, illustratively, using an Ethernet link. Set top box 170 is operatively coupled to a media presentation device 180, such as a radio, television set, audiovisual receiver, or the like using a wireless or wireline link and, illustratively, using coaxial cable carrying an RF-modulated signal. Alternatively or additionally, set top box 170 is coupled to media presentation device using a video connection such as S-Video or FireWire.
Set top box 170 is equipped with a processing mechanism, such as a microprocessor or microcontroller and associated semiconductor memory, for executing electronic program guide application 171. Electronic program guide application 171 causes media presentation device 180 to display an electronic program guide in the form of a list or menu of one or more items of audio content available for listening on demand. Optionally, electronic program guide 171 may list one or more audio channels in addition to listing programs that are available for listening on demand, wherein the one or more audio channels offer audio programs associated with one or more corresponding scheduled broadcast times or one or more live broadcast channels. Set top box 170 includes a channel/program selection mechanism capable of accepting a listener input identifying one or more items of audio content for listening on demand. This channel/program selection mechanism could, but need not, operate in conjunction with electronic program guide application 171, for example using optional remote control 173 or a touch-sensitive screen on media presentation device 180 to select a displayed item of audio content or audio channel from the displayed electronic program guide. Alternatively or additionally, set top box 170 may include an item/channel/program selection mechanism such as a rotary switch and/or an item/channel/program selection mechanism operated using an optional remote control 173. Set top box 170 may, but need not, include circuitry for converting digital packets representing program streams received from network interface equipment 160 into analog or digital signals capable of being played back in audible form by media presentation device 180.
If a listener requests deferred listening to an item of audio content (to be described in greater detail with reference to
Network interface equipment 160 receives a stream of internet protocol (IP) multicast or unicast packets representing a program stream for an item of audio content. The item of audio content may include any of an audio-on-demand selection, a live audio broadcast, a stored audio broadcast, or various combinations thereof. Unicast refers to communication between a single sender and a single receiver, whereas multicast refers to communication between a single sender and multiple receivers. To avoid sending a multiplicity of different program streams simultaneously over network 200, each respective program stream uses a corresponding IP multicast identifier specific to that program stream. Using Internet Group Management Protocol (IGMP), network interface equipment 160 communicates with network 200 to identify which item of audio content the user desires to listen to, or which item of audio content the listener is currently listening to. For example, when a listener enters an input into the channel/program selection mechanism on set top box 170, illustratively using an optional remote control 173 to select immediate listening of a specified on-demand item of audio content, set top box 170 transmits an IGMP join message 185 to the network 200.
IGMP join message 185 includes an item/channel/program identifier that identifies an item of audio content that the listener desires to listen to, or an item of audio content that the listener is currently listening to. IGMP join message 185 is sent in an “upstream” direction through routers/switches 132, 131, 130 in an attempt to locate a program stream on network 200 corresponding to the item/channel/program identifier. When the appropriate program stream is located, packets bearing a specified multicast identifier 190 for this stream are transmitted in a “downstream” direction from network 200 to network interface equipment 160 and set top box 170. Set top box 170 then relays the program stream to media presentation device 180, such as a program stream representing first audio signal 115 and carrying a first item of audio content for listening on demand. Thereafter, when the user enters an input into the item/channel/program selection mechanism on set top box 170 indicating that he or she wishes immediate listening of a second item of audio content available for listening on demand, set top box 170 transmits an IGMP leave message 195 to network 200 identifying the first item of audio content, and transmits an IGMP join message 185 to the network 200 identifying the second item of audio content.
As understood by one of ordinary skill in the relevant art, if a program is intended for one and only one subscriber, multicasting is replaced by unicasting. Both multicasting and unicasting fall within the scope of the instant teaching. An example of a unicast program would be an on-demand item of audio content requested for immediate listening by only one listener, which by definition is intended for one and only one user destination.
After at least one of blocks 203, 204 and 205 have been executed, the process advances to blocks 206 and 207. Blocks 206 and 207 can be performed simultaneously or in any order. At block 206, a listener's selection is received of an item of audio content for listening on demand. Illustratively, this selection can be received as an item selected from a list or menu, or by the listener clicking on or touching a program related graphic, banner, or photographic image. At block 207, a listener input is received specifying one of immediate listening, delayed listening, or deferred listening to an item of audio content available for listening on demand. Optionally, blocks 206 and 207 may be combined into a single step as, for example, if a first menu or list is provided for items of audio content that are available for immediate listening, a second menu or list is provided for items of audio content that are available for delayed listening, and a third menu or list is provided for items of audio content that are available for deferred listening. As one exemplary alternative to using separate menus or lists, a single menu or list may be employed where items that are available for immediate listening are shown in a first color or associated with a first graphical icon (or both), with items that are available for deferred listening being shown using a second color or second graphical icon or both, and items that are available for delayed listening being shown using a third color or a third graphical icon or both.
A test is performed at block 208 to ascertain whether or not the listener input specifies immediate listening. If so, the process advances to block 209 (
The negative branch from block 208 (
The affirmative branch from block 214 leads to block 215 where a plurality of packets are received from the network as a program stream, each of the packets bearing a multicast identifier corresponding to the selected item of audio content commencing prior to expiration of the predetermined time interval. The process advances to block 217 where, prior to commencement of the selected item of audio content, pre-program material is streamed to the media presentation device. The selected item of audio content is then streamed to the media presentation device wherein the streaming commences prior to expiration of the predetermined time interval (block 219). Optionally, a subscription service may be employed to control playback of the selected item of audio content by providing one or more listening features including rewind, skip forward, skip back, or pause (block 221). Optionally, the selected item of audio content includes video information in the form of still or moving graphics, still or moving images, or both.
The negative branch from block 213 (
At block 227, the selected item of audio content is stored in local storage device 181 (
Next, at block 231 (
At block 305 (
The detailed description explains various exemplary embodiments, together with advantages and features, by way of example with reference to the drawings. As described above, the exemplary embodiments can be in the form of computer-implemented processes and apparatuses for practicing those processes. The exemplary embodiments can also be in the form of computer program code containing instructions embodied in tangible media, such as floppy diskettes, CD ROMs, hard drives, or any other computer-readable storage medium, wherein, when the computer program code is loaded into and executed by a computer, the computer becomes an apparatus for practicing the exemplary embodiments. The exemplary embodiments can also be in the form of computer program code, for example, whether stored in a storage medium, loaded into and/or executed by a computer, or transmitted over some transmission medium, loaded into and/or executed by a computer, or transmitted over some transmission medium, such as over electrical wiring or cabling, through fiber optics, or via electromagnetic radiation, wherein, when the computer program code is loaded into an executed by a computer, the computer becomes an apparatus for practicing the exemplary embodiments. When implemented on a general-purpose microprocessor, the computer program code segments configure the microprocessor to create specific logic circuits.
While the invention has been described with reference to exemplary embodiments, it will be understood by those skilled in the art that various changes may be made and equivalents may be substituted for elements thereof without departing from the scope of the invention. In addition, many modifications may be made to adapt a particular situation or material to the teachings of the invention without departing from the essential scope thereof. Therefore, it is intended that the invention not be limited to the particular embodiments disclosed for carrying out this invention, but that the invention will include all embodiments falling within the scope of the claims. Moreover, the use of the terms first, second, etc. do not denote any order or importance, but rather the terms first, second, etc. are used to distinguish one element from another. Furthermore, the use of the terms a, an, etc. do not denote a limitation of quantity, but rather denote the presence of at least one of the referenced item.
This application is based upon and claims priority under 35 USC §119(e) to Provisional Patent Application Ser. No. 60/711,884 filed on Aug. 26, 2005, the disclosure of which is incorporated herein in its entirety.
Number | Date | Country | |
---|---|---|---|
60711884 | Aug 2005 | US |