A media system 50 according to the present disclosure is shown in
Media content in this context can be, for example, digitally formatted video, audio and pictures, among other things and is supplied for download by one or more remote sources such as digital media content provider 66 and which may be stored as one or more media files. Using media system 50, a user can purchase and download media content such as a video or audio, save the video or audio on media unit 52 and play the video or audio on any compatible media demodulation device 62, such as a television, at any time while remaining in a single room 58 in front of a single media demodulation device. Compatibility, in this instance means that the media demodulation device can reproduce or play the media content, for instance televisions are compatible with video and audio content, while radios are typically not compatible with video content. The digital media content providers 66 may furnish lists of media content that is available for download.
Remote controls 56 are used by a user to control media system 50 to download media content by interacting with one or more menus 68 displayed on any given one or more media demodulation device 62 and with media unit 52. Remote controls 56 also contain buttons 70, some of which are menu related in that they are commonly used for manipulating menus 68. The user views menus 68 on media demodulation device 62 and presses one or more buttons 70 on remote control 56 to select media content to download from digital media content provider 66. Remote control 56 communicates the button presses to media unit 52 through a radio frequency (RF) communications link 72 and media unit 52 responds to the button presses by communicating with digital content provider 66 and downloading and saving the selected media content in media unit 52. Signals used in communicating between media unit 52 and digital content provider 66 as well as signals containing media content transferring from digital content provider 66 to media unit 52 are referred to herein as content provider signals 74.
The downloaded media content is stored in media unit 52 and the stored media content can be distributed to media demodulation devices 62 for viewing or reproduction at any time by any given one or more of media demodulation devices 62 connected to cable infrastructure 64. Control over the reproduction of the media content is accomplished using any one of remote controls 56 to interact with one or more menus 68 displayed on any one or more of media demodulation devices 62. The user selects media content for reproduction from menu 68 by pressing one or more buttons 70 on remote control 56 which are media playback related buttons, and in response, remote control 56 transmits information about which buttons 70 were pressed to media unit 52 using RF link 72. Media unit 52 plays the selected media content on one or more of media demodulation devices 62 through cable infrastructure 64. While the media unit 52 plays the selected media content, the media playback related buttons are used for controlling the playing without having to display a menu.
In the example shown in
A channel feed 78 such as an antenna or cable service feed is connected to cable infrastructure 64 to connect a channel service 80 which supplies specific frequency bands corresponding to FCC allocated channels for broadcast or cable television to media demodulation devices 62. Each of media demodulation devices 62 are able to selectively tune and demodulate the frequency band corresponding to a FCC allocated channel and reproduce the audio and/or video content contained within the channel. Signals from the cable or other type of channel service are referred to herein as service channels 82. Typically channel service 80 will only use a portion of the allocated channels while leaving the other channels unused, therefore service channels 82 include service modulated channels which are used by channel service 80 and service unmodulated channels which are not used by channel service 80. The service modulated channels are modulated with service media content, such as audio and visual media from television stations.
Media unit 52 stores the downloaded media content as one or more local media files. Media unit 52 creates local media content streams 84 (
Signal combiner 54, shown in
In the example shown in
Cable infrastructure 64, shown in
Cable infrastructure 64 in the example shown in
Cable infrastructure 64 may include more or less input and output ports and legs than what are shown in
As an alternative to connecting media unit 52 to cable infrastructure 64 with a signal combiner 54, media system 50 can connect directly to a signal splitter in some instances, as shown in
Media demodulation devices 62 used with media system 50 are standard media demodulation devices 62 in that they are not modified to interact with media system 50. Media demodulation devices 62 can be audio and visual equipment such as televisions, audio only devices, such as stereos, video only devices for displaying pictures or other devices which are capable of demodulated modulated channels. Media demodulation devices 62 are connected to cable infrastructure 64 in the same manner when media system 50 is used as they are when media system 50 is not used so no special connection is required. Media demodulation devices 62 are selectively tunable to any of service channels 82 or local modulated channels 86 on cable infrastructure 64 and are controllable for channel selection and other functions using infrared communications with one of remote controls 56 over IR link 76.
Media demodulation devices 62 can be tuned to the same or different channels at the same or different times. In this way, by tuning more than one media demodulation device 62 to the same local modulated channel 86, the same media content from media unit 52 can be reproduced simultaneously on more than one media demodulation device 62. By tuning media demodulation devices 62 to different local modulated channels 86a, 86b or 86c, different media content from media unit 52 can be reproduced on different media demodulation devices 62a, 62b or 62c simultaneously. The service modulated channels are essentially unaffected by the use of cable infrastructure 64 by media system 50.
Menus 68 are generated by media unit 52 and sent to media demodulation devices 62 using cable infrastructure 64. Media unit 52 generates local menu content streams 118 of audio and/or video which contain menu information generated by media unit 52. Media unit 52 modulates menu content streams 118 to produce local modulated channels 86. Interaction with media unit 52 to manipulate menus 68 is accomplished via radio frequency communications between remotes 56 and media unit 52 over RF links 72. Media unit 52 responds to user interaction with remote control 56 by indicating the user interaction in menu 68 displayed by media demodulation device 62. In this way the user can interface with menu 68 to order, purchase, download and play media content using remote controls 56.
Local modulated channels 86 are used for alternatively transmitting menu content and media content to media demodulation devices 62. This allows a user to interact with a menu 68 viewed on a media demodulation device 62 to purchase and download media content as well as play the media content on any of media demodulation devices 62.
Details of media system 50 which accomplishes the functions discussed above will now be discussed. A diagram of an exemplary media unit 52 is shown in
Media unit 52 includes a power supply 122 which provides the appropriate power to all circuits in media unit 52. Power supply 122 connects to a receptacle (not shown) using a plug 124 connected to a cable 126. In the embodiment shown, power supply 122 connects with a 120 V alternating current (AC) outlet typically found in house 60 or other building. Power supply 122 converts the AC energy into DC energy and distributes the DC energy on power lines (not shown) for use by the components of media unit 52.
Media unit 52 may include various buttons, such as power button 128, for controlling media unit 52 and/or powering up media unit 52. Media unit 52 can also include various LEDs 130 which indicate whether media unit 52 is powered up, or if other parts of media unit 52 are functioning, such as whether media unit 52 is playing media content or if media unit 52 is communicating with one or more of remote controls. LEDs 130 and/or buttons are connected to CPU 120 with one or more LED/button lines 131. It should be understood that
CPU 120 may consist of a single microprocessor IC or may be multiple ICs which may or may not include multiple microprocessor ICs and/or other ICs which implement various peripheral functions. CPU 120 runs software which monitors for various input conditions and responds appropriately. For instance, CPU 120 manages data flow between a memory device such as data storage device 132 and other peripherals. CPU 120 coordinates the operation and control of various other peripherals in the embedded system, as well as providing other typical functions of a CPU in an embedded system.
CPU 120 also accepts input from remote controls 56 and coordinates communication through a control section such as RF receiver 134 of media unit 52 over a receiver line 135. In the example shown in
Media unit 52 includes memory such as RAM 136 for storing data and various software for running on CPU 120. Flash memory 138 is also included in media unit 52 shown in
Data storage device 132 is a non-volatile digital memory device with high storage capacity for storing the local media files and/or other content. Data storage device 132 is connected to CPU 120 using a data storage bus 142 which transfers control and/or data signals between data storage device 132 and CPU 120. Data storage device 132 stores the digital media content, such as movies, songs, photos and other content as well as other data/files related to the operating system and/or other software. Data storage device 132 is connected to CPU 120 using an interface such as ATA, Serial-ATA, SCSI, CE-ATA or others. Storage device 132 can be a hard disk drive or multiple hard disk drives to achieve a higher capacity. In addition or alternatively, data storage device 132 could include a redundant array of inexpensive devices (RAID) type storage to protect against data loss if one of the hard disk drives fails. Other types of nonvolatile digital storage devices could be used, such as large amounts of flash memory, tape, optical, holographic storage devices, or other types of storage devices having large capacities. Data storage device 132 can be internal or external to the media unit and may also be readily expandable or upgradeable. External data storage devices may be connected by network attached storage or as a modular device to the media unit as an external USB drive.
Media unit 52 includes multiple audio/video decoders 144 for taking digitally encoded media content and decoding the content into the analog audio and video content streams 84. Decoders 144 are connected to CPU 120 with a decoder bus 146 to receive digitally encoded media content streams 148 from data storage device 132 through CPU 120, which together act as one example of a media content stream generator. Following decoding by decoders 144, decoded content streams 84 are sent through decoded signal lines 152 to a modulation section having modulators 150. Digitally encoded media content which is stored in data storage device 132 are transferred to decoders 144 as encoded content streams 148 over data storage bus 142 and/or other data lines under the control of CPU 120. Control bus 158 carries control signals 160 between modulator 150 and CPU 120. Each of audio/visual decoders 144 include all of the necessary primary and secondary integrated circuits and passive components required to perform a complete audio/video decoder function. In one instance this includes, a dedicated audio/video decoder IC such as Sigma Designs EM8510 IC or the Phillips Nexperia PNX17xx series IC as well as an additional memory for the decoding function and for other software which runs on the audio/video decoder IC.
As an alternative, or in addition to generating menus 68 with CPU 120, each of audio/video decoders 144 can also contain the necessary circuits and algorithms to generate and output menu content streams 118 to modulators 150 through decoded signal lines 152. One exemplary decoder utilizes a Sigma Designs EM 8510 IC which contains an internal capability to generate an on-screen display (OSD). The OSD function can be used for generating the menu and for placing the menu onto the decoded signal lines as menu content stream 118. In this case, the software running on CPU 120 and software running on the decoders act cooperatively. The CPU communicates instructions to the decoder about what menu should be generated and may also provide lists of content to display on the menu. The decoder software then generates the appropriate menu using the instructions and content from the CPU.
There are three decoders 144 shown in the example in
Modulators 150 receive decoded content streams 84 from decoders 144 and convert them into RF signals at a frequency corresponding to a channel under the control of CPU 120. In this way, local modulated channels 86 are generated from analog audio and video content streams 84. Local modulated channels 86 generated by modulators 150 shown in
Each modulator 150, shown in
A cable modem 164 is included in media unit 52 for providing bi-directional communications with digital content provider 66 to access, select, purchase and download media content from digital content provider 66 through a single connection. Cable modem 164 is connected to CPU 120 with a modem control line 166 for control signals 168 and/or other data flow between CPU 120 and cable modem 164. Cable modem is connected to RF signal combiner 154 with a cable modem line 170 for transferring content provider signals 74 to and from cable modem 164.
The bi-directional communication between cable modem 164 and digital content provider 66 is accomplished in a manner similar to what occurs in cable modem device/technology providing internet service to a personal computer in the house. While modem 164 is shown internal to media unit 52, modem 164 can also be positioned as a separate unit so long as the modem provides communication between media unit 52 and digital content provider 66.
RF signal combiner 154 of media unit 52 combines the separate local modulated channels 86 from modulators 150 and digital content provider signal 74 traveling from cable modem 164 to digital content provider 66 into combined media unit signal 102. Cable modem 164 is connected to a bi-directional port 172 of RF signal combiner 154 that provides bi-directional communications between digital content provider 66 and cable modem 164. In other instances of the single connection to digital content provider 66, cable modem 164 or other remote source connector device is connected to the remote digital content provider 66 without sharing a cable or connection with local modulated channels 86, such as is shown in
RF signal combiner 154, shown in
Optional bi-directional tap 174 can be included in media unit 52 for connecting local modulated channels 86 and digital content provider signal 74 to an optional media demodulation device (not shown) located in the same room as media unit 52 without using cable infrastructure 64 to carry these signals. In this instance the optional media demodulation device is connected to a tap line 180 coming from bidirectional tap 174. Bi-directional tap 174 allows signals to pass through in both directions between media unit connector 178 and RF signal combiner 154. Tap line 178 carries local modulated channels 86 and digital content provider signal 74 in an attenuated form. The attenuation level is set for a level suitable to connect to the media demodulation device located in the same room as media unit 52.
In instances where DC power is needed for a signal splitter 112 or signal combiner 54 as described above in conjunction with
RF receiver 134 of media unit 52 is connected to CPU 120 with receiver line 135 to allow media unit 52 to communicate with remote controls 56 via the RF communication links. RF receiver 134 receives RF signals of the RF link on an antenna 182 modulated with control code sequences, which have been transmitted from one or more of remote controls 56. RF receiver 134 demodulates the RF signals and then passes the control code sequences to CPU 120 on receiver line 135. CPU 120 responds to the control code sequences in a manner depending on which buttons 70 on remote control 56 were pressed.
Remote controls 56 of media system 50 are each essentially identical and each of the remotes is typically used with one of media demodulation devices 62. Remote controls 56 are generally located in the same rooms 58 as media demodulation devices 62 with which it is used. In the example shown in
Each of remotes 56 contain an assortment of buttons 70, some of these buttons are for controlling a media demodulation device 62 such as media demodulation devices 62 shown in
The assortment of buttons 70 also includes media playback buttons for controlling media playback from media unit 52. The media playback buttons may include, play, pause, stop, fast forward, fast reverse, skip to next and skip to previous, and/or others. In addition, buttons 70 of remotes 56 may include a program button for programming the remote control.
Each remote 56 also includes local channel buttons 184a, 184b and 184c, which are used for the activation and control of local modulated channels 86a, 86b and 86c, respectively. In the example shown in
Remote controls 56 of media system 50 include infrared (IR) communication capabilities for communicating with media demodulation devices 62 through the IR link and RF communication capabilities for communicating with media unit 52 through the RF link. Remote control 56 of the present example includes a microprocessor to generate various control code sequences via software algorithms and other necessary circuitry and devices to convert the control code sequences into IR or RF signals. In addition, remotes 56 includes non-volatile memory (not shown) in order to retain information programmed into the remote.
IR link 76 between remote control 56 and media demodulation device 62 is created by remote 56. IR is used for communicating with media demodulation devices 62 since most media demodulation devices 62 already incorporate a system for receiving control using IR. Each remote 56 is pre-programmed with control codes for common brands of media demodulation devices 62. A user can program remotes 56 to utilize the set of IR control codes corresponding to the particular media demodulation device 62 located in the same room 58 with remote 56 by following simple instructions. Remote 56 stores the programmed information in the non-volatile memory. Programming remotes 56 for IR communication with a particular media demodulation device 62 is done in a manner similar to methods used for programming universal remote controls.
The RF communication capability of remotes 56 is used for communicating controls from remote control 56 to media unit 52 through wireless RF link 72. Remote 56 transmits sequences of ones and zeros (a sequence of bits) over RF link 72 to media unit 52. Pressing different ones of buttons 70 and different ones of local channel buttons 184 on remote control 56 produce different sequences of bits, or control codes, to be transmitted to media unit 52 over the RF link. One or more control codes that are transmitted sequentially, either through IR link 76 or RF link 72, are control code sequences.
The number of bits in a particular control code can be generally chosen according to the requirements of the system design. Components and devices that transmit and receive the control code sequences over RF link 72 can be generally programmed to accommodate the number of bits required. Furthermore, the ordering and meaning of the bits can be chosen according to the requirements of the system design. Well known methods exist to create, receive, decode and interpret particular sequences of bits in a control code.
Each press of a button 70 or 184 produces a response in the remote control: either a control code sequence is transmitted by IR link 76 to media demodulation device 62, or a control code sequence is transmitted by RF link 72 to media unit 52, or two different control code sequences are transmitted, one through IR link 76 to media demodulation device 62 and one through RF link 72 to media unit 52. Generally, button presses associated with the typical buttons used for controlling a media demodulation device 62 will cause the appropriate control code sequence to be transmitted by IR link 76; and generally presses associated with menu related buttons will cause a control code sequence to be transmitted to either media demodulation device 62 by IR link 76 or to media unit 52 by RF link 72. Button presses associated with media playback buttons will cause control code sequences to be transmitted to media unit 52 over RF link 72. Button presses associated with local channel buttons 184 cause control code sequences to be transmitted to media demodulation devices 62 by IR link 76 and to media unit 52 by RF link 72.
Although menu related buttons are described as causing control code sequences to be transmitted to media unit 52 through RF link 72, in some instances menu related buttons may cause control code sequences to be transmitted to media demodulation devices 62 through IR link 76. One such instance is where the user desires to access and manipulate menus generated and displayed by media demodulation devices such a initial setup menus for the media demodulation device 62. In this instance remote control 56 would send control codes through IR link 76 to media demodulation device 62 in response to menu button presses on remote control 56. Also, an existing or additional button could be used in this instance to cause remote control 56 to produce IR control code sequences in addition to or instead of RF related control code sequences for menu related button presses.
Since media unit 52 utilizes channel space made available by service unmodulated channels for local modulated channels 86, these unmodulated channels are programmed into media unit 52 and remote controls 56. In the present example, a user identifies the service unmodulated channels by tuning one of media demodulation devices 62 through at least a portion of service channels 82, including the service modulated channels and service unmodulated channels. The user identifies the service unmodulated channels as service channels 82 which do not contain content from channel service 80. The user may also identify adjacent service unmodulated channels that are grouped together in series. There may be benefits to using one or more channels in grouped service unmodulated channels for local modulated channels since these channels may have less interference from adjacent channels.
In some instances, the service unmodulated channels are fixed to such a degree that the media unit can be hard-coded to use these service unmodulated channels as the local modulated channels. One instance of this is where the media unit is manufactured or provided by the channel service provider. In this instance, the channel service provider can designate certain channels to function as the local modulated channels and leave these certain channels as service unmodulated channels.
The number of identified service unmodulated channels should equal or exceed the number of local modulated channels 86 produced by media unit 52 since each of local modulated channels 86 will use a separate service umodulated channel. If there are not enough service unmodulated channels for all of the local modulated channels capable in media unit 52, then the user may choose to not use all of the local modulated channels.
Media system 50 may include the capability to use one or more of the service modulated channels as local modulated channels. In this instance, media system 50 may include one or more filters, such as channel specific or channel range notch filters, for filtering out the service modulated channel before using the channel as a local modulated channel. In these instances, the filtered channel is also considered as a service unmodulated channel. Such filters may be positioned between the channel feed 78 and signal combiner 54. The user may select a service modulated channel which carries content that is not of interest to the user to user as a local modulated channel.
Once the user has identified a sufficient number of service unmodulated channels, the user can then proceed to program media unit 52 to utilize the identified service unmodulated channels using any given one of remote controls 56. Media unit 52 is programmed to use the identified service unmodulated channels as local modulated channels 86 through specific sequence of button presses on a selected remote 56. An exemplary programming sequence involves: first pressing the program button; then pressing one of local channel buttons 184; then entering one of the service unmodulated channel numbers using numeric buttons of buttons 70; and finally pressing the program button again.
The exemplary sequence causes the selected remote to transmit to media unit 52 which local channel button 184 has been pressed and which service unmodulated channel number has been entered. Media unit 52 responds by storing the service unmodulated channel number in the non-volatile memory, such as data storage device 132. The exemplary programming sequence is repeated using a different service unmodulated channel number for each of local channel buttons 184a, 184b and 184c on the selected remote 56. In this way, media unit 52 is programmed with the channels available for use as local modulated channels 86a, 86b and 86c so that CPU 120 can control modulators 150 to modulate content streams 84 and 118 to the unused service unmodulated channel frequencies as local modulated channels 86. Subsequent to executing the programming sequence, each of local channel buttons 184a, 184b and 184c on the selected remote 56 has an associated local modulated channel 86a, 86b and 86c, respectively in this instance. Media unit 52 can be reprogrammed for a different service unmodulated channel using any remote controls 56 if one or more of a service unmodulated channels begins to be used by channel service 80.
In addition to programming media unit 52 to use the service unmodulated channels for local modulated channels 86, the exemplary programming sequence also causes the selected remote control 56 to store the service unmodulated channels into nonvolatile memory in selected remote control 56. In this way, each local channel button 184 is associated with one of local modulated channels 86. After following the programming sequence, pressing one of local channel buttons 184a, 184b or 184c causes remote control 56 to send an IR signal to media demodulation device 62 which responds to this signal by tuning to local modulated channel 86a, 86b or 86c associated with the local channel button that was pressed. Pressing local channel button 184 also causes media unit 52 to respond by creating local modulated channel 86 associated with local channel button 184 that was pressed, typically initially as a menu 68.
The non-selected remote controls 56, which were not used to initially program media unit 52, are programmed to store the service unmodulated channels into non-volatile memory without reprogramming media unit 52. In the present example, this is accomplished by: pressing the program button; pressing one of local channel buttons 184; entering the service unmodulated channel that is associated with the local channel button pressed; and then pressing the enter button. This sequence is repeated for each of local channel buttons 184 on each of the non-selected remote controls 56. Once this process is complete all of remote controls 56 will be identically programmed with service unmodulated channel numbers corresponding to each of local channel buttons 184, and media unit 52 will be programmed with the same information. Consequently, each of remote controls 56 will be able to coordinate actions between media unit 52 and their corresponding media demodulation device 62 in such a way that the user need not remember which service unmodulated channel is associated with each of local modulated channels 184.
As discussed, the exemplary media system 50 shown in
Other embodiments can also be used for connecting media unit 52 to digital content provider 66. In some instances, channel service 80 and the digital media content provider may not share a line such as channel service feed 78. In these instances cable modem line 170 of media unit 52 is not connected to RF signal combiner 154 as shown in
In another instance, shown in
The operation of media system 50 is simple and transparent to the user. Media system 50 coordinates the operation of remote controls 56, media unit 52 and media demodulation devices 62. Remote controls 56 control media unit 52 through RF links 72 and media demodulation devices 62 through IR links 76, as appropriate, in response to pressed buttons 70 and/or 184 by a user.
After media system 50 has been connected to cable infrastructure 64 and remote controls 56 and media unit 52 have been programmed with the service unmodulated channels and media unit 52 has been powered up, media system 50 is essentially ready to use to select and download media content, or to play media content already stored in media unit 52.
Each local modulated channel 86 is “active” when media unit 52 is generating either menu 68 or decoding digital content on the local modulated channel. Each local modulated channel 86 is “inactive” when media unit 52 is not generating either menu 68 or decoding digital content on the local modulated channel.
When first powered up, media unit 52, after performing initializations typical of a media server device, enters a state where it is waiting to receive control code sequences from any of the remote controls and where all the local channels are inactive. Typically, when inactive, some of the peripheral devices in media unit 52 such as audio/video decoders and modulators are placed in a low-power state. Subsequently, when local channels become active, such as by the user pressing one or more local channel buttons, the aforementioned peripheral devices are placed in a normal operational state.
Pressing one of local channel buttons 184 on any given one of remote controls 56 causes media demodulation device 62 and media unit 52 to respond in different ways depending on whether local modulated channel 86 associated with local channel button 184 was active or inactive when the local channel button was pressed.
The net result of pressing local channel button 184 is that media demodulation device 62 and media unit 52 are coordinated to make use of a service unmodulated channel as a local modulated channel 86 and output from media unit 52 is displayed on media demodulation device 62. The particular output displayed will depend upon whether or not the corresponding local modulated channel 86 is already active at the time local channel button 184 is pressed. If local modulated channel 86 was inactive then an Initial Menu 192 is generated and modulated in media unit 52 and is displayed on media demodulation device 62. If local modulated channel 86 was active, then menu 68 or content stream already being generated and modulated by media unit 52 will be displayed on media demodulation device 62.
One example of the response of remote control 56 to pressing one of local channel buttons 184 on one of remote controls 56 is shown by a method 200 illustrated by the flow diagram in
The method then proceeds to step 210 where remote control 56 determines from memory the channel number of local modulated channel 86 corresponding to the pressed local channel button 184. The channel number of local modulated channel 86 corresponding to the pressed local channel button 184 is the number of the service unmodulated channel previously programmed by the user for the pressed local channel button 184. The method then proceeds to step 212 where remote control 56 transmits a control code sequence through IR link 76 instructing media demodulation device 62 to tune to local modulated channel 86 associated with the pressed local channel button 184. Following step 212, the method proceeds to 214 where the method stops.
When the selected local channel button 184 is pressed, media unit 52 has different responses depending on whether the associated local channel 86 is active or inactive. An exemplary method 216 is shown in
If the determination at step 222 is the associated local modulated channel 86 is inactive then method 216 proceeds to step 226. At step 226 media unit 52 generates Initial Menu 192, the method then proceeds to step 228 where media unit 52 determines, from memory, the service unmodulated channel associated with the pressed local channel button 184. Method 216 proceeds to step 230 where media unit 52 modulates the generated menu onto the determined service unmodulated channel to create local modulated channel 86. Method 216 proceeds to step 232 where the created local modulated channel 86 is output and combined with service channels 82 on cable infrastructure 64. Following step 232 method 216 proceeds to step 224 where the method stops.
Media system 50 responds to the press of a single local channel button 184 on remote control 56 to achieve a coordinated response in both media unit 52 and media demodulation device 62 without the user having to remember the channel number for the associated local modulated channel 86 used and without requiring any additional hardware. Multiple users in multiple different rooms 58 can use remote controls 56 to independently coordinate unique menus and display unique content on independent media demodulation devices 62 simultaneously.
In an alternative embodiment, a single press of local channel button 184 any one of remote controls 56 could also include an additional response such that remote control 56 would first transmit a control code sequence through IR link 76 instructing media demodulation device 62 to power on. Methods 200 and 216 could then proceed as described above. This embodiment has the added advantage of utilizing a single button pressed to do everything to power on media demodulation device 62 and display Initial Menu 192.
Remote control 56 stores in memory which of local channel buttons 184 has most recently been pressed so that on subsequent presses to buttons 70 related to menu control and/or media playback control, any resultant action taken by media unit 52 will occur only on the appropriate menu content stream 118 or media content stream 84 (
Pressing buttons 70 related to menu and/or media playback causes remote control 56 to transmit control code sequences to media unit 52 through RF link 72. These control code sequences include two items of information: first is information identifying which of local channel buttons 184a, 184b or 184c was most recently pressed, and second is information indicating which button 70 was just pressed. Media unit 52 receives the control code sequence with the two items of information and applies the appropriate response for button 70 that was just pressed to local modulated channel 86 corresponding to local channel button 184 most recently pressed. By sending information identifying which of local channel buttons 184 was most recently pressed along with controls corresponding to button 70 for media unit 52, media unit 52 is able to apply the controls to the appropriate local modulated channel 86.
It may be necessary in some instances to coordinate control of media demodulation device 62 and media unit 52 when a button 70 is pressed which is ambiguous in that button 70 could be used to control either media demodulation device 62 or media unit 52. One exemplary method for dealing with this situation involves determining if button 70 pressed previous to the ambiguous button press was used to control media demodulation device 62 or to control media unit 52. If the previous button press was used to control media demodulation device 62, then the ambiguous button press is sent to media demodulation device 62 over IR link 76. If the previous button press was used to control media unit 52, then the ambiguous button press is sent to media unit 52 over RF link 72.
In one embodiment, remote control 56 has two general modes or states of operation which are associated with operational states in remote control 56. The first state of operation is a media demodulation device control state 246 and the second state of operation is a media unit control state 248. This embodiment can be realized using a microprocessor and RAM memory in the remote control, or in other manners.
Media demodulation device control state 246 consists of the user controlling one of media demodulation devices 62 with the associated remote control 56 to display content from channel service 80, such as for example, tuning a media demodulation device 62 from one service channel 82 to another by pressing buttons 70 for channel up/down and controlling the volume of the television by pressing buttons 70 for volume up/down. This state of operation involves pressing buttons 70 normally associated with control of media demodulation device 62 and which will cause remote control 56 to transmit only control code sequences associated with media demodulation device 62 through IR link 76. Typical buttons 70 normally associated with the operation of media demodulation device control state 246 include media demodulation device 62 related buttons 70, such as channel up/down and volume up/down, mute and others and include menu related buttons 70 for gaining access to and manipulating setup menus on media demodulation device 62.
Media unit control state 248 consists of a user controlling media unit 52 and media demodulation device 62 with the associated remote control 56 to display menus 68 and/or content on one or more of local modulated channels 86. Media unit control state 248 produces control communications from remote control 56 in response to buttons 70 and/or 184 pressed which can include only RF communications to media unit 52, or can include a combination of RF communications to media unit 52 and IR communications to one or more media demodulation device 62. Media unit control state 248 is entered whenever the user presses one of local channel buttons 184 on remote control 56. Subsequently, remote control 56 remains in media unit control state 248 as long as subsequent button presses occur to only those buttons 70 and/or 184 which have a meaningful relationship to a function in media unit 52. When one or more button 70 is pressed that is normally associated with control of media demodulation device 62, then remote control 56 changes from media unit control state 248 to media demodulation device control state 246. In order to enter back into media unit control state 248 for controlling media unit 52, the user must once again press one of local channel buttons 184 on remote control 56.
The embodiment using two control states 246 and 248 effectively deals with the problems associated with certain button presses being ambiguous as described. Button presses intended to control media unit 52 occur while remote control 56 is in media unit control state 248 which is entered into by pressing one of local channel buttons 184 on remote control 56. An exemplary method 240 for controlling the states of remote control 56 is shown in
An exemplary control method 250 involving the two control states is shown in
At step 258 a determination is made as to whether the button pressed was one of local channel buttons 184. If the determination at step 258 is that the pressed button was not one of local channel buttons 184, then the method proceeds to step 260. At step 260 a determination is made as to whether the pressed button was a button 70 related to control of media demodulation device 62. If the determination at step 260 is that the pressed button was not one of media demodulation device 62 related buttons, then the method proceeds back to step 254 to await another button press. If the determination at step 260 is that the pressed button was one of media demodulation device 62 related buttons, then the method proceeds to step 262 where remote control 56 transmits an appropriate control code sequence to media demodulation device 62 over IR link 76. Following step 262, the method returns to step 254 to await another button press.
If the determination at step 258 is that the pressed button was one of local channel buttons 184 then the method proceeds to step 264 where remote control 56 responds to the pressing of local channel button 184 by storing the number of local channel button 184 and sending a control code sequence to media demodulation device 62 over IR link 76 to cause media demodulation device 62 to tune to local modulated channel 86 associated with the pressed local channel button 184. One example of remote control 56 response to pressing local channel button 184 is method 200 described above. Following the step 264, method 250 proceeds to step 266 where remote control 56 enters media unit control state 248. Following step 266 the method returns back to step 254 where the method awaits another button press.
When a button 70 on remote control 56 is pressed and the determination at 256 is that remote control 56 is in media unit control state 248, then the method proceeds to step 268. At step 268 a determination is made as to whether the pressed button was one of the media demodulation device 62 related buttons 70. If the determination at step 268 is that the pressed button was one of buttons 70 related to control of media demodulation device 62, then the method proceeds to step 270. At step 270, the state of remote control 56 is changed from media unit control state 248 to media demodulation device control state 246. The method then proceeds to step 272 where remote control 56 transmits the appropriate control code sequence to media demodulation device 62 through IR link 76. Following step 272, the method returns to step 254 to await another button press.
When the determination at 268 is that the pressed button was not related to control of one of media demodulation devices 62, then the method proceeds to step 269. At step 269, a determination is made as to whether the pressed button was one of the local channel buttons. If the determination at 269 is that one of the local channel buttons were pressed, then the method proceeds to step 271 where remote control 56 responds to the pressing of local channel button 184 by storing the number of local channel button 184 and sending a control code sequence to media demodulation device 62 over IR link 76 to cause media demodulation device 62 to tune to local modulated channel 86 associated with the pressed local channel button 184, as for example, in method 200. Following step 271, the method returns to step 254 to await another button press.
If the determination at 269 is that the pressed button was not one of the local channel buttons then the method proceeds to step 274. At step 274 the number of the last local channel button 184 pressed is transmitted as a control code sequence to media unit 52 through RF link 72 before the method proceeds to step 276. At step 276, information indicating which button 70 had been pressed is transmitted to media unit 52 as a control code sequence through RF link 72. Following step 276, the method returns to step 254 to await another button press.
The exemplary method 250 represents one possible method of dealing with possible ambiguous button presses on remote controls 56. Other methods of controlling button presses on remote controls 56 and algorithms may also be used.
Menus 68 are utilized to allow the user to accomplish the selection, purchase and download of media content from digital media content provider 66, as well as to allow the user to control playback of the media content on media demodulation devices 62. Menus 68 are generated using a menu generator such as menu systems 280 that are generally implemented in software running on a microprocessor. One output of menu system 280 is digital data which is converted into menu content stream 118 containing the image of the menu, and possibly other things such as a movable cursor. Menu systems 280 are also involved in communications to other portions of media system 50 which cause further actions to occur, such as display of a sub-menu, display of menus of information received from remote content provider 66, starting playback of a media files, among other things. Menu systems 280 typically involves both software and hardware portions and in the present example, menu systems 280 are included in CPU 120.
In the present example, each local modulated channel 86 has a corresponding and independent menu system, which are collectively referred to herein as menu systems 280. In the example shown in
Various different hardware is capable of running the menu system software portion. In one embodiment, all of the menu system software is running in CPU 120 with each menu system implemented as a separate application or menu task. Each menu task contains capabilities for managing displayed menu content and actions associated with menu manipulation as well as capabilities for taking further actions when appropriate. Multiple menu tasks running on CPU 120 are easily facilitated by the use of a multitasking operating system such as Linux or any other multitasking operating system or multitasking embedded systems software. In the present example, each menu task produces a menu display in the form of digital data 282 which is transmitted from CPU 120 to a corresponding audio/video decoder 144 which converts the data into menu content streams 118. Menu content streams 118 are then sent to the corresponding modulators 150 where streams 118 are modulated onto the corresponding local modulated channels 86 before being combined with service channels 82 on building cable infrastructure 64. Multiple menu content streams 118 can be modulated onto multiple local modulated channels 86 simultaneously and/or at different times. Any one or more of media demodulation devices 62 connected to cable infrastructure 64 can be tuned to any of local modulated channels 86 to display any of menu content streams 118. Other actions required by the user's manipulation of menus 68 are communicated from the menu task to other tasks running on CPU 120 which causes the actions to be taken.
An alternative embodiment makes use of the fact that modern audio/video decoder ICs contain microprocessors capable of running a menu task. For example, single chip audio/video decoder devices such as the Sigma Designs EM8510 contains an embedded microprocessor and also incorporate built-in on-screen display (OSD) functions such that an on-screen menu can be easily generated and placed onto the decoded output stream. In this example, the menu task is implemented in software running on the embedded microprocessor and is implemented in such a way as to utilize the built-in and OSD functions. Each decoder contains only the single menu task which is corresponding to that decoder. The menu task receives button press information from CPU 120 and the menu task utilizes various software and hardware in the decoder to generate the menu content streams. The menu content streams are then sent to the corresponding modulators where the streams are modulated onto the corresponding local modulated channels before being combined onto the cable infrastructure. The user's manipulation of the menu is communicated between the menu task and the CPU.
In another example, a portion of each of the menu tasks are running on the corresponding decoders while the remaining portion of each menu task is running as a separate task in the CPU. In this instance the split parts of each menu tasks operate cooperatively by communication of data between the CPU and each decoder.
Regardless of the embodiment chosen for the menu tasks, media unit 52 also coordinates and directs information about button presses from remote controls 56 to the correct menu task. For example, if a user presses local channel button 184a on any of remotes 56, and then presses a button 70 related to a menu control, the information about which button 70 that was been pressed must be communicated ultimately to the menu displayed on local modulated channel 86a which corresponds to local channel button 184a in the present example. This coordinated communication is accomplished in the example discussed in conjunction with
A separate software task, called a director task, runs on CPU 120 and receives the control code sequence from RF receiver 134 over RF receiver line 135 and directs the control code sequence to the appropriate menu task. The director task involves a method 300 that is implemented in software in the present example for media unit 52 shown in
Method 300, shown in
If the determination at 308 is negative, then the method proceeds to step 314 where a determination is made as to whether the most recently pressed local channel button 184 was local channel button 184b. If the determination at step 314 is that the most recently pressed local channel button 184 was local channel button 184b, then the method proceeds to step 316 where the button code is sent to menu task for local modulated channel 86b corresponding to local channel button 184b. Following step 316, the method ends at step 312.
If the determination at 314 is negative, then the method proceeds to step 318 where a determination is made as to whether the most recently pressed local channel button 184 was local channel button 184c. If the determination at step 318 is that the most recently pressed local channel button 184 was local channel button 184c, and the method proceeds to step 320 where the button code is sent to the menu task for local modulated channel 86c corresponding to local channel button 184c. Following step 320, the method ends at step 312.
If the determination at step 318 is negative, then the method proceeds to step 322 where an error condition is determined to have occurred and the method takes no further action involving the present received control code sequence. Following step 322, the method ends at step 312.
In the present example, a non-media demodulation device-related button press on any one of remotes 56 which is in media unit control state 248 will cause the menu task corresponding to the most recently pressed local channel button 184 on remote 56 to receive information which indicates which button 70 had been pressed. For example, if a user presses local channel button 184a on remote control 56b to display a menu on local modulated channel 86a, then subsequent button presses which are not media demodulation device related will be directed to the menu task for controlling the menu on local modulated channel 86a. In this way the user is able to interact with and control the menus using remote controls 56.
Playback of the media content is accomplished when menu task communicates with a playback task running on CPU 120 requesting that the digital content media file be accessed from data storage device 132. The digital content media file is communicated from data storage device 132 to CPU 120 and then from CPU 120 to audio/video decoder 133. The digital content media file is accessed and communicated sequentially in accordance with its structure and also in accordance with its data rate so that the data is received by audio/video decoder 144 at the correct speed for playback. A buffer (not shown) is used to buffer some of the data locally in audio/video decoder 144 and in CPU 120 so that temporary pauses in data access from data storage device 132 do not cause pauses in the playback presented to the user. Content streams 84 from decoders 144 are modulated onto local channels 86 and combined into building cable infrastructure 64 where any of media demodulation devices 62 can tune to one or more local channels 86 and display one or more content streams 84.
Menus 68 allow the user to select, purchase and download digital media content from digital media content provider 66 by pressing buttons 70 on any of remote controls 56. Media unit 52 interacts with a digital content provider 66 so that the menus display information relating to the available media content from digital content provider 66. In one example the menu tasks communicate bi-directionally with digital media content provider 66 using cable modem 164. The information communicated bi-directionally uses a predetermined protocol which both the menu tasks and digital media content provider 66 follow. For example if the user presses a button sequence on remote control 56 to access a content-for-purchase list from media content provider 66, information requesting the list can be sent from the menu task in media unit 52 to digital media content provider 66 through cable modem 164. In response, digital media content provider 66 sends the list of content available back to media unit 52 in some predetermined format. The menu task in media unit 52 would receive and display all or some of the list according to a predetermined menu design.
In another example, the menu task displays menu 68 which has been supplied directly from digital media content provider 66. In this instance, information from digital media content provider 66 contains graphic objects and instructions for what is to be displayed on menu 68. The menu task receives the graphic objects and instructions and creates the appropriate menu 68 for display. One instance of this type involves web browsers which operate to display web pages based on HTML information received from the web server.
Menus 68 allow the user to access digital media content for purchase and for playing over cable infrastructure 64. The construction and/or layout of the menus for purchase allow the user to access digital media content provider 66 to select, purchase and download media content and the construction and/or layout of the menus for playing the media content allow the user to select media content stored on data storage device 132 and play back the selected media content on one or more media demodulation devices 62 connected to cable infrastructure 64.
Exemplary menus 68 are shown in
Selecting the purchase movies menu item in Initial Menu 192 causes a Purchase Movies Menu 336, (
An exemplary Purchase Movies by Title Menu 340, shown in
Another set of menus 68 can be provided for selecting music or other media content to purchase. These purchase music menus (not shown) could allow the user to select music files based on genre, artist, album title, song title, year, popularity, saved list and/or suggested selections among other things.
Each time a media content file is selected for purchase from the Purchase Movies Menus by genre or by title menus 338, 340 or others, a Shopping Cart Menu 342 is displayed. Shopping Cart Menu 342 lists the media content that has been selected and offers menu items 330 which allow the user to continue shopping, checkout, cancel or save all to a list. Shopping Cart Menu 342 also includes a total cost of all of the media content selected for purchase and can include other information. The user selects the continue shopping menu item to select more media content for purchase. The user selects the cancel menu item to cancel the purchase of one or more of the content files. The selected media content can be added to a list for purchase at another time by selecting the save all to a list menu item.
When the user is ready to purchase the selected one or more media files, the user highlights 332 and selects checkout menu item 330 from Shopping Cart Menu 342 which causes a Checkout Menu 344 to be displayed. Checkout Menu 344 shown in
Downloading the digital media content from digital media content provider 66 is accomplished in the present example in a manner similar to the way in which Internet connected PCs download files from a remote source. Software running in CPU 120 of media unit 52 communicates cooperatively with digital media content provider 66 to cause digital media content in to be received and subsequently written to data storage device 132 in such a manner that the media content can be accessed and read back at a later time. Media unit 52 may include digital rights management capabilities as needed.
Playback of the digital media content is controlled using menus 68 which also start with Initial Menu 192 in the present example. Selecting play movies menu item 330 from Initial Menu 192 causes a Play Movies Menu 348,
A Play Music Menu 354, as shown in
Selecting playlist menu item 330 from Play Music Menu 354 causes a Playlist Menu 360 to be displayed. Playlist Menu 360 for music allows the user to browse through and select a playlist for playing on media unit 52. The Playlist Menu also allows the user to sequentially play or shuffle play the playlists.
The foregoing menus shown in
In some instances it is advantageous to make local channels 86 inactive so that a user may receive Initial Menu 192 when pressing a local channel button 184. For example, if a user on a first day, views content on local channel 86a and completes viewing the content, then another user on a later day accesses local channel 86a by pressing local channel button 184a on one of remote controls 56, then it is advantageous that Initial Menu 192 is displayed as opposed to displaying media content or menu 68 related to what has been viewed on the first day. To ensure Initial Menu 192 will be displayed under this condition, media unit 52 automatically makes a local channel change from active to inactive under certain conditions. One such condition is where some predetermined amount of time has elapsed after the media file has finished playback and during which time no control code sequences have been received which correspond to this local channel; another such sequence is where some predetermined amount of time has elapsed after a menu has been displayed with no subsequent control code sequences have been received which correspond to this local channel. These and similar conditions are referred to as “timeouts” which could be implemented in software algorithms running on CPU 120 of media unit 52. Other methods may be implemented to allow the user to force local modulated channel 86 to the inactive state, for instance when the user accesses Initial Menu 192 and selects the exit menu item.
Media system 50 allows multiple users to have independent access to and control of menus and content streams from media unit 52 through the use of identically designed remote controls 56 in an intuitive and natural manner. The following examples illustrate how this is accomplished by media system 50 shown in
In the first example there are three users: user 1 is located in room 58a, user 2 is located in room 58b and user 3 is located in room 58c. Also, the starting condition is that all three local modulated channels 86a, 86b and 86c are inactive.
User 1 presses local channel button 184a on remote control 56a located in room 58a, which brings up Initial Menu 192 on media demodulation device 62a located in room 58a. User I then interacts with the menu system to select and begin playing media content on local channel 86a.
While user 1 is watching the media content on local channel 86a, user 3 presses local channel button 184c on remote control 56c located in room 58c, which brings up a copy of Initial Menu 192 on media demodulation device 62c located in room 58c. User 3 then interacts with menu 192 by pressing a sequence of menu related buttons to access remote digital media content provider 66, then selects a media file for purchase, and makes a purchase and begins download of the file. As the media file is being downloaded, the user 3 begins play back of the media file by further interacting with menu 192.
While user 1 is watching the media file on local modulated channel 86a and user 3 is watching another media file on local modulated channel 86c, user 2 presses local channel button 184b on remote control 56b located in room 58b, which brings up a copy of Initial Menu 192 on media demodulation device 62b located in room 58b. User 2 interacts with menu 192 by pressing a sequence of menu related buttons to select and start media file playing on local modulated channel 86b.
While users 2 and 3 are each watching media files, user 1 is able to press a pause one of buttons 70 on remote control 56a located in room 58a which causes the media file playback on local modulated channel 86a to pause. Later, user 1 presses the play one of buttons 70 which causes the media file playback on local modulated channel 86a to continue.
At this point, all three users, each being in separate rooms 58a, 58b and 58c at separate media demodulation devices 62a, 62b and 62c used identically designed remote controls 56a, 56b and 56c to access and interact with separate and independent menus generated by the single media unit 52 in order to select, purchase, download and playback digital media content.
Another example illustrates how media system 50 provides seamless access to content throughout multiple rooms 58a, 58b and 58c of house 60. In this example, there are two users: user 1 is initially located in room 58a, and user 2 is located in room 58b. This example also assumes the starting condition that all three local modulated channels 86 are inactive.
User 1 presses local channel button 184a on remote control 56a located in room 58a, which brings up a copy of Initial Menu 192 on media demodulation device 62a located in room 58a. User 1 interacts with the copy of menu 192 by pressing a sequence of menu related buttons to select and start a media file playing on local modulated channel 86a.
While user 1 is watching the media file on local modulated channel 86a, user 2 presses local channel button 184b on remote control 56b located in room 58b, which brings up a copy of Initial Menu 192 on media demodulation device 62b located in room 58b. User 2 interacts with the menu by pressing a sequence of menu related buttons to select and start a media file playing on local modulated channel 86b.
At a later time, user 1 presses the pause button to pause playback on local modulated channel 86a. Then, user 1 relocates to room 58c. User 1, using remote control 56c, presses local channel button 184a, which causes the paused content playback on local channel 86a to be displayed on the media demodulation unit in room 58c. User 1 presses the play button on remote control 56c to resume playback of the media content on local modulated channel 86a in room 58c.
This second example illustrates that multiple media and demodulation devices 62 can be coordinated to control and/or display the same content stream 84 by use of remote controls 56.
Media unit 52 of media system 50 can also have one or more other optional features. In one instance, media unit 52 could also function as a set top box for receiving digital cable service from a channel service. In this instance, cable modem 164 or another device can receive multiple digital content streams from channel service 80 and CPU 120 directs the content streams to the various local channels 86 under the control of multiple users using remote controls 56. In this manner, a single media unit 52 replaces multiple cable set-top boxes throughout house 60 providing a reduced cost and installation complexity.
Another optional feature allows a single media unit 52 to receive and down-convert HD broadcasts to allow non-HD compatible media demodulation devices 62 to receive and display them. In this instance media unit 52 contains one or more high-defintion (HD) receivers for on-air and/or on-cable HD broadcasts. The output of the HD receivers could be down-converted into conventional television signals using the existing audio/video decoders 144 and modulators 150. The down-converted signals can then be sent to media demodulation devices 62 throughout house 60 for demodulation and reproduction of the audio/video as non-HD media. As more and more broadcasts are made in HD format, consumers owning multiple non-HD compatible media demodulation devices would still be able to use view service channels without having to reinvest in replacement HD compatible media demodulation devices 62.
In another optional feature, shown in
Yet another optional feature includes a USB or other port and adaptor 372 for connecting and accessing personal storage devices, MP3 players, phones and other devices. Content from these devices can be accessed and played from media unit 52 using the same or a similar menu system used for accessing and playing the digital content stored on data storage device 132. This feature allows media content stored on any of the above devices to be accessed, controlled and viewed or otherwise reproduced from any of media demodulation devices 62 in house 60. USB port 372 can also be used for connecting to a network adapter in order to provide access to the Internet. One reason for connecting to the Internet would be if digital content provider 66 was Internet-based.
Another optional feature is the inclusion of ethernet port 198 in addition to or as a replacement for cable modem 164. Media unit 52 may contain ethernet port 374 for connecting and/or accessing to a LAN or some other type of modem. In this instance, it may be possible to eliminate cable modem 164.
Another example of a configuration in which it may be possible to eliminate the cable modem involves using DSL modem 186. In this instance digital media content provider 66 would be connected to transmit and receive information with media unit 52 through phone line 187.
Media unit 52 may also include an audio/video input connected to a digital encoder 374 which is able to convert analog audio/video signals into encoded digital format. For example, the digital encoder may encode the analog audio/video signals into MPEG-2, MPEG4 or another digital encoding format. The digitally encoded audio/video material may then be stored on data storage device 132.
In yet another optional feature, media unit 52 may include one or more audio/video outputs 376 for connecting media unit 52 directly to a nearby television or video display device.
In the media system described herein, each and every media demodulation device 62 in house 60 or other building can be used as an independent point of access for purchase and playback of digital media content without requiring any special adapters or devices at each media demodulation device 62 other than the identically designed remote controls 56. Independent points of access to content available for purchase from each and every media demodulation device 62 are created in house 60 or other type of building in a simple low-cost and easy to set-up manner.
Another optional feature adds a Digital Video Recorder (DVR) function to the media unit, such that content streams on service modulated channels can be recorded and stored to the data storage device 132 as media files. Subsequently a user can access and play-back said media files as described previously.
In particular, a digitally-controlled tuner, a demodulator, and an encoder are incorporated into the media unit such that the tuner receives the service channels 82. A user interacts with additional menus using the remote control, adjusting the tuner to a selected service modulated channel via communication of control code sequences from the remote control to the CPU which in response adjusts the tuner to the appropriate channel. The output from the tuner is demodulated into video and/or audio signals, which are then encoded into a digital format such as MPEG-2 or MPEG4. The encoded data is then stored on the data storage device 132 as a media file for playback as described previously.
Another optional feature allows the media unit to automatically identify which service channels are service unmodulated channels, to identify preferred service unmodulated channels for use as local modulated channels by the media unit, and to automatically select the preferred service unmodulated channels for use as local modulated channels. Futhermore, an additional optional feature allows the media unit to communicate information about the selected local modulated channels to the remote controls. These features in combination eliminate the need for a user to perform any initial set-up of the media unit or remote controls with respect to channel selection for the local modulated channels, therefore causing the media system to be much easier to install and set-up.
In particular, a digitally controlled tuner and signal measurement device are incorporated into the media unit such that the tuner receives the service channels 82. At various times the media unit performs a scanning operation and tunes to each and every FCC allocated channel for broadcast or cable television, measuring one or more suitable characteristics of the signal within the tuned frequency range. One exemplary characteristic would be the amplitude of the tuned signal. Using these measurements, the media unit executes an algorithm to identify which channels are most suitable for use as local modulated channels, and subsequently assigns the local modulated channels to use these. In addition, bi-directional RF communication capability is incorporated into the media unit and remote controls, such that the media unit is able to communicate information about the channels selected for use as local modulated channels to the remote controls, in addition to the communication of control code sequences from the remote controls to the media unit as described previously. The remote controls receive the information communicated from the media unit and use it to automatically tune the media demodulation devices to the correct channel, corresponding to the channel previously selected by the media unit, when any of the local channel buttons are pressed.
Another optional feature allows remote controls, which incorporate bidirectional RF communication to the media unit as described previously, to control both the media demodulation devices 62 and additionally one or more other devices via IR or RF communications, making the remote controls more generally useful.
In particular, the remote controls incorporate bidirectional RF communications for communicating with the media unit and also incorporate one or more additional buttons 70 called “other device selection buttons” which are specifically related to one or more devices, other than the media demodulation devices. Such other devices may include but are not limited to DVD players, satellite receivers, set-top boxes, stereo systems, and systems to control various appliances in the home. Two other selection buttons are optionally incorporated, one relating to the media unit and the other relating to the media demodulation device, these together with the other device selection buttons are referred to as “device selection buttons”. When a device selection button is pressed, the remote control switches to a mode of operation consistent with controlling the device related to the particular selection button pressed, similar to how a universal remote control operates. During initial set-up, the user programs the remote control in a manner similar to programming a universal remote control such that during normal operation control code sequences produced by the remote control after a particular other device selection button has been pressed correspond to control code sequences used by a particular brand and model of other device.
Another optional feature allows remote controls to recognize individual users and transmit secure user authenication information to the media unit. This feature is used to enhance the remote control's capability for selecting and purchasing content, and can also enhance the remote control's usefulness in performing other functions such as restricting access to content files stored in the media unit, securely accessing personal files stored on internet connected servers, or accessing purchased media files stored in remote locations.
One example of the enhanced usefulness of this optional feature is when the media system is being used to purchase content. Typically at the time of purchase, a user would need to transmit payment information to the digital content provider such as a credit card number and expiration date in order to complete the purchase. Such payment information would need to be entered by the user for each and every purchase transaction. However with this optional feature the user would need only enter the credit card information during a one-time setup, after which the recognition and authentication means would automatically transmit the credit card information to complete each purchase.
In particular, each remote control optionally incorporates a recognition device for uniquely identifying the individual utilizing the remote control, bi-directional RF communications, and an authentication system to communicate the recognition information in a secure manner to the media unit. Examples of recognition devices include biometric security devices and/or codes/passwords entered into the remote control by the user. As is typical with user authentication methods, the media unit and remote control will operate cooperatively through the bi-directional RF communication means such that in the case where authentication is required, the user can perform a simple/quick action such as a finger swipe on a fingerprint scanner to authorize a purchase, gain access to restricted content files, or gain access to files stored remotely to the media unit in a secure manner.
Another optional feature involves the remote controls containing local channel buttons such as described previously, could be used in media systems which distribute content streams to media demodulation devices via using systems other than modulated local channels on cable infrastructures. For example, the media unit might distribute content streams to media demodulation devices via a wireless network as opposed to a cable infrastructure, where the media demodulation devices incorporate capabilities to receive and demodulate the wireless network signals. In this case the function and use of the local channel buttons as described previously would still be advantageous.
In particular, the remote controls would be constructed and operate as described previously. Communication from the remote controls to the media demodulation devices would operate as described previously, and communication from the remote controls to the media unit would operate as described previously. However the initial set-up of the remote controls and media unit would not need to include anything related to identification and selection of local modulated channels, and instead the initial set-up would consist of such actions as necessary to create the capability for any press of a local channel button on a remote control to cause the same end results in the media system as described previously.
Another optional feature allows the user to select media content from a remote source and instead of saving the content to the data storage device, the media content is played back in a real-time streaming manner. This feature allows the user to view content without consuming capacity in the data storage device, and may also facilitate access to remote content where the content owner authorizes real-time viewing, but not storage, of the content.
In particular, the media system would operate substantially as previously described with the exception that the remote content is routed from the remote source, to an audio/video decoder within the media unit without first being stored on the data storage device in a permanent manner. As is typical with playback of streaming content, a buffer memory might be employed to first store a portion of the content stream and then playback would occur out of the buffer memory in a first-in-first-out manner in order to reduce unwanted playback pauses due to temporary delays in the transmission of the content stream from remote source to the media system.
While a number of exemplary aspects and embodiments have been discussed above, those of skill in the art will recognize certain modifications, permutations, additions and sub-combinations thereof. It is therefore intended that the following appended claims and claims hereafter introduced are interpreted to include all such modifications, permutations, additions and sub-combinations as are within their true spirit and scope.