METHOD OF SETTING MAPPING BETWEEN CHANNEL NUMBER AND PROGRAM NUMBER

A method of setting at least a mapping between a channel number and a program number is provided. The method includes receiving a virtual channel table (VCT) and a program association table (PAT) transmitted via a communication channel, comparing the VCT and the PAT to generate a comparison result, and determining a mapping between a specific channel number and a specific program number according to the comparison result.

BACKGROUND

The present invention relates to processing information transmitted via a digital television signal, and more particularly, to a method of setting at least a mapping between a channel number and a program number according to a virtual channel table and/or a program association table.

Generally, a program and system information protocol (PSIP) of an Advanced Television Systems Committee (ATSC) standard for digital television broadcasting contains a virtual channel table (VCT). In addition, the PSIP is defined as the protocol of the ATSC standard for terrestrial and cable digital television broadcasting which parses encoded messages using a moving picture experts group-2 (MPEG-2; ISO/IEC 13818-1) system to thereby provide various kinds of information on the broadcasted programs. There are many communication channels (physical channels) each with a distinct frequency band (RF band) and a physical channel number (RF number). Each of the communication channels (physical channels) is configured for transmitting programs of one or more virtual channels. However, the user is not aware of the physical channel number of the physical channel which is selected to transmit the television program watched by the user; instead, the user makes the channel selection based on the virtual channel numbers. The channel information for the channel selection is contained in the VCT. For example, the VCT records virtual channel numbers and program numbers respectively associated with the virtual channel numbers. In general, each virtual channel number is represented using a major channel number and a minor channel number, where the major and minor channel numbers function as the user reference number for the corresponding virtual channel. Regarding the program number recorded in the VCT, it is used to identify a corresponding program transmitted via the digital television broadcasting.

Although ATSC is forced by law, PSIP tables, including the VCT, are not necessary found in each digital channel broadcasted bitstream. Even though the VCT can be derived a digital channel broadcasted bitstream, the actual content of the VCT might be incomplete. In other words, the VCT entries do not include all of the program numbers of the available programs transmitted via the digital channel broadcasted bitstream on a physical channel. Only using the VCT to create a channel list that records channels available for users to select from sometimes fails to obtain a satisfactory result. Therefore, how to properly determine a mapping between a virtual channel number and a program number becomes an important issue for system designers.

SUMMARY

According to one aspect of the present invention, a method of setting at least a mapping between a channel number and a program number is provided. The method may include: retrieving information from a virtual channel table (VCT) and a program association table (PAT) transmitted via a communication channel; comparing the retrieved information of the VCT and the PAT to generate a comparison result; and determining a mapping between a specific channel number and a specific program number according to the comparison result, wherein the program number of the PAT is referenced first before the retrieved information of the VCT is referenced when determining of the mapping.

According to another aspect of the present invention, a method of setting at least a mapping between a channel number and a program number is provided. The method may include: retrieving information from a first table and a second table transmitted via a communication channel, wherein the first table complies with a specific television standard, and the second table complies with a specific moving picture experts group (MPEG) standard; comparing the retrieved information of the first table and the second table to generate a comparison result; and determining a mapping between a specific channel number and a specific program number according to the comparison result, wherein the program number of the PAT is referenced first before the retrieved information of the VCT is referenced when determining of the mapping.

DETAILED DESCRIPTION

Certain terms are used throughout the description and following claims to refer to particular components. As one skilled in the art will appreciate, manufacturers may refer to a component by different names. This document does not intend to distinguish between components that differ in name but not function. In the following description and in the claims, the terms “include” and “comprise” are used in an open-ended fashion, and thus should be interpreted to mean “include, but not limited to . . . ”.

As mentioned in the background description, the MPEG-2 transport stream is used by the PSIP to transmit audio data and video data multiplexed therein. In addition, for each physical channel, a program association table (PAT) is also transmitted via a digital channel broadcast bitstream according to the MPEG-2 specification. The PAT lists all programs available in the transport stream delivered via the corresponding physical channel, and each of the listed programs is identified by a 16-bit value called program number. In addition, each of the programs listed in the PAT has an associated value of a packet identifier (PID) for its program map table (PMT) that describes which PIDs contain data relevant to the desired program. The present invention proposes that the received PAT is involved in setting a mapping between a virtual channel number and a program number. With the help of information given by the PAT, more mappings between the virtual channel numbers and the program numbers can be derived. For example, using the proposed method of the present invention can create a channel list having more entries each recording a virtual channel number mapped to a program number. As a result, compared with the conventional scheme of only using the VCT to create a channel list, the present invention provides the created channel list more listed channels available for the user to select therefrom through a television user interface.

