US20160353153A1 - Remote control programming system - Google Patents
Remote control programming system Download PDFInfo
- Publication number
- US20160353153A1 US20160353153A1 US15/231,548 US201615231548A US2016353153A1 US 20160353153 A1 US20160353153 A1 US 20160353153A1 US 201615231548 A US201615231548 A US 201615231548A US 2016353153 A1 US2016353153 A1 US 2016353153A1
- Authority
- US
- United States
- Prior art keywords
- remote control
- control
- user interface
- electronic device
- codes
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
- 238000000034 method Methods 0.000 claims abstract description 21
- 230000008054 signal transmission Effects 0.000 claims 1
- 239000002131 composite material Substances 0.000 description 17
- 238000003860 storage Methods 0.000 description 13
- 238000012545 processing Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 9
- 230000008569 process Effects 0.000 description 9
- 230000006835 compression Effects 0.000 description 8
- 238000007906 compression Methods 0.000 description 8
- 238000013459 approach Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 7
- 230000015654 memory Effects 0.000 description 6
- 238000002360 preparation method Methods 0.000 description 6
- 238000003825 pressing Methods 0.000 description 6
- 238000001228 spectrum Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 238000005422 blasting Methods 0.000 description 3
- 239000000835 fiber Substances 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000011664 signaling Effects 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 240000007711 Peperomia pellucida Species 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- TVZRAEYQIKYCPH-UHFFFAOYSA-N 3-(trimethylsilyl)propane-1-sulfonic acid Chemical compound C[Si](C)(C)CCCS(O)(=O)=O TVZRAEYQIKYCPH-UHFFFAOYSA-N 0.000 description 1
- 241000283973 Oryctolagus cuniculus Species 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 210000005069 ears Anatomy 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 229940018489 pronto Drugs 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/41—Structure of client; Structure of client peripherals
- H04N21/422—Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS]
- H04N21/42204—User interfaces specially adapted for controlling a client device through a remote control device; Remote control devices therefor
- H04N21/42226—Reprogrammable remote control devices
-
- G—PHYSICS
- G08—SIGNALLING
- G08C—TRANSMISSION SYSTEMS FOR MEASURED VALUES, CONTROL OR SIMILAR SIGNALS
- G08C23/00—Non-electrical signal transmission systems, e.g. optical systems
- G08C23/04—Non-electrical signal transmission systems, e.g. optical systems using light waves, e.g. infrared
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B27/00—Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
- G11B27/005—Reproducing at a different information rate from the information rate of recording
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B27/00—Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
- G11B27/10—Indexing; Addressing; Timing or synchronising; Measuring tape travel
- G11B27/102—Programmed access in sequence to addressed parts of tracks of operating record carriers
- G11B27/105—Programmed access in sequence to addressed parts of tracks of operating record carriers of operating discs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/251—Learning process for intelligent management, e.g. learning user preferences for recommending movies
- H04N21/252—Processing of multiple end-users' preferences to derive collaborative data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/254—Management at additional data server, e.g. shopping server, rights management server
- H04N21/2543—Billing, e.g. for subscription services
- H04N21/2547—Third Party Billing, e.g. billing of advertiser
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/258—Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
- H04N21/25866—Management of end-user data
- H04N21/25891—Management of end-user data being end-user preferences
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/41—Structure of client; Structure of client peripherals
- H04N21/414—Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance
- H04N21/4147—PVR [Personal Video Recorder]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/41—Structure of client; Structure of client peripherals
- H04N21/422—Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS]
- H04N21/42204—User interfaces specially adapted for controlling a client device through a remote control device; Remote control devices therefor
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/41—Structure of client; Structure of client peripherals
- H04N21/422—Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS]
- H04N21/42204—User interfaces specially adapted for controlling a client device through a remote control device; Remote control devices therefor
- H04N21/42226—Reprogrammable remote control devices
- H04N21/42227—Reprogrammable remote control devices the keys being reprogrammable, e.g. soft keys
- H04N21/42228—Reprogrammable remote control devices the keys being reprogrammable, e.g. soft keys the reprogrammable keys being displayed on a display screen in order to reduce the number of keys on the remote control device itself
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/432—Content retrieval operation from a local storage medium, e.g. hard-disk
- H04N21/4325—Content retrieval operation from a local storage medium, e.g. hard-disk by playing back content from the storage medium
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/433—Content storage operation, e.g. storage operation in response to a pause request, caching operations
- H04N21/4331—Caching operations, e.g. of an advertisement for later insertion during playback
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/433—Content storage operation, e.g. storage operation in response to a pause request, caching operations
- H04N21/4334—Recording operations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
- H04N21/44008—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics in the video stream
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
- H04N21/44016—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving splicing one content stream with another content stream, e.g. for substituting a video clip
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/45—Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
- H04N21/4508—Management of client data or end-user data
- H04N21/4532—Management of client data or end-user data involving end-user characteristics, e.g. viewer profile, preferences
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/45—Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
- H04N21/454—Content or additional data filtering, e.g. blocking advertisements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/45—Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
- H04N21/466—Learning process for intelligent management, e.g. learning user preferences for recommending movies
- H04N21/4662—Learning process for intelligent management, e.g. learning user preferences for recommending movies characterized by learning algorithms
- H04N21/4663—Learning process for intelligent management, e.g. learning user preferences for recommending movies characterized by learning algorithms involving probabilistic networks, e.g. Bayesian networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/482—End-user interface for program selection
- H04N21/4825—End-user interface for program selection using a list of items to be played back in a given order, e.g. playlists
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/482—End-user interface for program selection
- H04N21/4826—End-user interface for program selection using recommendation lists, e.g. of programs or channels sorted out according to their score
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/482—End-user interface for program selection
- H04N21/4828—End-user interface for program selection for searching program descriptors
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/485—End-user interface for client configuration
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/65—Transmission of management data between client and server
- H04N21/654—Transmission by server directed to the client
- H04N21/6543—Transmission by server directed to the client for forcing some client operations, e.g. recording
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/81—Monomedia components thereof
- H04N21/812—Monomedia components thereof involving advertisement data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/81—Monomedia components thereof
- H04N21/8146—Monomedia components thereof involving graphical data, e.g. 3D object, 2D graphics
- H04N21/8153—Monomedia components thereof involving graphical data, e.g. 3D object, 2D graphics comprising still images, e.g. texture, background image
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/84—Generation or processing of descriptive data, e.g. content descriptors
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/845—Structuring of content, e.g. decomposing content into time segments
- H04N21/8455—Structuring of content, e.g. decomposing content into time segments involving pointers to the content, e.g. pointers to the I-frames of the video stream
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
- H04N5/78—Television signal recording using magnetic recording
- H04N5/782—Television signal recording using magnetic recording on tape
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/16—Analogue secrecy systems; Analogue subscription systems
- H04N7/162—Authorising the user terminal, e.g. by paying; Registering the use of a subscription channel, e.g. billing
- H04N7/163—Authorising the user terminal, e.g. by paying; Registering the use of a subscription channel, e.g. billing by receiver means only
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/16—Analogue secrecy systems; Analogue subscription systems
- H04N7/173—Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/16—Analogue secrecy systems; Analogue subscription systems
- H04N7/173—Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
- H04N7/17309—Transmission or handling of upstream communications
- H04N7/17318—Direct or substantially direct transmission and handling of requests
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/16—Analogue secrecy systems; Analogue subscription systems
- H04N7/173—Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
- H04N7/17345—Control of the passage of the selected programme
- H04N7/17354—Control of the passage of the selected programme in an intermediate station common to a plurality of user terminals
-
- G—PHYSICS
- G08—SIGNALLING
- G08C—TRANSMISSION SYSTEMS FOR MEASURED VALUES, CONTROL OR SIMILAR SIGNALS
- G08C2201/00—Transmission systems of control signals via wireless link
- G08C2201/20—Binding and programming of remote control devices
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B2220/00—Record carriers by type
- G11B2220/20—Disc-shaped record carriers
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B27/00—Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
- G11B27/10—Indexing; Addressing; Timing or synchronising; Measuring tape travel
- G11B27/34—Indicating arrangements
-
- H04N2005/4435—
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
- H04N5/78—Television signal recording using magnetic recording
- H04N5/781—Television signal recording using magnetic recording on disks or drums
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
- H04N5/84—Television signal recording using optical recording
- H04N5/85—Television signal recording using optical recording on discs or drums
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
- H04N5/907—Television signal recording using static stores, e.g. storage tubes or semiconductor memories
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N9/00—Details of colour television systems
- H04N9/79—Processing of colour television signals in connection with recording
- H04N9/80—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
- H04N9/804—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components
- H04N9/8042—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components involving data reduction
Definitions
- This invention relates to programming a remote control.
- VCRs videocassette recorders
- Remote controls typically use infra-red (IR) signals to communicate with devices that they operate. Each IR signal may be described using an IR code.
- Remote controls that communicate with IR signals typically use an embedded microprocessor and an embedded non-volatile memory chip to store control tables that specify the IR signaling required for communication with the device that the remote control operates.
- Remote controls are generally compatible only with a set of devices for which the remote control stores data in the control tables. In other words, a remote control for a TV of brand A will likely not work with a receiver of brand B. Sometimes, even among products of a specific brand, remote controls will not be compatible for a variety of reasons, including (a) different control methods, such as radio frequency (RF) and Infrared (IR), may be used, (b) different signaling protocols, such as variations on pulse width and pulse position, may be used, and (c) different button encodings may be used.
- RF radio frequency
- IR Infrared
- a universal remote control is a remote control that will, within limitations, emulate a wide variety of other remote controls, allowing a user to replace a collection of remote controls with a single remote control.
- Universal remote controls are designed to generate a variety of signals to support the broadest range of devices.
- a pre-programmed universal remote control is configured to emulate a fixed number of remote controls.
- Each brand of device may assign a remote control with a particular code (referred to herein as a “mode code”) that describes how to specify any operation by that remote control.
- a particular mode code specifies a set of IR signals (or a set of IR codes) that the remote control supports.
- a user To use a pre-programmed universal remote control, a user must configure the pre-programmed universal remote control by indicating which remote control to emulate by entering in the specific mode code (which can be, for example, a four digit numeric code, e.g., “1234”) that is assigned to the particular remote control that the user wishes the pre-programmed universal remote control to emulate.
- the specific mode code which can be, for example, a four digit numeric code, e.g., “1234”
- the user must determine which mode code that is supported by the pre-programmed universal remote control in a process that usually involves trial-and-error.
- the user enters in a set of numbers into the pre-programmed universal remote control to indicate a possible mode code, and thereafter, the user presses a button (e.g., power) to see if the mode code works, i.e., a mode code works if the pre-programmed universal remote control performs the desired action on the intended device using the set of IR codes associated with the mode code. If the selected mode code does not work, the user must try another mode code. This is a time consuming process that is subject to error and may be frustrating to the user.
- a learning universal remote control may be programmed to emulate another remote control, generally by programming one operation at a time.
- a learning universal remote control may capture and copy the IR codes produced by another remote control issuing a command.
- a user typically configures a learning universal remote control by (a) facing the learning universal remote control towards another remote control, (b) entering a sequence of buttons on the learning universal remote control to initiate the copying of a particular command, and (c) pressing a button on the other remote to generate an IR signal carrying the IR code which is captured by the learning universal remote control.
- the learning universal remote control can thereafter generate that IR code (or something similar) to perform the same operation on the same device as the other remote control.
- programming a learning universal remote control may be a complicated and time-consuming process.
- An additional type of remote control may be programmed via a computer link.
- a programmable universal remote control may connect to a computer through an interface, such as a USB port, to download information instructing the programmable universal remote control on how to emulate a particular remote control.
- Programming a programmable universal remote control undesirably requires an appropriate interface to connect with a computer configured to instruct the programmable universal remote control, which may not always be available. Further, users may find programming a programmable universal remote control to be a confusing, frustrating, and time-consuming process.
- FIG. 1 depicts a system controlling a set-top box according to an embodiment of the invention
- FIG. 2 depicts a system block diagram according to an embodiment of the invention
- FIG. 3 depicts a data flow regarding IR control of an external set-top box according to an embodiment of the invention
- FIG. 4 is a block diagram of a system according to an embodiment of the invention.
- FIG. 5 depicts a remote control according to an embodiment of the invention.
- FIG. 6 is a flowchart illustrating the functional steps of an embodiment of the invention.
- Embodiments of the invention provide for programming a remote control in an easy and intuitive manner.
- Embodiments of the invention allow a user to configure a first remote control (referred to herein as a target remote control) to emulate the functionality of a second remote control (referred to herein as the source remote control).
- a target remote control referred to herein as a target remote control
- the source remote control For example, users may use embodiments of the invention to configure a target remote control to emulate the functionality of a plurality of source remote controls, i.e., a single target remote control may be configured to emulate the functionality of more than one source remote control.
- the mode code of a source remote control is identified and thereafter communicated to the target remote control.
- the mode code of the source remote control may be identified, as explained in further detail below, by analyzing the IR codes contained within received signals transmitted from the source remote control.
- a computing device stores control data that identifies one or more mode codes.
- Each of the one or more mode codes identifies a set of signals (or IR codes) used by a type of remote control to control a type of device.
- the computing device also stores data about the set of IR codes associated with each mode code.
- the computing device may be implemented using a Digital Video Recorder (DVR) from TiVo, Inc.
- the DVR stores control data that identifies how to program a variety of remote controls.
- the computing device is coupled to a detector that is capable of exchanging signals with a remote control, e.g., the DVR contains IR control 620 , described in further detail below.
- the computing device may display instructions and/or assistance on a display, such as a television, to walk the user through all parts and aspects of the process.
- a user presses a button on the source remote control to cause a signal, such as an IR signal containing an IR code, to be transmitted from the source remote control to be received by the computing device.
- the computing device analyzes the received signal to determine operation data that identifies an operation indicated by the signal.
- the operation data may contain an IR code. For example, if the user pressed the button to increase the volume, then the operation data contained within the signal would indicate the IR code associated with the operation to increase the volume on the device being controlled by the source remote control.
- the computing device consults the control data store to determine, based at least in part on the operation data, a particular mode code that is associated with the source remote control.
- the particular mode code identifies the set of signals used by the source remote control to control a particular device.
- the computing device may determine that the source remote control is model XYZ because the IR code contained in the operation data received in the signal matches model XYZ.
- the computing device may use the IR codes contained within the operation data to determine the mode code of the source remote control.
- the particular mode code may be used to program the target remote control using a variety of methods.
- the computing device may display a user interface on a display, such as a television, that visibly presents the particular mode code to the user. The user may thereafter manually program the target remote control with the particular mode code.
- the computing device may transmit the particular mode code to the target remote control. Once the particular mode code is received by the target remote control, the target remote control may configure itself using the particular mode code without user intervention.
- the computing device may allow a user to select a particular brand of a device by the target remote control on a user interface. Once the computing device receives data that indicates the user's selection, the computing device may eliminate possible modes codes based on the selected brand. Additionally, the computing device may suggest to the user certain operations to perform or keys to press on the source remote control to help distinguish the mode code of the source remote control between possible mode code candidates based on the IR code produced by the source remote control.
- FIG. 1 depicts a system 100 including set-top control unit 110 controlling an external set-top box 200 in accordance with certain embodiments.
- Certain embodiments are implemented as an advanced set-top unit 110 packaged in a shipping container with cables, accessories, and a remote control 120 . Certain further embodiments provide control of cable and satellite set-top boxes 200 by IR control 114 . Certain embodiments support some satellite boxes 200 by serial control 114 .
- remote control unit 120 may be a TiVo Remote Control Unit, available from TiVo Incorporated, of Alviso, Calif.
- the television source 202 can be from a variety of sources, including: 1) a roof-top antenna or rabbit ears receiving terrestrial analog broadcast, 2) a buried coaxial cable delivering analog and digital cable signals, 3) a satellite antenna receiver digital satellite broadcast, and 4) a roof-top antenna receiving terrestrial digital broadcast.
- the signal source 202 is from a roof-top or rabbit ear antenna
- a user connects the cable from the antenna directly to the RF input on the Set-top control unit.
- the internal tuner in the Set-top control unit set-top box is used to select which program to view or record. The viewer selects which channel to tune to by using the remote control unit 120 . After the selection is made, the Set-top control unit tunes its internal tuner to receive the channel selected.
- the user can choose to: 1) connect the cable to an analog set-top box, 2) connect the cable to a digital set-top box, or 3) connect the cable directly to the Set-top control unit.
- the cable may be fiber optic. In certain other embodiments, the cable may be coaxial cable.
- the cable is connected to the cable set-top box.
- the cable may be fiber optic. In certain other embodiments, the cable may be coaxial cable.
- the cable set-top box contains an internal tuner that will be tuned to the channel the viewer wishes to view or record.
- the cable set-top box 200 is then connected 118 to the Set-top control unit 110 in one of two ways:
- the viewer selects which channel to tune to by using the Remote Control Unit 120 .
- the set-top control unit 110 transmits an IR signal 114 to the Cable set-top box 200 and the Cable set-top box 200 tunes its internal tuner to the channel.
- the channel is passed to the set-top control unit 110 by either the RF, composite, or S-Video outputs.
- the set-top control unit 110 must be configured to receive the channel from its RF, composite, or S-Video inputs. If the RF input is selected, the Set-top control unit 110 must also tune its internal tuner 640 (see FIG. 2 ) to either channel 3 or 4, depending upon which channel the cable box 200 is configured to receive the signal.
- the cable 118 is connected to the digital cable set-top box 200 .
- the cable may be fiber optic. In certain other embodiments, the cable may be coaxial cable.
- the digital cable set-top box 200 contains an internal tuner that will be tuned to the channel the viewer wishes to view or record.
- the cable set-top box 200 connects 118 to the set-top control unit 110 in one of two ways:
- the viewer selects which channel to tune to by using the TiVo Remote Control Unit 120 .
- the Set-top control unit 110 transmits 114 an IR signal to the digital cable set-top box 200 and the digital cable set-top box 200 tunes its internal tuner to the channel.
- the channel is passed 118 to the TiVo set-top unit 110 by either the RF, composite, or S-Video outputs.
- the TiVo set-top unit 110 must be configured to receive 118 the channel from its RF, composite, or s-video inputs. If the RF input is selected, the Set-top control unit 110 must also tune its internal tuner 640 (see FIG. 2 ) to either channel 3 or 4, depending on which channel the digital cable box 200 is configured to receive the signal.
- the satellite receiver digital set-top box 200 is connected 118 to the Set-top control unit 110 in an identical fashion as described above for a digital cable set-top box 200 .
- the preferred connection for a satellite receiver is using the S-Video connectors in certain embodiments for the highest quality connection. Such connection also leaves the RF input connection on the Set-top control unit 110 free to attach a cable or roof-top antenna to receive local channels.
- serial output port 508 (see FIG. 2 ) on the Set-top control unit 110 can be connected 114 to the serial data port on the satellite receiver.
- the signal source 202 is from a digital terrestrial antenna and the digital terrestrial set-top box 200 provides an option to output standard NTSC compatible video on either RF, composite, or S-Video outputs. Then one of these outputs can be connected 118 to the corresponding input on the Set-top control unit 110 .
- the digital terrestrial set-top box 200 is connected 118 to the Set-top control unit 110 in an identical fashion as described above for a digital cable set-top box 200 .
- the connection 118 using S-Video provides the highest quality connection in certain embodiments.
- Certain embodiments provide server based services through modem access 116 . Certain further embodiments provide server based services which include TiVo Services through modem access 116 or network access.
- Certain further embodiments support at least some of the following features: Records television programming in digital form on at least one internal hard disk drive. Certain further embodiments support 10 hours of recorded programming and certain other further embodiments support 30 or more hours of programming. Certain embodiments support digital recording of audio-video content including random access to titled programming. Certain further embodiments support digitally accurate fast forward, rewind, slow motion, frame forward, frame back and high-quality freeze frame. Certain embodiments provide a 30 minute buffer of live programming being viewed enabling the viewer to pause, rewind and fast forward live TV.
- Certain embodiments provide instant replay of live or recorded sporting events and educational programs. Certain embodiments provide programmable scheduling by time and channel, just like a VCR. Certain embodiments allow viewers to save recorded programs to their VCRs. Certain embodiments provide selectable recording quality.
- Certain embodiments provide a RF input 644 with tuner 640 , which is compatible with cable and terrestrial broadcast TV (see FIG. 2 ). Certain embodiments provide selectable RF input on channel 3, RF input on channel 4, composite, S-Video input, or digital input support for analog cable, digital cable, or satellite set-top devices.
- a set-top control unit 110 is portable; electronics of the set-top control unit 110 are housed in a metal enclosure approximately 17 inch wide, 13 inches deep and 4 inches high.
- connection 132 feeds signals from a composite video output 550 (see FIG. 2 ) of set-top control unit 110 .
- connection 132 feeds signals from an S-video output 548 (see FIG. 2 ) of set-top control unit 110 .
- signals can be digital in addition to, or instead of, analog.
- FIG. 2 depicts a system block diagram set-top control unit 110 in accordance with certain embodiments.
- This particular embodiment represents a relatively low level of integration.
- a particular alternative embodiment incorporates elements of the Processor Subsystem 500 , IR Controller 620 and Media Switch 560 into a single integrated circuit.
- the electronics of set-top control unit 110 consists of a main System Board 400 , an IR Controller Board (IR Ctrl) 572 , a mass storage system 578 , a Fan, and a Power Supply.
- Set-top control unit 110 supports one left-right stereo pair audio input 532 - 534 , one composite video input 522 , one S-Video input 524 , one RF input 644 and one RF output 642 modulated onto either channel 3 or 4.
- digital interfaces such as S/PDIF, Toslink, DVI, and HDMI are supported.
- Mass storage system 578 may include any number and type of disk drives in certain embodiments. In certain embodiments, mass storage system 578 may be implemented using Flash memory.
- the set-top control unit 110 provides at least one left-right stereo pair audio outputs 544 - 546 , at least one composite video output 550 , at least one S-Video output 548 , at least one serial input/output 508 , at least one IR blaster output 622 , at least one IR input 622 , and at least one modem input/output 510 which may be connected 116 to an associated phone line in certain embodiments.
- IR control 572 is shown as a single entity in FIG. 2 ; however, IR control 572 may be implemented in other embodiments using a first component responsible for IR transmission, and a second component responsible for IR reception.
- IR control 572 may be implemented by any functional component (or set of components) that are capable of sending and receiving an input signal (IR, RF, or any other type of signal), and is not limited to infra-red input signals, but rather any type of input signal, including, but not limited to, sound and any portion of the electro-magnetic spectrum.
- IR control 572 may be implemented by a functional component that is capable of receiving an analog signal and converting the analog signal into a digital form for processing.
- the IR control 572 may be implemented using any combination of hardware and software.
- the disk drive(s) in mass storage system 600 are connected by a cable 564 to the System Board 400 .
- the Fan is connected to the System Board 400 with a cable 562 .
- the Power Supply is connected to the System Board 400 and mass storage system 600 with power cables.
- the system board 400 can be generally divided into: 1) subsystems that convert analog video and audio from analog to digital data; 2) subsystems that process digital audio and video data; and 3) subsystems that convert digital data back to analog.
- digital data is converted to other digital formats such as HDMI.
- the Tuner subsystem 810 and video and audio input subsystem 570 accept as input standard analog video and audio signals from set-top boxes, roof-top antennas, or rabbit ear antennas.
- the video and audio input subsystem 570 converts these signals into digital media streams.
- the digital media streams 536 and 502 are processed and stored in the mass storage system 578 by Media Switch 560 and Processor Subsystems 500 .
- Media streams 542 selected by the user to view are retrieved 564 from the mass storage system 578 by the Media Switch 560 and Processor Subsystem 500 .
- Retrieved media stream 542 is converted from digital to analog by the Video and Audio Output Subsystem 540 .
- Media Switch 560 and Processor Subsystem 500 also perform miscellaneous house keeping functions such as temperature monitoring and fan control 562 .
- the Security Microprocessor 580 performs system identification and authentication for security purposes.
- the System Board partitions into CPU, Input, and Output Subsystems. Each subsystem will be discussed in more detail below.
- the Processor subsystem 500 includes the following in certain embodiments.
- the CPU is an IBM Power PC.
- the boot ROM is a 1 mega-bit Flash.
- the main memory is 4 meg ⁇ 32-bit, implemented using two 4096k ⁇ 16-bit EDO RAMs.
- the serial port is multiplexed to interface to the IR Controller Board and the Security Microprocessor.
- a second serial UART implements the external serial port that controls DSS Receivers.
- the modem is implemented with a Rockwell chipset and has an attached 1 mega-bit Flash that contains its microcode.
- the Media Switch ASIC controls multimedia streams to and from the disk drive. It also implements a number of system functions including the IDE disk drive controller, fan control and i2C bus control.
- the CPU Subsystem has a battery backed-up real-time clock and a temperature sensor interfaced to the i2C bus.
- the I2C bus is also used to control 502 Video and Audio Input system 570 and to control 506 Video and Audio Output Subsystem 540 .
- the Video and Audio Input Subsystem 570 inputs video and audio from I/O connectors, converts it from analog to digital and encodes it using MPEG2 compression. Channel selection is performed with a tuner 810 when the RF input is selected. The video and audio are converted from analog to digital and then passed to a compression engine. In certain embodiments, only one video/audio source can be selected at a time to be processed by the compression engine.
- the video compression is performed with an MPEG encoder chip set in certain embodiments.
- an MPEG encoder chip set coupled with RAM memories performs video compression.
- the MPEG encoder chip set is composed of exactly one integrated circuit.
- a Sony MPEG2 encoder chip performs video compression in certain further embodiments.
- a DSP is used in certain embodiments to perform audio compression.
- a DSP from Analog Devices is used to perform audio compression.
- the Video and Audio Output Subsystem 540 decompresses video and audio cached on mass storage system 578 , converts it back into analog signals, and drives the output connectors.
- Certain embodiments of set-top control unit 110 support at least one stereo pair of audio output, at least one composite video output, at least one S-Video output and at least one RF output modulated onto either channels 3 or 4.
- Certain further embodiments of set-top control unit 110 support at least two stereo pair of audio output and at least two composite video outputs.
- the compressed video/audio stream 542 is transferred to an MPEG2 decoder chip set for decoding in certain embodiments.
- the MPEG decoder chip set is coupled to RAM memory.
- the compressed video/audio stream 542 is transferred to an IBM MPEG2 decoder chip with coupled RAM memory for decoding in certain further embodiments.
- the uncompressed digital video, output by the MPEG decoder chip set, is sent to a video encoder to convert the video back into analog form before driving the video output connectors in certain embodiments.
- a Phillips video encoder chip performs the conversion. Audio is mixed with user interface sound effects before driving the audio output connectors in certain embodiments. Audio is converted from digital into analog and then mixed with user interface sound effects before driving the audio output connectors in certain further embodiments.
- the IR Controller Board 572 contains an IR Microcontroller, an IR Photo receiver module, and LED's indicators.
- IR controller board 572 is connected 514 to the System Board with a ribbon cable that connects the IR Microcontroller to the Power PC using the Power PC's serial port in certain embodiments.
- the IR receive and transmit control functions are incorporated into the same integrated circuit as the Processor Subsystem and are connected internally.
- the IR photo receiver and LED indicators may be on a separate board than the integrated circuit, connected by a cable.
- One of ordinary skill in the art shall appreciate that there are many ways to configure IR transmit and receive hardware.
- Set-top control unit 110 mass storage system 578 supports any number of disk drives in certain embodiments.
- the power for the disk drives is connected directly from the power supply.
- the IDE interfaces of the drives are connected 564 to the System board with a flat ribbon cable.
- IR control codes are stored in an IR control code database 1100 (see FIG. 3 ) residing on mass storage system 578 .
- FIG. 3 depicts data flow regarding IR control of external set-top boxes in accordance with certain embodiments.
- IR control database 1100 resides on the mass storage system 578 and contains at least one IR control entry.
- a first IR control entry is accessed 1102 to IR control generator 1110 .
- IR control generator 1110 processes the IR control entry and sends 1112 - 1122 it to be prepared 1130 for presentation 1132 to a serial device 1140 .
- Serial device 1140 serially transmits this presented information as control signals to an external set-top box.
- timing generation 1120 is performed before 1122 it is prepared 1130 for presentation 1132 to a serial device 1140 .
- preparation 1130 includes processing similar to the “C” programming language function “sprintf”.
- preparation 1130 includes multiplexing serial streams to be sent to serial device 1140 .
- preparation 1130 includes queuing various multiplexed serial streams to be sent to serial device 1140 .
- the serial device 1140 includes at least one IR controller. In certain further embodiments, the serial device 1140 further includes a second serial device physical transport layer, which may include either wireline or wireless transport mechanisms.
- raw IR control library 1180 resides on the mass storage system 600 and contains at least one raw IR control entry.
- a first raw IR control entry is accessed 1182 by a library parsing operation 1190 to create a processed first IR control entry.
- the processed first IR control entry is communicated 1192 and received 1192 to create a received first IR control entry.
- the received first IR control entry is inserted into IR control database 1100 as an IR control entry of the IR control database 1100 .
- first raw IR control entry is accessed 1182 by a library parsing operation 1190 to create a processed first IR control entry syntactic specification.
- the processed first IR control entry syntactic specification is communicated 1192 and received 1192 to create a received first IR control entry.
- Syntactic specifications provide for the specification of many crucial forms of communication information in an IR control entry. This includes but is not limited to specification of how many digits are in a channel. This also includes but is not limited to specifying whether an enter or cancel key is used at the end of IR blasting sequence to delimit channels. This also includes but is not limited to specifying delays between transmission of digits or symbols. This also includes but is not limited to specifying prefix keys. Prefix keys are not digits, which may used to delimit switch settings in certain embodiments. Many set-top boxes have an A/B switch, often with channels on both A and B switch settings. Some set-top boxes supporting satellite reception further have a C-band switch setting. This also includes but is not limited to specifying postfix keys. Postfix keys are not digits which alter the interpretation of the preceding IR blasting sequence.
- syntactic specification may be the entire IR control entry, or a part of the entry. This also includes but is not limited to syntactic specifying IR control entries further referencing other syntactic specifying IR control entries. This supports development of complex blasting codes to perform essentially macro operations.
- the first raw IR control entry is accessed 1184 by raw data IR generator 1200 to create a raw IR control packet, which processes the raw IR control packet and sends 1202 - 1122 it to be prepared 1130 for presentation 1132 to a serial device 1140 .
- Serial device 1140 serially transmits this presented information as control signals to an external set-top box.
- timing generation 1120 is performed before 1122 it is prepared 1130 for presentation 1132 to a serial device 1140 .
- preparation 1130 includes processing similar to the “C” programming language function “sprintf”.
- preparation 1130 includes multiplexing serial streams to be sent to serial device 1140 .
- preparation 1130 includes queuing various multiplexed serial streams to be sent to serial device 1140 .
- a prototype IR control database 1150 resides on mass storage system 600 containing at least one prototype IR control entry.
- a control code search 1160 accessing 1152 a first prototype IR control entry creates a first raw IR control entry for raw IR control library 1180 .
- the first prototype IR control entry is accessed 1154 by timing interface 1160 to create a first IR control packet, which then follows the same data flow 1122 as has been previously described.
- FIG. 4 is a block diagram of a system 4000 according to an embodiment of the invention.
- System 4000 includes a computing device 4101 , a detector 4020 , a source remote control 4040 , a target remote control 4050 , and communications links 4060 and 4062 .
- Computing device 4010 may be implemented using any computerized device that is capable of processing and storing control data.
- computing device 4010 (in conjunction with detector 4020 ) performs the functional steps illustrated in FIG. 6 .
- the functions performed by computing device 4010 are described in further detail below.
- Detector 4020 is a functional component that receives signals from remote controls, sends signals to remote controls. Detector 4020 is operationally connected to computing device 4010 , and may exchange data with computing device 4010 . Detector 4020 may be implemented using any means that can exchange signals over communications links 4060 and 4062 with remote controls. Detector 4020 captures and decodes signals received from remote controls. Although many remote controls use radio frequency (RF) or infra-red (IR) transmitters, detector 4020 may communicate with remote controls using any transmission medium, including portions of the electromagnetic spectrum and sound.
- RF radio frequency
- IR infra-red
- FIG. 4 The functional components of FIG. 4 are not intended to represent the only embodiments of the invention, as other embodiments may perform the functions described above in a single component, or multiple other components.
- computing device 4010 includes a control data store 700 that may be implemented using any volatile or non-volatile memory capable of storing control data.
- Control data described in further detail below, is used by certain embodiments to program target remote control unit 4050 .
- Control data may be populated in control data store by a variety of means, e.g., it may be stored at time of manufacturer of computing device 4010 or may be loaded into control data store over a network connection (not shown).
- Source remote control 4040 refers to any remote control whose functions are to be emulated in target remote control 4050 .
- Target remote control 4050 refers to any remote control that is being configured to emulate the functionality, in whole or in part, of source remote control 4040 . While only one source remote control is depicted in FIG. 4 for ease of explanation, system 4000 may be employed to copy the functionality, in whole or in part, of any number of source remote controls 4040 to target remote control 4050 .
- Communications link 4060 may be implemented by any medium or mechanism that provides for the exchange of data between detector 4020 and target remote control 4050 .
- Communications link 4062 may be implemented by any medium or mechanism that provides for the exchange of data between detector 4020 and source remote control 4040 .
- Examples of communications links 4060 and 4062 include, without limitation, IR signals, RF signals, sound, and any portion of the electromagnetic spectrum.
- FIG. 5 depicts a hand held remote control 120 in accordance with an embodiment of the invention.
- the remote control in FIG. 5 may be used as source remote control 4040 or target remote control 4050 .
- the remote control of FIG. 5 is merely illustrative, as any remote control may be used as either source remote control 4040 and any universal remote control may be used as target remote control 4050 .
- FIG. 6 is a flowchart illustrating the functional steps of an embodiment of the invention.
- control data that identifies one or more mode codes is stored.
- Control data may be stored in step 610 in control data store 700 .
- Control data contains information about remote control signaling, e.g., the data store may contain information about a set of mode codes, and information about the set of IR codes associated with each mode code.
- Control data is used to match input signals transmitted by a remote control device to known signals of remote controls.
- control data store 700 stores information employed by embodiments to map one or more user button presses to a set of mode codes.
- the control data store 700 may contain sets of all mode codes for a particular remote control, and the set of IR codes associated with each mode code.
- Control data store 700 may contain information about each remote control such as carrier frequency, pulse descriptions, protocol and button identifiers.
- Control data store 700 may also contain information that maps mode codes to a brand of the target devices controlled by the mode codes.
- Control data store 700 may be organized for more efficient processing. For example, it may be presorted or include an index, such as an index on a brand of a device controlled by a remote control or an index on any detectable element of the remote control signal. Data stored in control data store 700 may be preprocessed (possibly including hand processing) to optimize the user interaction. Data stored in control data store 700 may also be compressed to store as much data in control data store as possible. After the performance of step 610 , processing proceeds to step 620 .
- Step 620 an input signal is received.
- Step 620 may be performed by a user directing a source remote control towards set-top unit 110 and pressing a button, e.g., pressing the number “3” on the source remote control.
- RF radio frequency
- IR Infrared
- an input signal may be sent to set-top unit 110 by the source remote control using a variety of means, e.g., anywhere within electromagnetic spectrum, sound, or any other method of transmitting a signal.
- the target remote control may also communicate using a variety of means, e.g., anywhere within electromagnetic spectrum, sound, or any other method of transmitting a signal.
- the input signal received in step 620 may be transmitted using any method for transmitting a signal.
- the input signal received in step 620 may contain an IR code.
- step 630 a particular mode code that is associated with the source remote control being configured is determined.
- set-top control unit 110 is configured to compare the received input signal received in step 620 to information stored in control data store 700 about which input signals match input signals from specific remote controls. Set-top control unit 110 determines which particular mode code, among the plurality of mode codes stored in control data store 700 , is associated with the source remote control.
- step 630 may be performed by analyzing the particular IR code contained within the input signal received in step 620 to determine if the IR code is used by any mode codes identified in the control data stored in the control data store 700 . If the IR code is uniquely associated with a particular mode code, then that mode code is the mode code associated with the source remote control. If two or more mode codes may produce the IR code received in the input signal received in step 620 , then the computing device will attempt to distinguish between those candidate mode codes, as explained in further detail below, to determine which of the candidate mode codes is associated with the source remote control.
- step 640 set-top control unit 110 displays the particular mode code determined in step 630 on a display, such as TV 130 .
- the set-top control unit 110 may display instructions on the TV to instruct the user on how to program target remote control using the mode code.
- the particular mode code determined in step 630 may be a short sequence of digits (e.g., 1, 2, 3, 4).
- the target remote control is programmed to emulate the specific remote control functionality indicated by the mode code.
- the target remote control emulates the functionality of the source remote control after the target remote control is configured with the particular mode code. Thereafter, the user may test the target remote control to see if the remote control is emulating the proper functionality, e.g., the user may try to turn the power on and off on the intended device or perform similar tests, and if the user is successful after performing each test, then the target remote control is emulating the functionality of the source remote control.
- step 650 set-top control unit 110 transmits the particular mode code chosen in step 630 to the target remote control.
- the target remote control may then configure itself using the received mode code. In this way, the user does not need to manually configure the target remote control.
- the user may configure the target remote control with greater ease and efficiency over prior approaches.
- the user may be presented information on TV 130 that clearly walks the user through the process of programming the target remote control.
- the user has to press only a small number of buttons on source remote control 120 to properly configure target remote control 120 to operate the intended device, thereby reducing both the potential for frustration and the time required in configuring target remote control 120 .
- control data store 700 is implemented on set-top control unit 110 .
- other devices may perform the steps illustrated in FIG. 6 .
- the control data store may also be implemented on a standalone device or integrated into another device, such as TV 130 .
- Any functional component may be configured to perform the steps of FIG. 6 if (a) the component can store control data, and (b) the component can send and receive signals from a remote control. Consequently, as other embodiments of the invention may store control data other than the set-top control unit 110 , embodiments of the invention are not limited to any particular component performing a particular step illustrated in FIG. 6 .
- set-top unit 110 may interact with the user to improve the accuracy, efficiency and/or simplicity of detecting the particular mode code.
- set-top control unit 110 may assist the determination of step 630 by eliminating one or more mode codes from the set of candidate mode codes being considered based on the brand of the device that the user wishes to control.
- set-top control unit 110 may display information on a display (such as TV 130 ) that instructs a user to select a brand of the device the user wishes to control with the target remote control.
- set-top control unit 110 may display a list of brands on TV 130 , and the user may use the target remote control to select one of the brands.
- set-top control unit 110 may display instructions on a display (such as TV 130 ) that instructs the user to press one or more buttons on the source remote control. Guiding the user to press one or more buttons in a sequence may be advantageous, as particular mode codes may be distinguished based on particular IR codes associated with the operation issued by pressing a button on the source remote control. In other words, by pressing one or a few buttons, the set-top control unit 110 may be able to distinguish a particular mode code from all other mode codes stored in the control data store 700 .
- the set-top control unit 110 may instruct the user to start by pressing the number “3” on the source remote control to narrow down the possible options in performing step 630 , as the IR code associated with the “3” button may be unique for those set of mode codes. If set-top control unit 110 is unable to determine the particular mode code associated with the source remote control after a first iteration, then set-top control unit 110 may instruct the user to press another button that may further narrow the options or resolve to the correct mode code associated with the source remote control.
- set-top control unit may transfer additional information, such as information describing a user interface to perform operations on the target remote control, to the target remote control.
- set-top control unit 110 may transfer information to target remote control describing a user interface associated with source remote control in step 630 .
- remote control may use the information to create a user interface displayed on target remote control to enable the user to use the target remote control to perform any operation associated with the source remote control.
- such an embodiment would allow the target remote control to implement a customized user interface based on a particular mode code that the target remote control was configured to emulate.
- target remote control may be configured to emulate a source remote control that controls any variety of devices.
- the target remote control may control any device, not just a component in a home entertainment center.
- the target remote control may operate kitchen appliances, computer equipment, an automobile, a garage door, etc.
- IR code has been used herein to refer to data that describes a command that is transmitted from a remote to another entity, as that is a commonly used term in the art as most commands are transmitted using infra-red (IR) signals.
- IR infra-red
- any medium may be used to transport commands from a remote control, e.g., the medium may be within the electromagnetic spectrum, sound, or any other method for transmitting a signal.
- IR code as used herein, is not limited to merely a code associated with an infra-red signal, but broadly encompasses any mechanism for identified a command that is transmitted from a remote control to another entity.
- Embodiments of the invention may program learning universal remote controls.
- a learning universal remote control may receive signals from set-top control unit 110 instructing the learning universal remote control to configure itself to emulate a specific remote control.
- Set-top control unit 110 may present information on a display, such as TV 130 , that instructs the user on how to program the learning universal remote control using data stored in the set-top control unit 110 .
- Set-top control unit 110 may instruct the user to position the target remote control in front of the IR control 620 , and the set-top control unit 110 may transmit one or more IR codes that are received by the target remote control. The received IR codes may be used by the target remote control to configure the target remote control.
- Embodiments of the invention may program programmable universal remote controls.
- the programmable universal remote control may communicate to set-top control unit 110 through an appropriate interface, such as an USB port, to receive mode codes to configure the programmable universal remote control.
- An embodiment of the invention may, in addition to transmitting one or more mode codes to a programmable universal remote control, also transmit information describing a user interface used on the programmable universal remote control.
- the set-top control unit 110 may provide information about a preconfigured user interface for use with a specific mode code.
- the set-top control unit 110 may enable the user to configure his or her own user interface to operate any device he or she wishes, thus allowing the user to make full use of the programmable universal remote control, as it may control any device in a home entertainment center or a device outside of a entertainment center, such as multiple consumer electronics devices, motorized blinds and remotely dimmable lights.
- the computing device 4101 may transmit one or more mode codes and/or data describing one or more user interfaces that enable one to submit one or more commands associated with a mode code to a programmable remote control, such as the PRONTO line remote controls manufactured by Phillips.
Abstract
Description
- This application claims benefit under 35 U.S.C. §120 as a Continuation of application Ser. No. 14/338,335, filed on Jul. 22, 2014, which is a Continuation of application Ser. No. 12/639,960, filed on Dec. 16, 2009, which claims benefit as a Continuation of application Ser. No. 10/958,674, filed on Oct. 4, 2004, which claims benefit of U.S. Provisional Patent Appln. No. 60/508,769, filed on Oct. 2, 2003, the entire contents of the aforementioned are hereby incorporated by reference as if fully set forth herein, under 35 U.S.C. §120. The applicant(s) hereby rescind any disclaimer of claim scope in the parent application(s) or the prosecution history thereof and advise the USPTO that the claims in this application may be broader than any claim in the parent application(s).
- This application is related to U.S. Pat. No. 7,484,234, titled “Method and Apparatus for Controlling at Least One Set-Top Box”, by Kurtis Heaton et al., filed on Apr. 24, 2000, the contents of which are herein incorporated by reference for all purposes as if originally set forth herein.
- This invention relates to programming a remote control.
- Originally, televisions possessed a simple user interface containing a channel selector, a volume control, and little else. Since the advent of videocassette recorders (VCRs), the user interface for controlling all the available options for displaying content on a television has increased in complexity.
- Remote controls typically use infra-red (IR) signals to communicate with devices that they operate. Each IR signal may be described using an IR code. Remote controls that communicate with IR signals typically use an embedded microprocessor and an embedded non-volatile memory chip to store control tables that specify the IR signaling required for communication with the device that the remote control operates.
- Remote controls are generally compatible only with a set of devices for which the remote control stores data in the control tables. In other words, a remote control for a TV of brand A will likely not work with a receiver of brand B. Sometimes, even among products of a specific brand, remote controls will not be compatible for a variety of reasons, including (a) different control methods, such as radio frequency (RF) and Infrared (IR), may be used, (b) different signaling protocols, such as variations on pulse width and pulse position, may be used, and (c) different button encodings may be used.
- As many consumers wish to minimize the amount of remote controls needed to operate components in their entertainment center, universal remote controls have gained in popularity. A universal remote control is a remote control that will, within limitations, emulate a wide variety of other remote controls, allowing a user to replace a collection of remote controls with a single remote control. Universal remote controls are designed to generate a variety of signals to support the broadest range of devices.
- There are several different varieties of universal remote controls. One type of universal remote control is a pre-programmed universal remote control. A pre-programmed universal remote control is configured to emulate a fixed number of remote controls. Each brand of device may assign a remote control with a particular code (referred to herein as a “mode code”) that describes how to specify any operation by that remote control. Thus, a particular mode code specifies a set of IR signals (or a set of IR codes) that the remote control supports. To use a pre-programmed universal remote control, a user must configure the pre-programmed universal remote control by indicating which remote control to emulate by entering in the specific mode code (which can be, for example, a four digit numeric code, e.g., “1234”) that is assigned to the particular remote control that the user wishes the pre-programmed universal remote control to emulate.
- The user must determine which mode code that is supported by the pre-programmed universal remote control in a process that usually involves trial-and-error. The user enters in a set of numbers into the pre-programmed universal remote control to indicate a possible mode code, and thereafter, the user presses a button (e.g., power) to see if the mode code works, i.e., a mode code works if the pre-programmed universal remote control performs the desired action on the intended device using the set of IR codes associated with the mode code. If the selected mode code does not work, the user must try another mode code. This is a time consuming process that is subject to error and may be frustrating to the user.
- Another type of remote control, referred to herein as a learning universal remote control, may be programmed to emulate another remote control, generally by programming one operation at a time. A learning universal remote control may capture and copy the IR codes produced by another remote control issuing a command. A user typically configures a learning universal remote control by (a) facing the learning universal remote control towards another remote control, (b) entering a sequence of buttons on the learning universal remote control to initiate the copying of a particular command, and (c) pressing a button on the other remote to generate an IR signal carrying the IR code which is captured by the learning universal remote control. The learning universal remote control can thereafter generate that IR code (or something similar) to perform the same operation on the same device as the other remote control. Undesirably, programming a learning universal remote control may be a complicated and time-consuming process.
- An additional type of remote control, referred to herein as a programmable universal remote control, may be programmed via a computer link. A programmable universal remote control may connect to a computer through an interface, such as a USB port, to download information instructing the programmable universal remote control on how to emulate a particular remote control. Programming a programmable universal remote control undesirably requires an appropriate interface to connect with a computer configured to instruct the programmable universal remote control, which may not always be available. Further, users may find programming a programmable universal remote control to be a confusing, frustrating, and time-consuming process.
- Consequently, a new approach for programming a universal remote control is needed that does not incur the disadvantages associated with the prior approaches. The approaches described in this section are approaches that could be pursued, but not necessarily approaches that have been previously conceived or pursued. Therefore, unless otherwise indicated, it should not be assumed that any of the approaches described in this section qualify as prior art merely by virtue of their inclusion in this section.
- The present invention is illustrated by way of example, and not by way of limitation, in the figures of the accompanying drawings and in which like reference numerals refer to similar elements and in which:
-
FIG. 1 depicts a system controlling a set-top box according to an embodiment of the invention; -
FIG. 2 depicts a system block diagram according to an embodiment of the invention; -
FIG. 3 depicts a data flow regarding IR control of an external set-top box according to an embodiment of the invention; -
FIG. 4 is a block diagram of a system according to an embodiment of the invention; -
FIG. 5 depicts a remote control according to an embodiment of the invention; and -
FIG. 6 is a flowchart illustrating the functional steps of an embodiment of the invention. - In the following description, for the purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the present invention. It will be apparent, however, that the present invention may be practiced without these specific details. In other instances, well-known structures and devices are shown in block diagram form in order to avoid unnecessarily obscuring the present invention.
- Embodiments of the invention provide for programming a remote control in an easy and intuitive manner. Embodiments of the invention allow a user to configure a first remote control (referred to herein as a target remote control) to emulate the functionality of a second remote control (referred to herein as the source remote control). For example, users may use embodiments of the invention to configure a target remote control to emulate the functionality of a plurality of source remote controls, i.e., a single target remote control may be configured to emulate the functionality of more than one source remote control.
- The mode code of a source remote control is identified and thereafter communicated to the target remote control. The mode code of the source remote control may be identified, as explained in further detail below, by analyzing the IR codes contained within received signals transmitted from the source remote control.
- In an embodiment of the invention, a computing device stores control data that identifies one or more mode codes. Each of the one or more mode codes identifies a set of signals (or IR codes) used by a type of remote control to control a type of device. The computing device also stores data about the set of IR codes associated with each mode code. The computing device may be implemented using a Digital Video Recorder (DVR) from TiVo, Inc. In this example, the DVR stores control data that identifies how to program a variety of remote controls. The computing device is coupled to a detector that is capable of exchanging signals with a remote control, e.g., the DVR contains
IR control 620, described in further detail below. To facilitate the ease of programming the target remote control and to minimize any possible frustration on behalf of the user, the computing device may display instructions and/or assistance on a display, such as a television, to walk the user through all parts and aspects of the process. - To program a target remote control, a user presses a button on the source remote control to cause a signal, such as an IR signal containing an IR code, to be transmitted from the source remote control to be received by the computing device. The computing device analyzes the received signal to determine operation data that identifies an operation indicated by the signal. The operation data may contain an IR code. For example, if the user pressed the button to increase the volume, then the operation data contained within the signal would indicate the IR code associated with the operation to increase the volume on the device being controlled by the source remote control.
- The computing device consults the control data store to determine, based at least in part on the operation data, a particular mode code that is associated with the source remote control. The particular mode code identifies the set of signals used by the source remote control to control a particular device. Thus, in the above example, the computing device may determine that the source remote control is model XYZ because the IR code contained in the operation data received in the signal matches model XYZ. The computing device may use the IR codes contained within the operation data to determine the mode code of the source remote control.
- Once the particular mode code is identified, it may be used to program the target remote control using a variety of methods. For example, the computing device may display a user interface on a display, such as a television, that visibly presents the particular mode code to the user. The user may thereafter manually program the target remote control with the particular mode code. In another embodiment, the computing device may transmit the particular mode code to the target remote control. Once the particular mode code is received by the target remote control, the target remote control may configure itself using the particular mode code without user intervention.
- Other embodiments shall be discussed to enhance the ease of use and efficiency of programming the target remote control. For example, the computing device may allow a user to select a particular brand of a device by the target remote control on a user interface. Once the computing device receives data that indicates the user's selection, the computing device may eliminate possible modes codes based on the selected brand. Additionally, the computing device may suggest to the user certain operations to perform or keys to press on the source remote control to help distinguish the mode code of the source remote control between possible mode code candidates based on the IR code produced by the source remote control.
- Prior to discussing the functional steps performed by embodiments of the invention, the architecture of an embodiment shall be presented.
FIG. 1 depicts asystem 100 including set-top control unit 110 controlling an external set-top box 200 in accordance with certain embodiments. - Certain embodiments are implemented as an advanced set-
top unit 110 packaged in a shipping container with cables, accessories, and aremote control 120. Certain further embodiments provide control of cable and satellite set-top boxes 200 byIR control 114. Certain embodiments support somesatellite boxes 200 byserial control 114. In certain embodiments,remote control unit 120 may be a TiVo Remote Control Unit, available from TiVo Incorporated, of Alviso, Calif. - The
television source 202 can be from a variety of sources, including: 1) a roof-top antenna or rabbit ears receiving terrestrial analog broadcast, 2) a buried coaxial cable delivering analog and digital cable signals, 3) a satellite antenna receiver digital satellite broadcast, and 4) a roof-top antenna receiving terrestrial digital broadcast. - If the
signal source 202 is from a roof-top or rabbit ear antenna, a user connects the cable from the antenna directly to the RF input on the Set-top control unit. The internal tuner in the Set-top control unit set-top box is used to select which program to view or record. The viewer selects which channel to tune to by using theremote control unit 120. After the selection is made, the Set-top control unit tunes its internal tuner to receive the channel selected. - If the
signal source 202 is from a buried cable from a cable provider, the user can choose to: 1) connect the cable to an analog set-top box, 2) connect the cable to a digital set-top box, or 3) connect the cable directly to the Set-top control unit. Note that in certain embodiments, the cable may be fiber optic. In certain other embodiments, the cable may be coaxial cable. - If the
signal source 202 is from cable and the user has an analog cable set-top box, the cable is connected to the cable set-top box. Note that in certain embodiments, the cable may be fiber optic. In certain other embodiments, the cable may be coaxial cable. The cable set-top box contains an internal tuner that will be tuned to the channel the viewer wishes to view or record. The cable set-top box 200 is then connected 118 to the Set-top control unit 110 in one of two ways: -
- 1) The channel selected is modulated onto either
channel top control unit 110 and the internal tuner 640 (seeFIG. 2 ) in the Set-top control unit 110 is tuned to channel 3 or 4 to receive the channel. - 2) The channel selected is output on either a composite or S-Video connectors. These connectors are connected 118 to composite or s-video inputs on the Set-
top control unit 110. If available, thepreferred connection 118 is using s-video; if S-Video is not provided then thepreferred connection 118 is composite in certain embodiments. Both s-video and composite providehigher quality connections 118 than RF in certain embodiments.
- 1) The channel selected is modulated onto either
- The viewer selects which channel to tune to by using the
Remote Control Unit 120. After the selection is made, the set-top control unit 110 transmits anIR signal 114 to the Cable set-top box 200 and the Cable set-top box 200 tunes its internal tuner to the channel. The channel is passed to the set-top control unit 110 by either the RF, composite, or S-Video outputs. The set-top control unit 110 must be configured to receive the channel from its RF, composite, or S-Video inputs. If the RF input is selected, the Set-top control unit 110 must also tune its internal tuner 640 (seeFIG. 2 ) to eitherchannel cable box 200 is configured to receive the signal. - If the
signal source 202 is from cable and the user has a digital cable set-top box 200, thecable 118 is connected to the digital cable set-top box 200. Note that in certain embodiments, the cable may be fiber optic. In certain other embodiments, the cable may be coaxial cable. The digital cable set-top box 200 contains an internal tuner that will be tuned to the channel the viewer wishes to view or record. The cable set-top box 200 connects 118 to the set-top control unit 110 in one of two ways: -
- 1) The selected channel is modulated on either
channel top control unit 110 and the internal tuner in the Set-top control unit 110 is tuned to channel 3 or 4 to receive the channel, and - 2) The channel selected is output on either a composite or S-Video connectors. These connectors are connected to composite or s-video inputs on the Set-
top control unit 110. Using the S-Video connectors in certain embodiments provides the highest quality connection.
- 1) The selected channel is modulated on either
- The viewer selects which channel to tune to by using the TiVo
Remote Control Unit 120. After the selection is made, the Set-top control unit 110 transmits 114 an IR signal to the digital cable set-top box 200 and the digital cable set-top box 200 tunes its internal tuner to the channel. The channel is passed 118 to the TiVo set-top unit 110 by either the RF, composite, or S-Video outputs. The TiVo set-top unit 110 must be configured to receive 118 the channel from its RF, composite, or s-video inputs. If the RF input is selected, the Set-top control unit 110 must also tune its internal tuner 640 (seeFIG. 2 ) to eitherchannel digital cable box 200 is configured to receive the signal. - If the
signal source 202 is from a satellite antenna, the satellite receiver digital set-top box 200 is connected 118 to the Set-top control unit 110 in an identical fashion as described above for a digital cable set-top box 200. As many satellite receivers also require a cable or terrestrial broadcast antenna to receive local channels, the preferred connection for a satellite receiver is using the S-Video connectors in certain embodiments for the highest quality connection. Such connection also leaves the RF input connection on the Set-top control unit 110 free to attach a cable or roof-top antenna to receive local channels. - Some digital satellite receivers support serial data ports. If so, rather than use IR to control the satellite receiver set-
top box 200, the serial output port 508 (seeFIG. 2 ) on the Set-top control unit 110 can be connected 114 to the serial data port on the satellite receiver. - If the
signal source 202 is from a digital terrestrial antenna and the digital terrestrial set-top box 200 provides an option to output standard NTSC compatible video on either RF, composite, or S-Video outputs. Then one of these outputs can be connected 118 to the corresponding input on the Set-top control unit 110. The digital terrestrial set-top box 200 is connected 118 to the Set-top control unit 110 in an identical fashion as described above for a digital cable set-top box 200. Theconnection 118 using S-Video provides the highest quality connection in certain embodiments. - Certain embodiments provide server based services through
modem access 116. Certain further embodiments provide server based services which include TiVo Services throughmodem access 116 or network access. - Certain further embodiments support at least some of the following features: Records television programming in digital form on at least one internal hard disk drive. Certain further embodiments support 10 hours of recorded programming and certain other further embodiments support 30 or more hours of programming. Certain embodiments support digital recording of audio-video content including random access to titled programming. Certain further embodiments support digitally accurate fast forward, rewind, slow motion, frame forward, frame back and high-quality freeze frame. Certain embodiments provide a 30 minute buffer of live programming being viewed enabling the viewer to pause, rewind and fast forward live TV.
- Certain embodiments provide instant replay of live or recorded sporting events and educational programs. Certain embodiments provide programmable scheduling by time and channel, just like a VCR. Certain embodiments allow viewers to save recorded programs to their VCRs. Certain embodiments provide selectable recording quality.
- Certain embodiments provide a
RF input 644 withtuner 640, which is compatible with cable and terrestrial broadcast TV (seeFIG. 2 ). Certain embodiments provide selectable RF input onchannel 3, RF input onchannel 4, composite, S-Video input, or digital input support for analog cable, digital cable, or satellite set-top devices. - In certain embodiments, a set-
top control unit 110 is portable; electronics of the set-top control unit 110 are housed in a metal enclosure approximately 17 inch wide, 13 inches deep and 4 inches high. -
Television 130 is fed 132 from set-top control unit 110 in certain embodiments. In certain further embodiments,connection 132 feeds signals from a composite video output 550 (seeFIG. 2 ) of set-top control unit 110. In certain other further embodiments,connection 132 feeds signals from an S-video output 548 (seeFIG. 2 ) of set-top control unit 110. In certain further embodiments, signals can be digital in addition to, or instead of, analog. -
FIG. 2 depicts a system block diagram set-top control unit 110 in accordance with certain embodiments. This particular embodiment represents a relatively low level of integration. There are alternative embodiments that maintain many of the same architectural elements, but integrate functions via different means. A particular alternative embodiment incorporates elements of theProcessor Subsystem 500,IR Controller 620 andMedia Switch 560 into a single integrated circuit. - In certain embodiments, the electronics of set-
top control unit 110 consists of amain System Board 400, an IR Controller Board (IR Ctrl) 572, amass storage system 578, a Fan, and a Power Supply. Set-top control unit 110 supports one left-right stereo pair audio input 532-534, onecomposite video input 522, one S-Video input 524, oneRF input 644 and oneRF output 642 modulated onto eitherchannel -
Mass storage system 578 may include any number and type of disk drives in certain embodiments. In certain embodiments,mass storage system 578 may be implemented using Flash memory. - The set-
top control unit 110 provides at least one left-right stereo pair audio outputs 544-546, at least onecomposite video output 550, at least one S-Video output 548, at least one serial input/output 508, at least one IR blaster output 622, at least one IR input 622, and at least one modem input/output 510 which may be connected 116 to an associated phone line in certain embodiments. - The electronics within the area denoted by 400 is located on the System Board. The IR Controller Board (IR Ctrl) 572 and electrically connected with a cable. This allows the IR Controller board 572 to be physically attached to the front panel of the enclosure. For ease of explanation, IR control 572 is shown as a single entity in
FIG. 2 ; however, IR control 572 may be implemented in other embodiments using a first component responsible for IR transmission, and a second component responsible for IR reception. Thus, as broadly used herein, IR control 572 may be implemented by any functional component (or set of components) that are capable of sending and receiving an input signal (IR, RF, or any other type of signal), and is not limited to infra-red input signals, but rather any type of input signal, including, but not limited to, sound and any portion of the electro-magnetic spectrum. IR control 572 may be implemented by a functional component that is capable of receiving an analog signal and converting the analog signal into a digital form for processing. The IR control 572 may be implemented using any combination of hardware and software. - The disk drive(s) in mass storage system 600 are connected by a
cable 564 to theSystem Board 400. The Fan is connected to theSystem Board 400 with acable 562. The Power Supply is connected to theSystem Board 400 and mass storage system 600 with power cables. - The
system board 400 can be generally divided into: 1) subsystems that convert analog video and audio from analog to digital data; 2) subsystems that process digital audio and video data; and 3) subsystems that convert digital data back to analog. In other embodiments, digital data is converted to other digital formats such as HDMI. - The
Tuner subsystem 810 and video andaudio input subsystem 570 accept as input standard analog video and audio signals from set-top boxes, roof-top antennas, or rabbit ear antennas. The video andaudio input subsystem 570 converts these signals into digital media streams. - The
digital media streams 536 and 502 are processed and stored in themass storage system 578 byMedia Switch 560 andProcessor Subsystems 500. Media streams 542 selected by the user to view are retrieved 564 from themass storage system 578 by theMedia Switch 560 andProcessor Subsystem 500. Retrievedmedia stream 542 is converted from digital to analog by the Video andAudio Output Subsystem 540.Media Switch 560 andProcessor Subsystem 500 also perform miscellaneous house keeping functions such as temperature monitoring andfan control 562. The Security Microprocessor 580 performs system identification and authentication for security purposes. - The System Board partitions into CPU, Input, and Output Subsystems. Each subsystem will be discussed in more detail below.
- The
Processor subsystem 500 includes the following in certain embodiments. The CPU is an IBM Power PC. The boot ROM is a 1 mega-bit Flash. The main memory is 4 meg×32-bit, implemented using two 4096k×16-bit EDO RAMs. The serial port is multiplexed to interface to the IR Controller Board and the Security Microprocessor. A second serial UART implements the external serial port that controls DSS Receivers. The modem is implemented with a Rockwell chipset and has an attached 1 mega-bit Flash that contains its microcode. The Media Switch ASIC controls multimedia streams to and from the disk drive. It also implements a number of system functions including the IDE disk drive controller, fan control and i2C bus control. The CPU Subsystem has a battery backed-up real-time clock and a temperature sensor interfaced to the i2C bus. The I2C bus is also used to control 502 Video andAudio Input system 570 and to control 506 Video andAudio Output Subsystem 540. - The Video and
Audio Input Subsystem 570 inputs video and audio from I/O connectors, converts it from analog to digital and encodes it using MPEG2 compression. Channel selection is performed with atuner 810 when the RF input is selected. The video and audio are converted from analog to digital and then passed to a compression engine. In certain embodiments, only one video/audio source can be selected at a time to be processed by the compression engine. - The video compression is performed with an MPEG encoder chip set in certain embodiments. In certain embodiments, an MPEG encoder chip set coupled with RAM memories performs video compression. In certain further embodiments, the MPEG encoder chip set is composed of exactly one integrated circuit. A Sony MPEG2 encoder chip performs video compression in certain further embodiments. A DSP is used in certain embodiments to perform audio compression. In certain further embodiments, a DSP from Analog Devices is used to perform audio compression.
- The Video and
Audio Output Subsystem 540 decompresses video and audio cached onmass storage system 578, converts it back into analog signals, and drives the output connectors. Certain embodiments of set-top control unit 110 support at least one stereo pair of audio output, at least one composite video output, at least one S-Video output and at least one RF output modulated onto eitherchannels top control unit 110 support at least two stereo pair of audio output and at least two composite video outputs. - The compressed video/
audio stream 542 is transferred to an MPEG2 decoder chip set for decoding in certain embodiments. In certain further embodiments the MPEG decoder chip set is coupled to RAM memory. The compressed video/audio stream 542 is transferred to an IBM MPEG2 decoder chip with coupled RAM memory for decoding in certain further embodiments. - The uncompressed digital video, output by the MPEG decoder chip set, is sent to a video encoder to convert the video back into analog form before driving the video output connectors in certain embodiments. In certain further embodiments, a Phillips video encoder chip performs the conversion. Audio is mixed with user interface sound effects before driving the audio output connectors in certain embodiments. Audio is converted from digital into analog and then mixed with user interface sound effects before driving the audio output connectors in certain further embodiments.
- The IR Controller Board 572 contains an IR Microcontroller, an IR Photo receiver module, and LED's indicators. IR controller board 572 is connected 514 to the System Board with a ribbon cable that connects the IR Microcontroller to the Power PC using the Power PC's serial port in certain embodiments. In an alternative embodiment, the IR receive and transmit control functions are incorporated into the same integrated circuit as the Processor Subsystem and are connected internally. In this alternative embodiment, the IR photo receiver and LED indicators may be on a separate board than the integrated circuit, connected by a cable. One of ordinary skill in the art shall appreciate that there are many ways to configure IR transmit and receive hardware.
- Set-
top control unit 110mass storage system 578 supports any number of disk drives in certain embodiments. The power for the disk drives is connected directly from the power supply. The IDE interfaces of the drives are connected 564 to the System board with a flat ribbon cable. - Note that in certain embodiments, IR control codes are stored in an IR control code database 1100 (see
FIG. 3 ) residing onmass storage system 578. -
FIG. 3 depicts data flow regarding IR control of external set-top boxes in accordance with certain embodiments. - In certain embodiments,
IR control database 1100 resides on themass storage system 578 and contains at least one IR control entry. A first IR control entry is accessed 1102 toIR control generator 1110.IR control generator 1110 processes the IR control entry and sends 1112-1122 it to be prepared 1130 forpresentation 1132 to aserial device 1140.Serial device 1140 serially transmits this presented information as control signals to an external set-top box. - In certain further embodiments,
timing generation 1120 is performed before 1122 it is prepared 1130 forpresentation 1132 to aserial device 1140. In certain embodiments,preparation 1130 includes processing similar to the “C” programming language function “sprintf”. In certain further embodiments,preparation 1130 includes multiplexing serial streams to be sent toserial device 1140. In certain further embodiments,preparation 1130 includes queuing various multiplexed serial streams to be sent toserial device 1140. - In certain embodiments, the
serial device 1140 includes at least one IR controller. In certain further embodiments, theserial device 1140 further includes a second serial device physical transport layer, which may include either wireline or wireless transport mechanisms. - In certain embodiments, raw
IR control library 1180 resides on the mass storage system 600 and contains at least one raw IR control entry. A first raw IR control entry is accessed 1182 by alibrary parsing operation 1190 to create a processed first IR control entry. The processed first IR control entry is communicated 1192 and received 1192 to create a received first IR control entry. The received first IR control entry is inserted intoIR control database 1100 as an IR control entry of theIR control database 1100. - In certain further embodiments, first raw IR control entry is accessed 1182 by a
library parsing operation 1190 to create a processed first IR control entry syntactic specification. The processed first IR control entry syntactic specification is communicated 1192 and received 1192 to create a received first IR control entry. - Syntactic specifications provide for the specification of many crucial forms of communication information in an IR control entry. This includes but is not limited to specification of how many digits are in a channel. This also includes but is not limited to specifying whether an enter or cancel key is used at the end of IR blasting sequence to delimit channels. This also includes but is not limited to specifying delays between transmission of digits or symbols. This also includes but is not limited to specifying prefix keys. Prefix keys are not digits, which may used to delimit switch settings in certain embodiments. Many set-top boxes have an A/B switch, often with channels on both A and B switch settings. Some set-top boxes supporting satellite reception further have a C-band switch setting. This also includes but is not limited to specifying postfix keys. Postfix keys are not digits which alter the interpretation of the preceding IR blasting sequence.
- Note that a syntactic specification may be the entire IR control entry, or a part of the entry. This also includes but is not limited to syntactic specifying IR control entries further referencing other syntactic specifying IR control entries. This supports development of complex blasting codes to perform essentially macro operations.
- In certain further embodiments, the first raw IR control entry is accessed 1184 by raw
data IR generator 1200 to create a raw IR control packet, which processes the raw IR control packet and sends 1202-1122 it to be prepared 1130 forpresentation 1132 to aserial device 1140.Serial device 1140 serially transmits this presented information as control signals to an external set-top box. - In certain further embodiments,
timing generation 1120 is performed before 1122 it is prepared 1130 forpresentation 1132 to aserial device 1140. In certain embodiments,preparation 1130 includes processing similar to the “C” programming language function “sprintf”. In certain further embodiments,preparation 1130 includes multiplexing serial streams to be sent toserial device 1140. In certain further embodiments,preparation 1130 includes queuing various multiplexed serial streams to be sent toserial device 1140. - In certain embodiments, a prototype
IR control database 1150 resides on mass storage system 600 containing at least one prototype IR control entry. Acontrol code search 1160 accessing 1152 a first prototype IR control entry creates a first raw IR control entry for rawIR control library 1180. In certain further embodiments, the first prototype IR control entry is accessed 1154 by timinginterface 1160 to create a first IR control packet, which then follows thesame data flow 1122 as has been previously described. -
FIG. 4 is a block diagram of asystem 4000 according to an embodiment of the invention.System 4000 includes a computing device 4101, adetector 4020, a source remote control 4040, a targetremote control 4050, andcommunications links -
Computing device 4010 may be implemented using any computerized device that is capable of processing and storing control data. In an embodiment, computing device 4010 (in conjunction with detector 4020) performs the functional steps illustrated inFIG. 6 . The functions performed bycomputing device 4010 are described in further detail below. -
Detector 4020 is a functional component that receives signals from remote controls, sends signals to remote controls.Detector 4020 is operationally connected tocomputing device 4010, and may exchange data withcomputing device 4010.Detector 4020 may be implemented using any means that can exchange signals overcommunications links Detector 4020 captures and decodes signals received from remote controls. Although many remote controls use radio frequency (RF) or infra-red (IR) transmitters,detector 4020 may communicate with remote controls using any transmission medium, including portions of the electromagnetic spectrum and sound. - The functional components of
FIG. 4 are not intended to represent the only embodiments of the invention, as other embodiments may perform the functions described above in a single component, or multiple other components. - In an embodiment,
computing device 4010 includes acontrol data store 700 that may be implemented using any volatile or non-volatile memory capable of storing control data. Control data, described in further detail below, is used by certain embodiments to program targetremote control unit 4050. Control data may be populated in control data store by a variety of means, e.g., it may be stored at time of manufacturer ofcomputing device 4010 or may be loaded into control data store over a network connection (not shown). - Source remote control 4040 refers to any remote control whose functions are to be emulated in target
remote control 4050. Targetremote control 4050 refers to any remote control that is being configured to emulate the functionality, in whole or in part, of source remote control 4040. While only one source remote control is depicted inFIG. 4 for ease of explanation,system 4000 may be employed to copy the functionality, in whole or in part, of any number of source remote controls 4040 to targetremote control 4050. - Communications link 4060 may be implemented by any medium or mechanism that provides for the exchange of data between
detector 4020 and targetremote control 4050. Communications link 4062 may be implemented by any medium or mechanism that provides for the exchange of data betweendetector 4020 and source remote control 4040. Examples ofcommunications links -
FIG. 5 depicts a hand heldremote control 120 in accordance with an embodiment of the invention. The remote control inFIG. 5 may be used as source remote control 4040 or targetremote control 4050. The remote control ofFIG. 5 is merely illustrative, as any remote control may be used as either source remote control 4040 and any universal remote control may be used as targetremote control 4050. -
FIG. 6 is a flowchart illustrating the functional steps of an embodiment of the invention. Instep 610, control data that identifies one or more mode codes is stored. Control data may be stored instep 610 incontrol data store 700. Control data contains information about remote control signaling, e.g., the data store may contain information about a set of mode codes, and information about the set of IR codes associated with each mode code. Control data is used to match input signals transmitted by a remote control device to known signals of remote controls. - In this embodiment,
control data store 700 stores information employed by embodiments to map one or more user button presses to a set of mode codes. For example, thecontrol data store 700 may contain sets of all mode codes for a particular remote control, and the set of IR codes associated with each mode code.Control data store 700 may contain information about each remote control such as carrier frequency, pulse descriptions, protocol and button identifiers.Control data store 700 may also contain information that maps mode codes to a brand of the target devices controlled by the mode codes. -
Control data store 700 may be organized for more efficient processing. For example, it may be presorted or include an index, such as an index on a brand of a device controlled by a remote control or an index on any detectable element of the remote control signal. Data stored incontrol data store 700 may be preprocessed (possibly including hand processing) to optimize the user interaction. Data stored incontrol data store 700 may also be compressed to store as much data in control data store as possible. After the performance ofstep 610, processing proceeds to step 620. - In
step 620, an input signal is received. Step 620 may be performed by a user directing a source remote control towards set-top unit 110 and pressing a button, e.g., pressing the number “3” on the source remote control. Although most remote controls typically use radio frequency (RF) or Infrared (IR) transmitters, an input signal may be sent to set-top unit 110 by the source remote control using a variety of means, e.g., anywhere within electromagnetic spectrum, sound, or any other method of transmitting a signal. Likewise, the target remote control may also communicate using a variety of means, e.g., anywhere within electromagnetic spectrum, sound, or any other method of transmitting a signal. Thus, the input signal received instep 620 may be transmitted using any method for transmitting a signal. The input signal received instep 620 may contain an IR code. After the processing ofstep 620, processing proceeds to step 630. - In
step 630, a particular mode code that is associated with the source remote control being configured is determined. In an embodiment, set-top control unit 110 is configured to compare the received input signal received instep 620 to information stored incontrol data store 700 about which input signals match input signals from specific remote controls. Set-top control unit 110 determines which particular mode code, among the plurality of mode codes stored incontrol data store 700, is associated with the source remote control. - In an embodiment, step 630 may be performed by analyzing the particular IR code contained within the input signal received in
step 620 to determine if the IR code is used by any mode codes identified in the control data stored in thecontrol data store 700. If the IR code is uniquely associated with a particular mode code, then that mode code is the mode code associated with the source remote control. If two or more mode codes may produce the IR code received in the input signal received instep 620, then the computing device will attempt to distinguish between those candidate mode codes, as explained in further detail below, to determine which of the candidate mode codes is associated with the source remote control. - In an embodiment, after the performance of
step 630, processing proceeds to step 640. Instep 640, set-top control unit 110 displays the particular mode code determined instep 630 on a display, such asTV 130. The set-top control unit 110 may display instructions on the TV to instruct the user on how to program target remote control using the mode code. For example, the particular mode code determined instep 630 may be a short sequence of digits (e.g., 1, 2, 3, 4). When the user enters the digits of the mode code in conjunction with other remote control-specific key presses (used to configure the target remote control with the mode code), the target remote control is programmed to emulate the specific remote control functionality indicated by the mode code. Thus, the target remote control emulates the functionality of the source remote control after the target remote control is configured with the particular mode code. Thereafter, the user may test the target remote control to see if the remote control is emulating the proper functionality, e.g., the user may try to turn the power on and off on the intended device or perform similar tests, and if the user is successful after performing each test, then the target remote control is emulating the functionality of the source remote control. - In another embodiment, after the performance of
step 630, processing proceeds to step 650. Instep 650, set-top control unit 110 transmits the particular mode code chosen instep 630 to the target remote control. The target remote control may then configure itself using the received mode code. In this way, the user does not need to manually configure the target remote control. - Advantageously, the user may configure the target remote control with greater ease and efficiency over prior approaches. The user may be presented information on
TV 130 that clearly walks the user through the process of programming the target remote control. The user has to press only a small number of buttons on sourceremote control 120 to properly configure targetremote control 120 to operate the intended device, thereby reducing both the potential for frustration and the time required in configuring targetremote control 120. - For ease of explanation, embodiments have been described above wherein
control data store 700 is implemented on set-top control unit 110. However, other devices may perform the steps illustrated inFIG. 6 . For example, the control data store may also be implemented on a standalone device or integrated into another device, such asTV 130. Any functional component may be configured to perform the steps ofFIG. 6 if (a) the component can store control data, and (b) the component can send and receive signals from a remote control. Consequently, as other embodiments of the invention may store control data other than the set-top control unit 110, embodiments of the invention are not limited to any particular component performing a particular step illustrated inFIG. 6 . - In another embodiment, set-
top unit 110 may interact with the user to improve the accuracy, efficiency and/or simplicity of detecting the particular mode code. In an embodiment, set-top control unit 110 may assist the determination ofstep 630 by eliminating one or more mode codes from the set of candidate mode codes being considered based on the brand of the device that the user wishes to control. In such an embodiment, set-top control unit 110 may display information on a display (such as TV 130) that instructs a user to select a brand of the device the user wishes to control with the target remote control. For example, set-top control unit 110 may display a list of brands onTV 130, and the user may use the target remote control to select one of the brands. Once the set-top control unit 110 receives an input signal from a remote control that identifies a selected brand, the set-top control unit 110 may narrow its search of potential mode codes that correspond to that brand when performingstep 630. - In another embodiment, set-
top control unit 110 may display instructions on a display (such as TV 130) that instructs the user to press one or more buttons on the source remote control. Guiding the user to press one or more buttons in a sequence may be advantageous, as particular mode codes may be distinguished based on particular IR codes associated with the operation issued by pressing a button on the source remote control. In other words, by pressing one or a few buttons, the set-top control unit 110 may be able to distinguish a particular mode code from all other mode codes stored in thecontrol data store 700. For example, if, for a set of mode codes, the IR codes associated with the “power” buttons are too similar, the set-top control unit 110 may instruct the user to start by pressing the number “3” on the source remote control to narrow down the possible options in performingstep 630, as the IR code associated with the “3” button may be unique for those set of mode codes. If set-top control unit 110 is unable to determine the particular mode code associated with the source remote control after a first iteration, then set-top control unit 110 may instruct the user to press another button that may further narrow the options or resolve to the correct mode code associated with the source remote control. - In an embodiment, in addition to transmitting a mode code to the target remote control, set-top control unit may transfer additional information, such as information describing a user interface to perform operations on the target remote control, to the target remote control. For example, set-
top control unit 110 may transfer information to target remote control describing a user interface associated with source remote control instep 630. Thereafter, remote control may use the information to create a user interface displayed on target remote control to enable the user to use the target remote control to perform any operation associated with the source remote control. Advantageously, such an embodiment would allow the target remote control to implement a customized user interface based on a particular mode code that the target remote control was configured to emulate. - In an embodiment, target remote control may be configured to emulate a source remote control that controls any variety of devices. The target remote control may control any device, not just a component in a home entertainment center. For example, the target remote control may operate kitchen appliances, computer equipment, an automobile, a garage door, etc.
- For ease of explanation, the term “IR code” has been used herein to refer to data that describes a command that is transmitted from a remote to another entity, as that is a commonly used term in the art as most commands are transmitted using infra-red (IR) signals. However, it should be understood to those in the art that any medium may be used to transport commands from a remote control, e.g., the medium may be within the electromagnetic spectrum, sound, or any other method for transmitting a signal. Thus, the term IR code, as used herein, is not limited to merely a code associated with an infra-red signal, but broadly encompasses any mechanism for identified a command that is transmitted from a remote control to another entity.
- Embodiments of the invention may program learning universal remote controls. A learning universal remote control may receive signals from set-
top control unit 110 instructing the learning universal remote control to configure itself to emulate a specific remote control. Set-top control unit 110 may present information on a display, such asTV 130, that instructs the user on how to program the learning universal remote control using data stored in the set-top control unit 110. Set-top control unit 110 may instruct the user to position the target remote control in front of theIR control 620, and the set-top control unit 110 may transmit one or more IR codes that are received by the target remote control. The received IR codes may be used by the target remote control to configure the target remote control. - Embodiments of the invention may program programmable universal remote controls. The programmable universal remote control may communicate to set-
top control unit 110 through an appropriate interface, such as an USB port, to receive mode codes to configure the programmable universal remote control. An embodiment of the invention may, in addition to transmitting one or more mode codes to a programmable universal remote control, also transmit information describing a user interface used on the programmable universal remote control. The set-top control unit 110 may provide information about a preconfigured user interface for use with a specific mode code. Additionally, the set-top control unit 110 may enable the user to configure his or her own user interface to operate any device he or she wishes, thus allowing the user to make full use of the programmable universal remote control, as it may control any device in a home entertainment center or a device outside of a entertainment center, such as multiple consumer electronics devices, motorized blinds and remotely dimmable lights. In an embodiment, the computing device 4101 may transmit one or more mode codes and/or data describing one or more user interfaces that enable one to submit one or more commands associated with a mode code to a programmable remote control, such as the PRONTO line remote controls manufactured by Phillips. - In the foregoing specification, embodiments of the invention have been described with reference to numerous specific details that may vary from implementation to implementation. Thus, the sole and exclusive indicator of what is the invention, and is intended by the applicants to be the invention, is the set of claims that issue from this application, in the specific form in which such claims issue, including any subsequent correction. Any definitions expressly set forth herein for terms contained in such claims shall govern the meaning of such terms as used in the claims. Hence, no limitation, element, property, feature, advantage or attribute that is not expressly recited in a claim should limit the scope of such claim in any way. The specification and drawings are, accordingly, to be regarded in an illustrative rather than a restrictive sense.
Claims (20)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/231,548 US20160353153A1 (en) | 2003-10-02 | 2016-08-08 | Remote control programming system |
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US50876903P | 2003-10-02 | 2003-10-02 | |
US10/958,674 US7671758B1 (en) | 2003-10-02 | 2004-10-04 | Remote control programming system |
US12/639,960 US8786411B1 (en) | 2003-10-02 | 2009-12-16 | Remote control programming system |
US14/338,335 US9414005B1 (en) | 2003-10-02 | 2014-07-22 | Remote control programming system |
US15/231,548 US20160353153A1 (en) | 2003-10-02 | 2016-08-08 | Remote control programming system |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/338,335 Continuation US9414005B1 (en) | 2003-10-02 | 2014-07-22 | Remote control programming system |
Publications (1)
Publication Number | Publication Date |
---|---|
US20160353153A1 true US20160353153A1 (en) | 2016-12-01 |
Family
ID=44652078
Family Applications (4)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/958,674 Active 2025-06-09 US7671758B1 (en) | 2003-10-02 | 2004-10-04 | Remote control programming system |
US12/639,960 Active 2025-11-20 US8786411B1 (en) | 2003-10-02 | 2009-12-16 | Remote control programming system |
US14/338,335 Active US9414005B1 (en) | 2003-10-02 | 2014-07-22 | Remote control programming system |
US15/231,548 Abandoned US20160353153A1 (en) | 2003-10-02 | 2016-08-08 | Remote control programming system |
Family Applications Before (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/958,674 Active 2025-06-09 US7671758B1 (en) | 2003-10-02 | 2004-10-04 | Remote control programming system |
US12/639,960 Active 2025-11-20 US8786411B1 (en) | 2003-10-02 | 2009-12-16 | Remote control programming system |
US14/338,335 Active US9414005B1 (en) | 2003-10-02 | 2014-07-22 | Remote control programming system |
Country Status (1)
Country | Link |
---|---|
US (4) | US7671758B1 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108259958A (en) * | 2018-02-07 | 2018-07-06 | 深圳创维-Rgb电子有限公司 | Remote keying response method, device, equipment and storage medium |
US10225507B2 (en) * | 2016-01-05 | 2019-03-05 | Samsung Electronics Co., Ltd. | Display system, display apparatus and method for controlling the same |
US20200021876A1 (en) * | 2009-09-29 | 2020-01-16 | Universal Electronics Inc. | System and method for reconfiguration of an entertainment system controlling device |
Families Citing this family (39)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7671758B1 (en) * | 2003-10-02 | 2010-03-02 | Tivo Inc. | Remote control programming system |
US7626641B1 (en) * | 2004-04-29 | 2009-12-01 | EchoStar Technologies, L.L.C. | Method and apparatus for a simplified power scan for remote control |
US9805591B2 (en) | 2005-09-08 | 2017-10-31 | Universal Electronics Inc. | System and method for widget-assisted setup of a universal remote control |
US7907222B2 (en) | 2005-09-08 | 2011-03-15 | Universal Electronics Inc. | System and method for simplified setup of a universal remote control |
US11769398B2 (en) | 2005-09-08 | 2023-09-26 | Universal Electronics Inc. | System and method for widget-assisted setup of a universal remote control |
US9024733B2 (en) * | 2005-11-30 | 2015-05-05 | Koninklijke Philips N.V. | Programming of a universal remote control device |
US8069461B2 (en) | 2006-03-30 | 2011-11-29 | Verizon Services Corp. | On-screen program guide with interactive programming recommendations |
US9030315B2 (en) * | 2006-08-29 | 2015-05-12 | Siemens Industry, Inc. | Binding methods and devices in a building automation system |
US8418217B2 (en) | 2006-09-06 | 2013-04-09 | Verizon Patent And Licensing Inc. | Systems and methods for accessing media content |
US8566874B2 (en) | 2006-10-03 | 2013-10-22 | Verizon Patent And Licensing Inc. | Control tools for media content access systems and methods |
US8464295B2 (en) | 2006-10-03 | 2013-06-11 | Verizon Patent And Licensing Inc. | Interactive search graphical user interface systems and methods |
US8510780B2 (en) | 2006-12-21 | 2013-08-13 | Verizon Patent And Licensing Inc. | Program guide navigation tools for media content access systems and methods |
US8015581B2 (en) | 2007-01-05 | 2011-09-06 | Verizon Patent And Licensing Inc. | Resource data configuration for media content access systems and methods |
US8103965B2 (en) | 2007-06-28 | 2012-01-24 | Verizon Patent And Licensing Inc. | Media content recording and healing statuses |
US8051447B2 (en) | 2007-12-19 | 2011-11-01 | Verizon Patent And Licensing Inc. | Condensed program guide for media content access systems and methods |
US9626864B1 (en) * | 2008-02-20 | 2017-04-18 | Universal Electronics Inc. | Communicating discovery information from remote control devices |
US10223907B2 (en) * | 2008-11-14 | 2019-03-05 | Apple Inc. | System and method for capturing remote control device command signals |
US20100123834A1 (en) * | 2008-11-14 | 2010-05-20 | Apple Inc. | System and Method for Capturing Remote Control Device Command Signals |
KR20100075257A (en) * | 2008-12-24 | 2010-07-02 | 삼성전자주식회사 | Universal remote control apparatus for controlling plurality of electric appliances, universal remote control system and methods thereof |
KR101589597B1 (en) | 2009-04-20 | 2016-01-28 | 삼성전자 주식회사 | Broadcasting signal receiving apparatus remote controller and pairing method thereof |
US8643477B2 (en) | 2009-06-01 | 2014-02-04 | At&T Intellectual Property I, L.P. | Programming a universal remote control via direct interaction |
US8624713B2 (en) * | 2009-08-11 | 2014-01-07 | At&T Intellectual Property I, L.P. | Programming a universal remote control via physical connection |
US8410970B2 (en) | 2009-08-13 | 2013-04-02 | At&T Intellectual Property I, L.P. | Programming a universal remote control via direct interaction |
US20110279359A1 (en) * | 2010-05-12 | 2011-11-17 | Rovi Technologies Corporation | Systems and methods for monitoring motion sensor signals and adjusting interaction modes |
US20110283189A1 (en) * | 2010-05-12 | 2011-11-17 | Rovi Technologies Corporation | Systems and methods for adjusting media guide interaction modes |
TWI406565B (en) * | 2010-06-01 | 2013-08-21 | Avermedia Tech Inc | Method of storing control signals of remote device and an electronic device using the method |
JP2012023630A (en) * | 2010-07-15 | 2012-02-02 | Funai Electric Co Ltd | Electrical apparatus |
US9098109B2 (en) | 2010-10-20 | 2015-08-04 | Nokia Technologies Oy | Adaptive device behavior in response to user interaction |
CN103299330A (en) | 2010-10-21 | 2013-09-11 | 圣脑私营有限责任公司 | Method and apparatus for neuropsychological modeling of human experience and purchasing behavior |
US9449324B2 (en) | 2010-11-11 | 2016-09-20 | Sony Corporation | Reducing TV licensing costs |
US9141982B2 (en) | 2011-04-27 | 2015-09-22 | Right Brain Interface Nv | Method and apparatus for collaborative upload of content |
US9106651B2 (en) * | 2011-09-19 | 2015-08-11 | Qualcomm Incorporated | Sending human input device commands over internet protocol |
US8433815B2 (en) | 2011-09-28 | 2013-04-30 | Right Brain Interface Nv | Method and apparatus for collaborative upload of content |
JP2016524397A (en) | 2013-05-20 | 2016-08-12 | トムソン ライセンシングThomson Licensing | Remote control programming using images |
US9368024B2 (en) | 2013-09-27 | 2016-06-14 | Apple Inc. | Remote control configuration using a remote control profile |
US9373250B2 (en) * | 2014-12-30 | 2016-06-21 | Smk Electronics Corporation | Remote controller having one shot automatic mapping of learned function |
CN106060105A (en) * | 2016-04-29 | 2016-10-26 | 镇江惠通电子有限公司 | Method and device for downloading control codes, display terminal and cloud server |
KR102058386B1 (en) * | 2019-05-02 | 2019-12-23 | 주식회사 오성전자 | Method of setting a code set of a control target device used remote control |
CN113068068A (en) * | 2021-03-25 | 2021-07-02 | 深圳Tcl数字技术有限公司 | Universal remote controller control method and device, television, remote controller and medium |
Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5959539A (en) * | 1995-12-23 | 1999-09-28 | Deutsche Thomson-Brandt Gmbh | Apparatus for the remote control of electronic devices with key allocation |
US6124804A (en) * | 1994-11-10 | 2000-09-26 | Matsushita Electric Industrial Co., Ltd. | Remote controller, remote control interface, and remote control system including a remote controller and a remote control interface |
US6133847A (en) * | 1997-10-09 | 2000-10-17 | At&T Corp. | Configurable remote control device |
US6211870B1 (en) * | 1997-07-07 | 2001-04-03 | Combi/Mote Corp. | Computer programmable remote control |
US20010011953A1 (en) * | 1998-08-07 | 2001-08-09 | Peter Rae Shintani | Configurable remote control unit using a removable memory device |
US20020140569A1 (en) * | 2001-03-30 | 2002-10-03 | Koninklijke Philips Electronics N.V. | System and method for interleaving infrared command codes with identifier codes |
US20030103088A1 (en) * | 2001-11-20 | 2003-06-05 | Universal Electronics Inc. | User interface for a remote control application |
US20030151538A1 (en) * | 2000-07-13 | 2003-08-14 | Universal Electronics Inc. | Customizable and upgradable devices and methods related thereto |
US6640144B1 (en) * | 2000-11-20 | 2003-10-28 | Universal Electronics Inc. | System and method for creating a controlling device |
US20030234737A1 (en) * | 2002-06-24 | 2003-12-25 | Nelson Terence J. | Personal programmable universal remote control |
US20050052423A1 (en) * | 2000-03-15 | 2005-03-10 | Harris Glen Mclean | Online remote control configuration system |
US6909378B1 (en) * | 1999-11-26 | 2005-06-21 | Koninklije Philips Electronics N.V. | Method and system for upgrading a universal remote control |
US7484234B1 (en) * | 1999-04-29 | 2009-01-27 | Tivo Inc. | Method and apparatus for controlling at least one set-top box |
US7671758B1 (en) * | 2003-10-02 | 2010-03-02 | Tivo Inc. | Remote control programming system |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4703359A (en) * | 1985-05-30 | 1987-10-27 | Nap Consumer Electronics Corp. | Universal remote control unit with model identification capability |
JP2687454B2 (en) * | 1988-06-28 | 1997-12-08 | ソニー株式会社 | General commander |
US5341166A (en) * | 1992-02-27 | 1994-08-23 | Video Control Technology, Inc. | System for controlling selected devices having unique sets of control codes |
US5691710A (en) * | 1992-11-02 | 1997-11-25 | Zenith Electronics Corporation | Self learning IR remote control transmitter |
US5629868A (en) * | 1994-02-07 | 1997-05-13 | Le Groupe Videotron Ltee | Method of programming local control |
US5796423A (en) | 1995-07-14 | 1998-08-18 | General Instrument Corporation | System for integrating digital audio and analog video to provide seamless user transparent features |
US6239718B1 (en) * | 1996-02-23 | 2001-05-29 | Kabushiki Kaisha Kenwood | Learning-by-example programmable remote control system |
US6057874A (en) | 1996-11-21 | 2000-05-02 | General Instrument Corporation | Infrared blaster control system in cable television communication systems |
US6008735A (en) * | 1997-02-03 | 1999-12-28 | Microsoft Corporation | Method and system for programming a remote control unit |
US5819294A (en) * | 1997-08-06 | 1998-10-06 | Philips Electronics North America Corporation | Automatic configuration mechanism for universal remote |
JPH11239305A (en) | 1998-02-24 | 1999-08-31 | Sony Corp | Digital television broadcast receiver |
US6081855A (en) | 1998-04-15 | 2000-06-27 | Oak Technology, Inc. | Digital versatile disc playback system with flexible input interface |
US6476947B1 (en) | 1998-05-04 | 2002-11-05 | Michael Lee Harvey | Process and apparatus for maximizing a software component and minimizing a hardware component of an infrared code |
US6530085B1 (en) | 1998-09-16 | 2003-03-04 | Webtv Networks, Inc. | Configuration for enhanced entertainment system control |
US6169879B1 (en) | 1998-09-16 | 2001-01-02 | Webtv Networks, Inc. | System and method of interconnecting and using components of home entertainment system |
JP2000324572A (en) * | 1999-05-14 | 2000-11-24 | Matsushita Electric Ind Co Ltd | Remote control system |
US6658663B1 (en) | 2000-03-08 | 2003-12-02 | Koninklijke Philips Electronics N.V. | Business model for leasing storage on a digital recorder |
-
2004
- 2004-10-04 US US10/958,674 patent/US7671758B1/en active Active
-
2009
- 2009-12-16 US US12/639,960 patent/US8786411B1/en active Active
-
2014
- 2014-07-22 US US14/338,335 patent/US9414005B1/en active Active
-
2016
- 2016-08-08 US US15/231,548 patent/US20160353153A1/en not_active Abandoned
Patent Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6124804A (en) * | 1994-11-10 | 2000-09-26 | Matsushita Electric Industrial Co., Ltd. | Remote controller, remote control interface, and remote control system including a remote controller and a remote control interface |
US5959539A (en) * | 1995-12-23 | 1999-09-28 | Deutsche Thomson-Brandt Gmbh | Apparatus for the remote control of electronic devices with key allocation |
US6211870B1 (en) * | 1997-07-07 | 2001-04-03 | Combi/Mote Corp. | Computer programmable remote control |
US6133847A (en) * | 1997-10-09 | 2000-10-17 | At&T Corp. | Configurable remote control device |
US20010011953A1 (en) * | 1998-08-07 | 2001-08-09 | Peter Rae Shintani | Configurable remote control unit using a removable memory device |
US7484234B1 (en) * | 1999-04-29 | 2009-01-27 | Tivo Inc. | Method and apparatus for controlling at least one set-top box |
US6909378B1 (en) * | 1999-11-26 | 2005-06-21 | Koninklije Philips Electronics N.V. | Method and system for upgrading a universal remote control |
US20050052423A1 (en) * | 2000-03-15 | 2005-03-10 | Harris Glen Mclean | Online remote control configuration system |
US20030151538A1 (en) * | 2000-07-13 | 2003-08-14 | Universal Electronics Inc. | Customizable and upgradable devices and methods related thereto |
US6640144B1 (en) * | 2000-11-20 | 2003-10-28 | Universal Electronics Inc. | System and method for creating a controlling device |
US20020140569A1 (en) * | 2001-03-30 | 2002-10-03 | Koninklijke Philips Electronics N.V. | System and method for interleaving infrared command codes with identifier codes |
US20030103088A1 (en) * | 2001-11-20 | 2003-06-05 | Universal Electronics Inc. | User interface for a remote control application |
US20030234737A1 (en) * | 2002-06-24 | 2003-12-25 | Nelson Terence J. | Personal programmable universal remote control |
US7671758B1 (en) * | 2003-10-02 | 2010-03-02 | Tivo Inc. | Remote control programming system |
US8786411B1 (en) * | 2003-10-02 | 2014-07-22 | Tivo Inc. | Remote control programming system |
US9414005B1 (en) * | 2003-10-02 | 2016-08-09 | Tivo Inc. | Remote control programming system |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200021876A1 (en) * | 2009-09-29 | 2020-01-16 | Universal Electronics Inc. | System and method for reconfiguration of an entertainment system controlling device |
US11076196B2 (en) * | 2009-09-29 | 2021-07-27 | Universal Electronics Inc. | System and method for reconfiguration of an entertainment system controlling device |
US11252463B2 (en) * | 2009-09-29 | 2022-02-15 | Universal Electronics Inc. | System and method for reconfiguration of an entertainment system controlling device |
US11533530B2 (en) | 2009-09-29 | 2022-12-20 | Universal Electronics Inc. | System and method for reconfiguration of an entertainment system controlling device |
US11825147B2 (en) | 2009-09-29 | 2023-11-21 | Universal Electronics Inc. | System and method for reconfiguration of an entertainment system controlling device |
US10225507B2 (en) * | 2016-01-05 | 2019-03-05 | Samsung Electronics Co., Ltd. | Display system, display apparatus and method for controlling the same |
CN108259958A (en) * | 2018-02-07 | 2018-07-06 | 深圳创维-Rgb电子有限公司 | Remote keying response method, device, equipment and storage medium |
Also Published As
Publication number | Publication date |
---|---|
US9414005B1 (en) | 2016-08-09 |
US8786411B1 (en) | 2014-07-22 |
US7671758B1 (en) | 2010-03-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9414005B1 (en) | Remote control programming system | |
US10210749B1 (en) | Remote control system | |
US7484234B1 (en) | Method and apparatus for controlling at least one set-top box | |
US10785539B2 (en) | System and method for saving and recalling state data for media and home appliances | |
US8330582B2 (en) | Online remote control configuration system | |
US8653950B2 (en) | State-based remote control system | |
US7006006B2 (en) | System and method for controlling home entertainment units with radio frequency and infrared signals | |
US20050054337A1 (en) | Mobile telephone with remote-controlling capability, remote-controlling method and system therefor | |
US20020180894A1 (en) | Remote control apparatus | |
KR20040015115A (en) | Apparatus for upgrading a remote control system using an on screen display | |
KR20040082819A (en) | Universal remote controller with batch processing and operating method for the same | |
KR20100081186A (en) | Control data transmission method, controlled apparatus, remote control mediation apparatus, universal remote control apparatus, server, and remote control system | |
JPH0652665A (en) | Vcr apparatus having cable-box control function and control method thereof | |
JP2001186579A (en) | Remote controller | |
US20060080706A1 (en) | Video processing apparatus which can respond to non-native remote commands and method of operation thereof | |
JP4568501B2 (en) | Apparatus and method for responding to external command | |
MXPA99000516A (en) | Methods and systems for providing information to a television using a personal computer | |
KR20050043271A (en) | System and method for controlling remotely using rf id | |
KR20080016347A (en) | Apparatus and method for recording audio and video signal | |
JPH11187328A (en) | Digital broadcast receiver | |
JP2000078671A (en) | Remote control unit and remote control system | |
JP2000306372A (en) | Magnetic recording and reproducing apparatus |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT, MARYLAND Free format text: SECURITY INTEREST;ASSIGNOR:TIVO SOLUTIONS INC.;REEL/FRAME:041076/0051 Effective date: 20160915 Owner name: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL Free format text: SECURITY INTEREST;ASSIGNOR:TIVO SOLUTIONS INC.;REEL/FRAME:041076/0051 Effective date: 20160915 |
|
AS | Assignment |
Owner name: TIVO SOLUTIONS INC., CALIFORNIA Free format text: CHANGE OF NAME;ASSIGNOR:TIVO INC.;REEL/FRAME:041493/0822 Effective date: 20160908 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |
|
AS | Assignment |
Owner name: TIVO SOLUTIONS INC., CALIFORNIA Free format text: RELEASE OF SECURITY INTEREST IN PATENT RIGHTS;ASSIGNOR:MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT;REEL/FRAME:051109/0969 Effective date: 20191122 |