Abstract:
An architecture for convergence systems is disclosed. The architecture includes a hardware component providing a convergence environment. A channel map services component includes a listing of receivers of programming associated with the convergence environment and a listing of channels associated with the receivers. A content services component includes a listing of programming associated with the channels of the receivers. A TV services component uses the channel map services component, and the content services component to control the hardware component of the convergence environment to manage the hardware component of the convergence environment. The TV services component controls the audio/video multiplexer to reroute programing signals from receivers to outputs audio/video multiplexer and various devices attached to the outputs. Conflicts are resolved with minimal user intervention.

Description:
RELATED APPLICATIONS 
     This application is related to the co-assigned and co-filed applications, “Method for managing multiple channel maps from multiple input devices in a multimedia system,” “Previous, favorite, and frequent channel management system,” “System for time-shifting events in a multi-channel convergence system,” “System, apparatus, and method for tuning a television to a selected channel,” and “A system for managing favorite channels,” all of which are hereby incorporated by reference. 
     1. Field of the Invention 
     The present invention relates generally to convergence systems and more particularly to a system and an architecture for channel selection in a convergence system. 
     2. Background of the Invention 
     A convergence system refers to a system that includes capabilities that otherwise are provided by separate systems. For example, the Gateway Destination PC/TV system, available from Gateway 2000, Inc., provides for both computer and television capability. Rather than forcing users to have both a separate television and a separate computer, convergence systems such as the Destination PC/TV system permit users to utilize both television and computer capability within the same system. 
     Convergence systems are believed by many in the industry to represent the future of consumer electronics. Rather than having a computer in a den, and other, separate devices scattered in other rooms throughout their homes, consumers may opt for a convergence system integrating the functionality of both the computer and these separate devices. For example, convergence systems such as the Destination PC/TV system permit consumers to combine computer capability with the capability of such varying devices as digital video disc (DVD) players, direct broadcast satellite (DBS) receivers, TV tuners (for broadcast and/or cable TV), CD-ROM players, audio/video tuners having at least radio tuning capability, cable decoders, videocassette recorders, laser and compact disc players, video cameras, etc. 
     Currently, a user may have a number of TV programming sources, such as antennas, satellite receivers, cable, modem, etc., attached to an audio/video tuner. Also attached to the audio/video tuner are a number of devices, such as one or more displays and VCRs. Currently, in order to watch one TV program and record another, the user must remember what TV programming sources are attached to which of the output devices through the audio/video tuner. Current audio/video systems includes a multiplexer, however, the multiplexers do not manage the resources attached to the audio/video tuner. The user must manage the resources. The user must remember which devices are attached to the various inputs and outputs, and what channels or programming inputs are available on the different programming sources. The user must keep this in mind when resolving conflicts. For example, if the user wants to view a football game and record a tennis match, the user must find a programming source or input for the football game, a programming source or input for the tennis match and then must select which source to watch and which source to input to a VCR for recording. The user must also resolve conflicts in the programming. For example, the user may prefer to watch the football game from cable since the source is generally more clear than broadcast television from an antennae. If both the football game and the tennis match are both available on cable and on broadcast TV, the user must decide whether to watch the football game from the cable source or from the antennae (broadcast TV source). Users are also more prone to make mistakes and may record the wrong program. 
     There is a need for a system for resolving conflicts that emerge when using a convergence systems, such as the Destination PC/TV system. There is also a need for a system that uses the PC to record preferences and manage the resources (the input and output connections and the devices) autonomously. This makes the convergence systems much more user friendly and truly useful for the users. In addition, the human intervention is eliminated and this cuts down on the mistakes that many users may make when recording programming. 
     SUMMARY OF THE INVENTION 
     The above-identified shortcomings as well as other problems are addressed by the present invention, which will be understood by reading and studying the following specification. The invention describes a system for selecting channels in a multi-channel convergence system. The system resolves channel conflicts that emerge when using convergence systems, such as the Destination PC/TV system. The system uses several databases in a PC to record preferences and manage the resources (the input and output connections and the devices) autonomously with a minimal amount of intervention from the user. 
     The architecture includes a hardware component providing a convergence environment. A channel map services component includes a listing of receivers of programming associated with the convergence environment and a listing of channels associated with the receivers. A content services component includes a listing of programming associated with the channels of the receivers. A TV services component uses the channel map services component, and the content services component to control the hardware component of the convergence environment to manage the hardware component of the convergence environment. The TV services component controls the audio/video multiplexer to reroute programming signals inputted to the multiplexer from receivers to outputs (i.e., various devices that may be attached as outputs) Conflicts are resolved with minimal user intervention. The TV services component manages the resources autonomously and provides a user friendly convergence environment. 
     In different embodiments of the invention, computers, computerized systems, and software architecture of varying scope are described. Still other and further embodiments, aspects and advantages of the invention will become apparent by reference to the drawings and by reading the following detailed description. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     FIG. 1 is a diagram of a typical computer in conjunction with which embodiments of the invention may be implemented. 
     FIG. 2 is a diagram of a system architecture for the system for resolving channel selection in a multi-channel system. 
     FIG. 3 is a diagram of a typical hardware configuration and shows the TV services portion communicatively coupled to the MUX controller of an audio/video multiplexer. 
     FIG. 4 is a diagram showing a portion of the TV state database associated with the TV services. 
     FIG. 5 is a diagram of a channel map database associated with the channel map services component of the invention. 
     FIG. 6 is a diagram of a first connection through an audio/video multiplexer. 
     FIG. 7 is a diagram of a first connection and second connection through an audio/video multiplexer. 
     FIG. 8 is a diagram in which the first connection through an audio/video multiplexer has been rerouted to resolve a conflict. 
    
    
     DETAILED DESCRIPTION OF THE INVENTION 
     In the following detailed description of the preferred embodiments, reference is made to the accompanying drawings which form a part hereof, and in which is shown by way of illustration specific preferred embodiments in which the inventions may be practiced. These embodiments are described in sufficient detail to enable those skilled in the art to practice the invention, and it is to be understood that other embodiments may be utilized and that logical, mechanical and electrical changes may be made without departing from the spirit and scope of the present invention. The following detailed description is, therefore, not to be taken in a limiting sense, and the scope of the present invention is defined only by the appended claims. 
     Referring first to FIG. 1, a diagram of a typical computer in conjunction with which embodiments of the invention may be implemented is shown. Computer  110  is operatively coupled to monitor  112 , pointing device  114 , and keyboard  116 . The computerized system provides the hardware component and the software architecture as has been described herein and as described in related co-pending application entitled ARCHITECTURE FOR CONVERGENCE SYSTEMS, assigned to the same assignee and filed on a date even herewith. Computer  110  includes a processor (preferably, an Intel Pentium processor), random-access memory (RAM) (preferably, at least thirty-two megabytes), read-only memory (ROM), and one or more storage devices, such as a hard disk drive, a floppy disk drive (into which a floppy disk can be inserted), an optical disk drive, and a tape cartridge drive. The memory, hard drives, floppy disks, etc., are types of computer-readable media. The invention is not particularly limited to any type of computer  110 . Computer  110  preferably is a PC-compatible computer running a version of the Microsoft Windows operating system. The construction and operation of such computers are well known within the art. 
     Computer  110  includes integrated therein or coupled thereto hardware to provide for what is known in the art as a “convergence environment” such that computer  110  provides capability beyond ordinary PC operation. Such capability preferably including TV capability. For example, the Gateway Destination PC/TV system, available from Gateway 2000, Inc., provides a convergence environment across two primary modes of operation: TV viewing, and PC operation. Computer  110  desirably provides for integration with or includes audio/video (i.e., multimedia) devices, including but not limited to, a sound card, a digital video disc (DVD) player, a direct broadcast satellite (DBS) receiver, a TV tuner (for broadcast and/or cable TV), audio/video inputs for external or auxiliary devices, a CD-ROM player, an audio/video tuner having at least radio tuning capability, a cable decoder, a videocassette recorder, a laser disc player, a compact disc player, a DBS integrated receiver-decoder (IRD), and a video camera. 
     Computer  110  may also be communicatively connected to the Internet, which is not shown in FIG.  1 . Internet connectivity of computers is well known within the art. In one embodiment, the computer includes a modem and corresponding communication drivers to connect to the Internet via what is known in the art as a “dial-up connection.” In another embodiment, the computer includes an Ethernet or similar hardware card to connect to a local-area network (LAN) that itself is connected to the Internet via what is known in the art as a “direct connection” (e.g., T 1  line, etc.). 
     Monitor  112  permits the display of information, including computer, video and other information, for viewing by a user of the computer. The invention is not limited to any particular monitor  112 . Such monitors include cathode ray tube (CRT) displays, as well as flat panel displays such as liquid crystal displays (LCD&#39;s). The monitor is, however, desirably a  31 ″ VGA monitor. Pointing device  114  permits the control of the screen pointer provided by the graphical user interface of operating systems such as versions of Microsoft Windows. The invention is not limited to any particular pointing device  114 . Such pointing devices include mouses, touch pads, trackballs, remote controls and point sticks. Finally, keyboard  116  permits entry of textual information into computer  110 , as known within the art, and the invention is not limited to any particular type of keyboard. Desirably, keyboard  116  is a wireless keyboard. 
     FIG. 2 shows a diagram of system architecture for the system for resolving channel selection in a multi-channel system. Such a system is also described in the co-pending, co-assigned and co-filed application entitled “Architecture for Convergence Systems,” which is hereby incorporated by reference. The system architecture includes three components; namely, a TV services component  201 , a channel map services component  202  and an electronic program guide (“EPG”) content services component  203 . The TV services component  201  is communicatively coupled to the channel map services component  202  and the EPG content services component  203 . Communicatively coupled to the channel map services component  202  is a channel map database  204 . The channel map database  204  includes a listing of the receivers of programming signals available to the convergence system, the channels available on those receivers and the call letters of the source of the channels. The channel map database  204  will be discussed in more detail with respect to FIG.  5 . Communicatively coupled to EPG component  203  is an EPG database  205 . The EPG database  205  is a listing of programs or events and channels. The EPG database  205  is retrieved from either an in-band program guide (such as StarSight, DirecTV DSS and Echostar DBS) or out-of-band program guides (such as Electronic TV Host and Intel SmartTV) accessed through a modem  206 . Most electronic program guides use only a single source for their program guide data. StarSight uses the vertical blanking interval to access program guide data. DSS and Echostar use the system information in the MPEG-2 digital satellite stream to access the program guide data. TV Host and Intel SmartTV use a dial-up and file download to access the electronic program guide data. The TV services component  201  selects the various input devices and tunes the channels on these input devices or receivers. These input devices or receivers may be internal or external to the convergence system and may include an RF receiver  208 , a satellite receiver  209 , a digital receiver  210  and consumer electronics devices, such as VCRs, DVDs, etc. The TV services component  201  may control these receivers with an infrared transmitter link  211  or some other network interface such as defined by IEEE standard number 1394. A TV state database  213  is also communicatively coupled with the TV services component  201 . The TV state database  213  includes information on which video inputs are currently selected into various video input on an audio/video multiplexer (shown in FIG.  3 ). The TV services component  201  also has a TV services interface for communicatively coupling the TV component to applications  207 . Applications  207  access the TV functionality through the TV services interface. 
     Now turning to FIG. 3, it can be seen that the TV services component  201  controls the convergence system audio/video multiplexer  329  through a multiplexer controller  332 . The system audio/video multiplexer  329  is a switch which controls the switching between various inputs and various outputs within the convergence system. As shown in FIG. 3, there are video inputs vi0 denoted by reference numeral  318 , video input vi1 denoted by reference numeral  319 , video input vi2 denoted by reference numeral  320 , and video input vi3 denoted by reference numeral  321 . The various video inputs  318 ,  319 ,  320  and  321  are connected to various receivers of programming signals or sources of programming, such as antennas, VCRs, and DBSs as shown in FIG.  3 . It should be noted that the various video inputs  318 ,  319 ,  320  and  321  can be associated with any of the receivers or sources of programming shown. In other words, a particular video input does not necessarily have to be associated with the source of programming or the receiver shown in FIG.  3 . Each video input  318 ,  319 ,  320  and  321  can be attached to any of the receivers shown. 
     The system audio/video multiplexer  329  also has various outputs. As shown in FIG. 3, there is an video output or vo0, denoted by the reference numeral  325 , which is a TV output for a display monitor  322 . There is also a video output vo1 denoted by reference numeral  326 , a video output vo2 denoted by reference numeral  328 , and a video output vo3 denoted by reference numeral  327 . The various inputs and outputs may be internal or may be accessed through a jack on the convergence system. Attached or communicatively coupled to video output vo1 is a VCR  323  and attached to video output vo3 is a second VCR  324 . It should be noted that vo2 is not used. In other words, there may not be a consumer electronics device or display attached to that particular output. 
     Further it should be noted that other types of consumer electronic devices or displays may be attached to any of the outputs  325 ,  326 ,  327  or  328 . The TV state database  213  includes entries or information regarding the connections between the video inputs  318 ,  319 ,  320  and  321  and the video outputs  325 ,  326 ,  327  and  328 . As shown in FIG. 3, video input  318  or vi0 is attached or electrically connected to video output  325 , also known as vo0. The connection path between vi0 and vo0 is denoted by reference numeral  330 . Similarly, video input  321  as in FIG.3 is connected to video output  326  via a connection path  331 . These connections are shown as being part of the TV state database  213  by an entry  335  and an entry  336 . Entry  335  corresponds to the connection path  330  through the system audio/video multiplexer  329 . The entry  335  indicates that vi0 is the video input and that the video output for that connection is vo0. Entry  336  in the TV state database  213  indicates that the video input vi3 is connected to the video output vo1. This corresponds to the connection path  331  through the system audio/video multiplexer  329 . Of course, when additional connections are made through the system audio/video multiplexer  329 , there are additional entries made in the TV state database  213  which indicate a connection between a particular video input and a particular video output. The TV state database tracks these connections. 
     FIG. 4 is a diagram showing another portion  400  of the TV state database  213  associated with the TV services component  201 . The portion  400  of the TV state database  213  maps the hardware configuration of the convergence system&#39;s inputs and outputs. In the configuration shown in FIG. 4, a box  449  represents the various sources of programming events. The sources can be cable, over-the-air broadcasts from one or more local antennas or from a satellite dish, or from any other source. Various devices, including programming or event signal tuner receivers and displays are attached to the system audio/video multiplexer  329 . In the example shown in FIG. 4, a display monitor  437 , a tuner internal to the TV  438 , a first VCR and its tuner  439 , a digital satellite set-top box  440 , and a second VCR and its tuner  441  are attached to the system audio/video multiplexer  329 . The portion  400  of the TV state database  213  provides entries  445 ,  446 ,  447 , and  448  that map the configuration shown. Each device is given a  460 . The inputs and outputs from each device are also provided with an output ID  464 ; however, some devices do not have inputs and some do not have outputs. The display monitor  437  has an input but has no output. This is reflected in the entry  445  of the TV state database  213  for the display monitor  437  since there is no input ID. 
     Each entry in portion  400  of the TV state database  400  includes a device ID  460 , an input ID  462 , and an output ID. The monitor  437  does not include an input ID  462  to the MUX since the display monitor does not provide an input to the MUX. That is to say, the audio/video multiplexer  329  only outputs a signal to the display monitor  437 . Entry  448  relates the inputs and outputs of the digital satellite set-topbox  440 . The digital satellite set-top-box  440  is not an output device since it only inputs a signal or signals to the audio/video multiplexer  329 . Consequently, entry  448  has no output ID. The internal TV tuner  438 , the first VCR  439  and the second VCR  441  are all attached to the source  449 . The VCRs,  439  and  441 , each have an internal tuner as well. Each of these devices has an input and an output. Consequently, each of the entries  446  (related to the internal TV tuner  438 ),  447  (related to the first VCR  439 ), and  450  (related to the second VCR  441 ) has an input and an output with a unique identifier. 
     FIG. 5 illustrates various entries within the channel map database  204  associated with the channel map services  202 . The channel map database  204  includes entries for each device or receiver associated with the convergence system. Each device or receiver has a number of channels associated with that device. The sum total of channels available on the various devices are given a logical channel number  510 . Associated with each logical channel number  510  is a device or receiver ID  512 , the physical channel  514  associated with the particular device or receiver  512 , and the channel name  516 . The channel name is the source of television programming. For example, the channel name might be one of the major networks, such as ABC, CBS, NBC or Fox, or any of the other programming sources such as TNT, WNBC, MTV, and any other source of programming that might be available. In FIG. 5, the entries are listed for four devices or receivers, denoted by device IDs  512 , D 1 , D 2 , D 3  and D 4 . The devices can be any type of receiver of programming signals. As shown in FIG. 5, there are a plurality of entries  550 - 558 . In the channel map database  204 , there are 358 logical channels. The logical channel number  510  for each of the entries is unique to the particular entry. For example, on entry  550 , the logical channel number  510  is 1; for the entry  551 , the logical channel number is 2; for entry  555 , the logical channel number is 6; and for entry  556  shown in FIG. 3, the logical channel number is 356. The final entry  358  has a logical channel number 358. The three dots between entries  555  and  556  include the entries for logical channel number 7 through logical channel number 355. It should be noted that there are duplicate channels available for the same source of programming. For example, entry  551  and entry  552  both have the physical channel  514  as channel number 4 and the channel name  516  or source of programming is Fox. In real terms, this means that channel 4 on the Fox network is available on device or receiver D 2  as well as device or receiver D 4 . Therefore, Fox channel 4 is available on both the devices D 2  and D 4 . Even so, each one is given a different logical channel number to uniquely identify that particular channel. Thus, within the database, there are duplicates of a particular physical channel on a particular network or source of programming. It should also be noted, such as at entry  557 , that logical channel number 357 carries a West Coast version of physical channel 222 from NBC. In other words, the channel 222 is a delayed broadcast of a previously broadcast East Coast version. 
     Now turning to FIGS. 6,  7  and  8 , the operation of the system will be discussed. When the user attempts to change channels or select devices or receivers that conflict with the representation of the system audio/video multiplexer  329 , the TV services component  201  attempts to find a connection path that obeys the setting stored in the TV state database  213 . As shown in FIG. 6, the user is watching an off-air television program from an antenna  449  receiver which passes through video input vi0, referred to by reference numeral  318 , and connected to video output vo0, depicted by reference numeral  325 . The video output  325  is attached to the display monitor  322 . The connection  330  is the same as that shown in FIG.  3  and which is shown as entry  335  in the TV state database  213 . 
     Now turning to FIG. 7, the user selects to record the current program that the user is watching and, therefore, a new connection path  710  is formed where video input vi0, depicted by reference numeral  318 , is connected to video output vo1, depicted by reference numeral  326 . Up until this point, there is no conflict since each of the connections can be accommodated. 
     Now turning to FIG. 8, if the user selects a program or event that is available on video input vi0 and which is not the current program also being recorded, a conflict arises. The audio/video multiplexer cannot re-tune the video input vi0, depicted by reference numeral  318 ; the system cannot re-tune vi0  318  without affecting the recording of the current program to video output or vo1, depicted by reference numeral  326 . Since the video input vi1, depicted by reference numeral  319 , is already busy, the television services component selects video input vi3, depicted by reference numeral  321 , which has the event or selected program available and connects the input  321  to the output  325  which is connected to the display/monitor. Vi1 is not explicitly tied to Vo1. If one is busy, other decisions could be made to resolve a conflict. The TV services component  201  determines that there is a conflict condition and then searches the content services component  203  and specifically the EPG database  205  for an alternative source of programming signals from another programming receiver. When an alternative source of programming and a connection is available between the associated video input and the video output, a new connection  810  is formed in the system audio/video multiplexer  329 . In the example shown in FIG. 8, the selected program that the user wants to display on the monitor  322  would be available on the receiver connected to vi2,  321  a new connection  810  is formed between vi3,  321  and vo0,  325 , and once the new connection  810  is made, the TV state database  213  is updated with an entry that includes a video input of vi3 and a video output of vo0. After updating the connections in the TV state database, the TV services component  201  awaits the next potential conflict. 
     Although specific embodiments have been illustrated and described herein, it will be appreciated by those of ordinary skill in the art that any arrangement which is calculated to achieve the same purpose may be substituted for the specific embodiments shown. This application is intended to cover any adaptations or variations of the present invention. Therefore, it is manifestly intended that this invention be limited only by the following claims and equivalents thereof.