Please refer toFIG. 1in conjunction withFIG. 2.FIG. 1is a flowchart illustrating a method of setting at least a mapping between a virtual channel number and a program number according to a first exemplary embodiment of the present invention.FIG. 2is a continued flow ofFIG. 1. Please note that if the result is substantially the same, the steps are not required to be executed in the exact order shown inFIG. 1andFIG. 2. The exemplary method shown inFIG. 1andFIG. 2is employed in a channel list creation process (or so-called channel scan/channel search), and includes steps as follows.

Step102: Select an un-scanned communication channel (i.e., a physical channel) with a designated physical channel number.

Step104: Check if a virtual channel table (VCT) exists in the selected communication channel. If yes, go to step106; otherwise, go to step118.

Step106: Check if a program association table (PAT) exists in the selected communication channel. If yes, go to step108; otherwise, go to step126.

Step108: Load required information from currently existing VCT and PAT.

Step110: Compare the loaded information of VCT and PAT to generate a comparison result.

Step112: Determine a mapping between a specific channel number and a specific program number according to the comparison result, wherein at least one of the specific channel number and the specific program number is recorded in the loaded information of VCT and PAT.

Step114: Are all of the possible mappings derived using the loaded information of VCT and PAT? If yes, go to step116; otherwise, go to step112to determine another mapping.

Step116: Are all of the communication channels (physical channels) scanned? If yes, go to step132; otherwise, go to step117.

Step117: Select an un-scanned communication channel with another designated physical channel number, and then proceed with step104.

Step118: Check if a program association table (PAT) exists in the selected communication channel. If yes, go to step120; otherwise, go to step116.

Step120: Load required information from the currently existing PAT.

Step122: Determine a mapping between a specific channel number and a specific program number according to the loaded information of PAT, wherein the specific program number is recorded in the existing PAT.

Step124: Are all of the possible mappings derived using the loaded information of PAT? If yes, go to step116; otherwise, go to step122to determine another mapping.

Step126: Load required information from the currently existing VCT.

Step128: Determine a mapping between a specific channel number and a specific program number according to the loaded information of VCT, wherein the specific channel number and the specific program number are both recorded in the existing VCT.

Step130: Are all of the possible mappings derived using the loaded information of VCT? If yes, go to step116; otherwise, go to step128to determine another mapping.

Step132: Create a channel list according to each mapping between a virtual channel number and a program number that is found using the information of VCT, PAT, or both.

The exemplary method applied in the channel list creation process does the VCT and/or PAT information loading per physical channel (Steps102and117). Each frequency band assigned to a physical channel with a designated physical channel number is licensed for broadcasting digital data such as a modulated MPEG-2 compatible bitstream. Ideally, every bitstream should carry the VCT and PAT. However, exceptions might occur. For example, at least one of the VCT and PAT supposed to be received at the receiver end is not available from the selected communication channel. To maximize the number of channels included in a channel list, the present invention uses the information of available VCT, PAT, or both to find all of the possible mappings between the virtual channel numbers and the program numbers. It should be noted that step108only loads the required information from the existing VCT and PAT. In other words, a portion of the existing VCT and a portion of the existing PAT are loaded. For instance, in an exemplary implementation of the present invention, only the channel number data and program number data included in the existing VCT and the program number data included in the existing PAT are loaded. The memory requirement can be reduced greatly due to the partial data loading of the existing VCT and PAT. Similarly, steps120and126are also configured to employ the aforementioned partial data loading scheme.

In a first case where the information of both the VCT and PAT is received via the selected communication channel, each mapping between a virtual channel number and a program number is derived according to a comparison result of the loaded information of VCT and PAT (Steps108,110,112, and114). In the following, a plurality of examples of using the loaded information of VCT and PAT to determine one or more mappings are presented to illustrate technical features of the present invention.

FIG. 3shows a first example of determining a mapping between a virtual channel number and a program number. As shown, the exemplary loaded information of VCT has three VCT entries VE_1, VE_2, and VE_3. Please note that each exemplary virtual channel number ‘A.B’ used in this or following examples has ‘A’ representative of the major channel number and ‘B’ representative of the minor channel number. As shown inFIG. 3, the VCT entry VE_1records a channel number20.1and a program number3mapped to the channel number20.1; the VCT entry VE_2records a channel number20.2and a program number4mapped to the channel number20.2; and the VCT entry VE_3records a channel number20.3and a program number5mapped to the channel number20.3. Regarding the exemplary loaded information of PAT, it has three PAT entries PE_1, PE_2, and PE_3which record program numbers3,4, and5, respectively. As one can see, there is no program number inconsistency between the VCT and PAT; in addition, the total number of the VCT entries is equal to the total number of the PAT entries. Therefore, based on the comparison result of the VCT and PAT, it is determined that the channel number20.1is mapped to the program number3, the channel number20.2is mapped to the program number4, and the channel number20.3is mapped to the program number5. In this way, three mapping records ME_1, ME_2, and ME_3as shown inFIG. 3are derived.

FIG. 4shows a second example of determining a mapping between a virtual channel number and a program number. As shown, the exemplary loaded information of VCT has two VCT entries VE_1and VE_2. The VCT entry VE_1records a channel number20.1and a program number3mapped to the channel number20.1. The VCT entry VE_2records a channel number20.2and a program number4mapped to the channel number20.2. Regarding the exemplary loaded information of PAT, it has three PAT entries PE_1, PE_2, and PE_3which record program numbers3,4, and5, respectively. As one can see, there is program number inconsistency between the VCT and PAT; in addition, the total number of the VCT entries is unequal to the total number of the PAT entries. Specifically, the total number of the VCT entries is less than the total number of the PAT entries. The comparison result of the information of VCT and PAT indicates that the PAT includes PAT entries PE_1and PE_2recording program numbers3and4, and the VCT includes VCT entries VE_1and VE_2recording program numbers3and4as well. It is therefore determined that the virtual channel numbers20.1and20.2recorded in VCT entries VE_1and VE_2are mapped to the program numbers3and4, respectively. In addition, the comparison result of the information of VCT and PAT also indicates that the PAT includes a PAT entry PE_3recording the program number5which is not recorded in any VCT entry. Specifically, a new channel number that is not recorded in the VCT will be created and then mapped to the program number5. Provided that the currently selected physical channel has a designated physical channel number equal to 24, the new channel number can be configured using a major channel number set by the physical channel number24and a minor channel number set by the program number5. In this way, three mapping records ME_1, ME_2, and ME_3as shown inFIG. 4are derived.

FIG. 5shows a third example of determining a mapping between a virtual channel number and a program number. As shown, the exemplary loaded information of VCT has three VCT entries VE_1, VE_2, and VE_3. The VCT entry VE_1records a channel number20.1and a program number3mapped to the channel number20.1. The VCT entry VE_2records a channel number20.2and a program number4mapped to the channel number20.2. The VCT entry VE_3records a channel number20.3and a program number0mapped to the channel number20.3. Regarding the exemplary loaded information of PAT, it has three PAT entries PE_1, PE_2, and PE_3which record program numbers3,4, and5, respectively. As one can see, there is program number inconsistency between the VCT and PAT; however, the total number of the VCT entries is equal to the total number of the PAT entries. As the comparison result of the information of VCT and PAT indicates that the PAT includes PAT entries PE_1and PE_2recording program numbers3and4, and the VCT includes VCT entries VE_1and VE_2recording program numbers3and4as well, it is therefore determined that the virtual channel numbers20.1and20.2recorded in VCT entries VE_1and VE_2are mapped to the program numbers3and4, respectively. In addition, as the comparison result of the information of VCT and PAT also indicates that the PAT includes a PAT entry PE_3recording the program number5which is not recorded in any VCT entry, the channel number20.3recorded in the VCT entry VE_3which contains the program number0inconsistent with the program number5recorded in the PAT entry PE_3is therefore determined to be mapped to the program number5recorded in the PAT entry PE_3. In this way, three mapping records ME_1, ME_2, and ME_3as shown inFIG. 5are derived.

FIG. 6shows a fourth example of determining a mapping between a virtual channel number and a program number. As shown, the exemplary loaded information of VCT and PAT are similar to those shown inFIG. 5, thus two mapping records ME_1and ME_2corresponding to the mapping records ME_1and ME_2inFIG. 5are determined similarly. The detailed description for determining the mapping records ME_1and ME_2is thus omitted for brevity. In addition, the comparison result of the information of VCT and PAT also indicates that the PAT includes a PAT entry PE_3recording the program number5which is not recorded in any VCT entry, and the VCT includes a VCT entry recording the program number0which is not recorded in any PAT entry. Provided that the currently selected physical channel has a designated physical channel number equal to 24, the channel number20.3recorded in the VCT entry VE_3is determined to be mapped to the program number0recorded in the same VCT entry VE_3, while a new channel number which is configured using a major channel number set by the physical channel number24and a minor channel number set by the program number5is created and then mapped to the program number5recorded in the PAT entry PE_3. In this way, four mapping records ME_1, ME_2, ME_3, and ME_4as shown inFIG. 6are derived.

FIG. 7shows a fifth example of determining a mapping between a virtual channel number and a program number. As shown, the exemplary loaded information of VCT has three VCT entries VE_1, VE_2, and VE_3. The VCT entry VE_1records a channel number20.1and a program number3mapped to the channel number20.1. The VCT entry VE_2records a channel number20.2and a program number4mapped to the channel number20.2. The VCT entry VE_3records a channel number20.3and a program number X mapped to the channel number20.3. Regarding the exemplary loaded PAT, it has two PAT entries PE_1and PE_2which record program numbers3and4, respectively. As one can see, there is program number inconsistency between the VCT and PAT; in addition, the total number of the VCT entries is unequal to the total number of the PAT entries. Specifically, the total number of the VCT entries is more than that of the PAT entries. As the comparison result of the information of VCT and PAT indicates that the PAT includes PAT entries PE_1and PE_2recording program numbers3and4, and the VCT includes VCT entries VE_1and VE_2recording program numbers3and4as well, it is therefore determined that the virtual channel numbers20.1and20.2recorded in VCT entries VE_1and VE_2are mapped to the program numbers3and4, respectively. In addition, the comparison result of the information of VCT and PAT also indicates that the VCT includes a VCT entry VE_3recording the program number X which is not recorded in any PAT entry. The channel number20.3recorded in the VCT entry VE_3is therefore determined to be mapped to the program number X recorded in the same VCT entry VE_3. In this way, three mapping records ME_1, ME_2, and ME_3as shown inFIG. 7are derived.

FIG. 8shows a sixth example of determining a mapping between a virtual channel number and a program number. As shown, the exemplary loaded information of VCT has four VCT entries VE_1, VE_2, VE_3, and VE_4. The VCT entry VE_1records a channel number20.1and a program number3mapped to the channel number20.1. The VCT entry VE_2records a channel number20.2and a program number4mapped to the channel number20.2. The VCT entry VE_3records a channel number20.3and a program number0mapped to the channel number20.3. The VCT entry VE_4records a channel number20.4and a program number1mapped to the channel number20.4. Regarding the exemplary loaded PAT, it has four PAT entries PE_1, PE_2, PE_3, and PE_4which record program numbers3,4,5, and6, respectively. As one can see, there is program number inconsistency between the VCT and PAT; however, the total number of the VCT entries is equal to that of the PAT entries. As the comparison result of the information of VCT and PAT indicates that the PAT includes PAT entries PE_1and PE_2recording program numbers3and4, and the VCT includes VCT entries VE_1and VE_2recording program numbers3and4as well, it is therefore determined that the virtual channel numbers20.1and20.2recorded in VCT entries VE_1and VE_2are mapped to the program numbers3and4, respectively. In addition, the comparison result of the information of VCT and PAT also indicates that the PAT includes PAT entries PE_3and PE_4recording the program number5and6respectively which are not recorded in any VCT entry. Therefore, the channel number20.3recorded in the VCT entry VE_3is determined to be mapped to the program number5recorded in the PAT entry PE_3, and the channel number20.4recorded in the VCT entry VE_4is determined to be mapped to the program number6recorded in the PAT entry PE_4. In this way, four mapping records ME_1, ME_2, ME_3, and ME_4as shown inFIG. 8are derived.

FIG. 9shows a seventh example of determining a mapping between a channel number and a program number. As shown, the exemplary loaded information of VCT has four VCT entries VE_1, VE_2, VE_3, and VE_4. The VCT entry VE_1records a channel number20.1and a program number3mapped to the channel number20.1. The VCT entry VE_2records a channel number20.2and a program number4mapped to the channel number20.2. The VCT entry VE_3records a channel number20.3and a program number0mapped to the channel number20.3. The VCT entry VE_4records a channel number20.4and the program number0mapped to the channel number20.4. Please note that the same program number0is erroneously recorded in different VCT entries in this exemplary embodiment. Regarding the exemplary loaded PAT, it has four PAT entries PE_1, PE_2, PE_3, and PE_4that record program numbers3,4,5, and6, respectively. As one can see, there is program number inconsistency between the VCT and PAT; however, the total number of the VCT entries is equal to that of the PAT entries. As the comparison result of the information of VCT and PAT indicates that the PAT includes PAT entries PE_1and PE_2recording program numbers3and4, and the VCT includes VCT entries VE_1and VE_2recording program numbers3and4as well, it is therefore determined that the virtual channel numbers20.1and20.2recorded in VCT entries VE_1and VE_2are mapped to the program numbers3and4, respectively. In addition, the comparison result of the information of VCT and PAT also indicates that the PAT includes PAT entries PE_3and PE_4recording the program number5and6respectively which are not recorded in any VCT entry. Therefore, the channel number20.3recorded in the VCT entry VE_3is determined to be mapped to the program number5recorded in the PAT entry PE_3, and the channel number20.4recorded in the VCT entry VE_4is determined to be mapped to the program number6recorded in the PAT entry PE_4. In this way, four mapping records ME_1, ME_2, ME_3, and ME_4as shown inFIG. 9are derived.

In a second case where only the information of PAT is available from the selected communication channel, each mapping between a channel number and a program number is derived using the loaded information of PAT (Steps120,122,124).FIG. 10shows an eighth example of determining a mapping between a virtual channel number and a program number. As shown, the exemplary loaded information of PAT includes three PAT entries PE_1, PE_2, and PE_3which record program numbers3,4, and5, respectively. In this exemplary embodiment, a plurality of new channel numbers are created and then mapped to the program numbers3,4, and5, respectively. Provided that the currently selected physical channel has a designated physical channel number equal to 24, the new channel number mapped to the program number3recorded in the PAT entry PE_1is configured using a major channel number set by the physical channel number24and a minor channel number set by the program number3; similarly, the new channel number mapped to the program number4recorded in the PAT entry PE_2is configured using a major channel number set by the physical channel number24and a minor channel number set by the program number4, and the new channel number mapped to the program number5recorded in the PAT entry PE_3is configured using a major channel number set by the physical channel number24and a minor channel number set by the program number5. In this way, three mapping records ME_1, ME_2, and ME_3as shown inFIG. 10are derived, even though the VCT is unavailable.

In a third case where only the information of VCT is available from the selected communication channel, each mapping between a channel number and a program number is derived using the loaded VCT (Steps126,128,130).FIG. 11shows a ninth example of determining a mapping between a virtual channel number and a program number. As shown, the mapping records ME_1, ME_2, and ME_3are directly derived using the VCT entries VE_1, VE_2, and VE_3, respectively.

After all of the communication channels (i.e., physical channels) have been scanned, a channel list (not shown) can be generated through collecting the aforementioned mapping records derived using the information of VCT and/or PAT for each scanned physical channel (Step132).

The aforementioned method employed in a channel list creation process is for illustrative purposes only, and is not meant to be a limitation of the present invention. For example, the method of setting at least a mapping between a virtual channel number and a program number is executed each time a physical channel change is made by the user or content changes are found in the received information of VCT or PAT. Please refer toFIG. 12in conjunction withFIG. 13.FIG. 12is a flowchart illustrating a method of setting at least a mapping between a virtual channel number and a program number according to a second exemplary embodiment of the present invention.FIG. 13is a continued flow ofFIG. 12. Please note that if the result is substantially the same, the steps are not required to be executed in the exact order shown inFIG. 12andFIG. 13. The exemplary flow shown inFIG. 12andFIG. 13includes steps as follows.

Step1202: Is a communication channel with a designated physical channel number selected? If yes, go to step1204; otherwise, repeat step1202to keep monitoring.

Step1204: Check if a virtual channel table (VCT) exists in the selected communication channel. If yes, go to step1206; otherwise, go to step1220.

Step1206: Check if a program association table (PAT) exists in the selected communication channel. If yes, go to step1208; otherwise, go to step1234.

Step1208: Load required information from currently existing VCT and PAT.

Step1210: Compare the loaded information of VCT and PAT to generate a comparison result.

Step1212: Determine a mapping between a specific channel number and a specific program number according to the comparison result, wherein at least one of the specific channel number and the specific program number is recorded in the information of VCT and the PAT.

Step1214: Are all of the possible mappings derived using the loaded information of VCT and PAT? If yes, go to step1216; otherwise, go to step1212to determine another mapping.

Step1216: Check if at least one of the information of VCT and PAT has content changes. If yes, go to step1208to update the mappings; otherwise, go to step1218.

Step1218: Is a communication channel with another designated physical channel number selected? If yes, go to step1204; otherwise, go to step1216.

Step1220: Check if a program association table (PAT) exists in the selected communication channel. If yes, go to step1222; otherwise, go to step1232.

Step1222: Load required information from currently existing PAT.

Step1224: Determine a mapping between a specific channel number and a specific program number according to the loaded information of PAT, wherein the specific program number is recorded in the loaded information of PAT.

Step1226: Are all of the possible mappings derived using the loaded information of PAT? If yes, go to step1228; otherwise, go to step1224to determine another mapping.

Step1228: Check if information of the next PAT received via the selected communication channel has content changes. If yes, go to step1222to update the mappings; otherwise, go to step1230.

Step1230: Is a communication channel with another designated physical channel number selected? If yes, go to step1204; otherwise, go to step1228.

Step1232: Is a communication channel with another designated physical channel number selected? If yes, go to step1204; otherwise, repeat step1232to keep monitoring.

Step1234: Load required information from currently existing VCT.

Step1236: Determine a mapping between a specific channel number and a specific program number according to the loaded information of VCT, wherein the specific channel number and the specific program number are recorded in the loaded information of VCT.

Step1238: Are all of the possible mappings derived using the loaded information of VCT? If yes, go to step1240; otherwise, go to step1236to determine another mapping.

Step1240: Check if information of the next VCT received via the selected communication channel has content changes. If yes, go to step1234to update the mappings; otherwise, go to step1242.

Step1242: Is a communication channel with another designated physical channel number selected? If yes, go to step1204; otherwise, go to step1240.

When a communication channel (i.e., a physical channel) with a designated physical channel number is selected due to a physical channel change (Steps1202,1230,1232, and1242), the operation of setting at least a mapping between a virtual channel number and a program number is executed (Steps1204-1214,1222-1226,1234-1238). In addition, when a VCT/PAT content change is detected, for example, by a receiver end (Steps1216,1228,1240), the operation of setting at least a mapping between a channel number and a program number is executed to update the mappings for the currently selected physical channel. As mentioned above, it is possible that the VCT and PAT are both available from the selected communication channel, only the PAT is available from the selected communication channel, or only the VCT is available from the selected communication channel. As a person skilled in the art would readily understand how to determine a mapping between a channel number and a program number under one of these cases after reading above paragraphs directed to examples shown inFIG. 3-FIG. 11, further description is omitted here for the sake of brevity.

It should be noted that the timing of initiating the execution of identifying a mapping between a virtual channel number and a program number is for illustrative purposes only. Any alternative design without departing the spirit of the present is feasible. In addition, any implementation which uses the mapping schemes proposed in the present invention falls in the scope of the present invention. Furthermore, steps1208,1222, and1234shown inFIG. 12andFIG. 13employ the aforementioned partial data loading scheme to load the required information only, which reduces the memory requirement greatly.

In conclusion, even though the source end of the digital television broadcasting fails to provide a complete and error-free VCT, the exemplary method of the present invention is capable of identifying any possible mapping between a channel number (e.g., a virtual channel number) and a program number according to a first table complying with a specific television standard (e.g., a VCT complying with the ATSC standard) and a second table complying with a specific MPEG standard (e.g., a PAT complying with the MPEG-2 standard). More specifically, in certain exemplary embodiments of the present invention, the program numbers recorded in PAT are referenced for setting the mappings. As a result, the number of channels that the user can select can be increased.