WO2008002312A1 - Method and apparatus for reducing channel change times - Google Patents

Method and apparatus for reducing channel change times Download PDF

Info

Publication number
WO2008002312A1
WO2008002312A1 PCT/US2006/025222 US2006025222W WO2008002312A1 WO 2008002312 A1 WO2008002312 A1 WO 2008002312A1 US 2006025222 W US2006025222 W US 2006025222W WO 2008002312 A1 WO2008002312 A1 WO 2008002312A1
Authority
WO
WIPO (PCT)
Prior art keywords
channel
selection
user
channels
tunes
Prior art date
Application number
PCT/US2006/025222
Other languages
French (fr)
Inventor
David Emery Virag
Michael Anthony Pugel
Original Assignee
Thomson Licensing
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Thomson Licensing filed Critical Thomson Licensing
Priority to PCT/US2006/025222 priority Critical patent/WO2008002312A1/en
Publication of WO2008002312A1 publication Critical patent/WO2008002312A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/44Receiver circuitry for the reception of television signals according to analogue transmission standards
    • H04N5/50Tuning indicators; Automatic tuning control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing 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/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44213Monitoring of end-user related data
    • H04N21/44222Analytics of user selections, e.g. selection of programs or purchase activity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/426Internal components of the client ; Characteristics thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing 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/438Interfacing the downstream path of the transmission network originating from a server, e.g. retrieving MPEG packets from an IP network
    • H04N21/4383Accessing a communication channel
    • H04N21/4384Accessing a communication channel involving operations to reduce the access time, e.g. fast-tuning for reducing channel switching latency
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management 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/4508Management of client data or end-user data
    • H04N21/4532Management of client data or end-user data involving end-user characteristics, e.g. viewer profile, preferences
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/475End-user interface for inputting end-user data, e.g. personal identification number [PIN], preference data
    • H04N21/4755End-user interface for inputting end-user data, e.g. personal identification number [PIN], preference data for defining user preferences, e.g. favourite actors or genre

Definitions

  • the present invention generally relates to a method for reducing channel change times in apparatuses such as digital television signal receivers.
  • Apparatuses such as digital television signal receivers may experience an undesirable time delay when changing channels. This time delay may be attributable to various factors including the time required to tune and obtain a demodulation lock on a selected channel. With digital video systems, this time delay may also include the processing time required to produce a first full video l-frame available for decoding, the actual decoding time for the video I- frame, and the time required for outputting the first video l-frame. In systems with conditional access, the time delay associated with obtaining decryption information may further delay the process. For certain digital video systems, the combined time delays from the aforementioned processing functions may total over a second. This is greater than time delays associated with traditional analog television services, and may be particularly annoying for individuals that frequently select different channels (e.g., "channel surf").
  • the present invention described herein addresses the foregoing problems by providing a method and apparatus capable of reducing channel change times.
  • the present invention also provides other advantages including enabling individual users to select desired channel change algorithms.
  • a method for changing channels comprises steps of enabling a user to select an algorithm from a plurality of algorithms, pre-tuning at least one channel based on the selection, receiving an input requesting a channel, determining whether the requested channel is pre-tuned responsive to the input, enabling output of the requested channel, and wherein the requested channel is output more rapidly if the requested channel is pre-tuned than if the requested channel is not pre-tuned.
  • an apparatus for changing channels comprises first means for enabling a user to select an algorithm from a plurality of algorithms, and second means for pre-tuning at least one channel based on the selection.
  • the first means determines whether a requested channel is pre- tuned by the second means responsive to an input, and enables output of the requested channel.
  • the requested channel is output more rapidly if the requested channel is pre-tuned than if the requested channel is not pre-tuned.
  • an apparatus for changing channels comprises a processor operative to enable a user to select an algorithm from a plurality of algorithms, and at least one tuner operative to pre-tune at least one channel based on the selection.
  • the processor determines whether a requested channel is pre-tuned by the at least one tuner responsive to an input, and enables output of the requested channel.
  • the requested channel is output more rapidly if the requested channel is pre-tuned than if the requested channel is not pre-tuned.
  • FIG. 1 is a block diagram of an apparatus according to an exemplary embodiment of the present invention
  • FIG. 2 is a flowchart illustrating steps for facilitating user selection of channel change algorithms according to an exemplary embodiment of the present invention.
  • FIG. 3 is a flowchart illustrating steps for providing rapid channel changes according to an exemplary embodiment of the present invention.
  • apparatus 100 is embodied as a multi-channel digital television signal receiver comprising front-end processing means such as front-end processor 10, demultiplexing means such as demultiplexer 20, first-in, first-out (FIFO) means such as FIFO 30, decoding means such as decoder 40, picture display memory means such as picture display memory 50, and processing and memory means such as processor and memory 60.
  • front-end processing means such as front-end processor 10
  • demultiplexing means such as demultiplexer 20
  • FIFO first-in, first-out
  • decoding means such as decoder 40
  • picture display memory means such as picture display memory 50
  • processing and memory means such as processor and memory 60.
  • the foregoing elements of apparatus 100 may be implemented using one or more integrated circuits (ICs).
  • ICs integrated circuits
  • Front-end processor 10 is operative to perform various front-end processing functions. According to an exemplary embodiment, front-end processor 10 is operative to receive and process a signal including a plurality of channels of audio and/or video content provided from one or more signal sources. Front-end processor 10 performs processing functions including channel tuning, analog-to-digital (A/D) conversion, demodulation and forward error correction (FEC) functions to thereby generate n digital output streams that each correspond to a given channel (where n is an integer value greater than one).
  • A/D analog-to-digital
  • FEC forward error correction
  • the channel tuning function of front-end processor 10 is controlled by a control signal provided from processor 60 responsive to a channel change input from a user (e.g., via remote control device, etc.).
  • the channel tuning function of front-end processor 10 may convert received signals from a relatively high frequency band to baseband or near baseband signals.
  • the tuned baseband signals are converted to digital signals which are demodulated to generate demodulated digital signals.
  • front-end processor 10 may be operative to demodulate various types of signals such as Quadrature Amplitude Modulated (QAM) signals, Phase Shift Keyed (PSK, e.g., QPSK) signals, and/or signals having other types of modulation.
  • QAM Quadrature Amplitude Modulated
  • PSK Phase Shift Keyed
  • the FEC decoding function is applied to the demodulated digital signals to thereby generate error corrected digital signals.
  • the FEC decoding function of front-end processor 10 may include Reed-Solomon (R-S) FEC, de-interleaving, Viterbi and/or other functions.
  • R-S Reed-Solomon
  • front-end processor 10 is shown in FIG. 1 as a single block, it may for example be comprised of various individual elements including n tuners, n A/D converters, n demodulators and n FEC units.
  • front- end processor 10 may include one A/D converter, n tuners, n demodulators and n FEC units and be implemented using digital signal processing techniques.
  • the n tuners of front-end processor 10 may be used to pre- tune certain channels, and thereby provide reduced channel change times when those pre-tuned channels are selected by a user.
  • one or more of the n tuners may also be used for other functions, such as a personal video recording (PVR) function, a picture-in-picture (PIP) display function and/or a re-transmission function.
  • PVR personal video recording
  • PIP picture-in-picture
  • Demultiplexer 20 is operative to perform a demultiplexing function.
  • demultiplexer 20 de-multiplexes the error corrected digital signals output from front-end processor 10 into n digital output streams.
  • FIFO 30 is operative to perform a buffering function on a FIFO basis.
  • FIFO 30 buffers the n digital output streams provided from demultiplexer 20 and outputs the same on a FIFO basis.
  • Decoder 40 is operative to perform a decoding function.
  • decoder 40 decodes (e.g., using Moving Picture Expert Group (MPEG) decoding, etc.) the n digital output streams provided from FIFO 30 to thereby generate n decoded digital output streams.
  • Picture display memory 50 is operative to store the n decoded digital output streams provided from decoder 40, and output the same for ultimate presentation to a user (e.g., display, etc.).
  • MPEG Moving Picture Expert Group
  • Processor and memory 60 are operative to perform processing and data storage functions, respectively.
  • processor 60 enables and controls a channel changing function of apparatus 100 that is capable of reducing channel change times.
  • processor 60 enables a user to select a desired channel change algorithm from a plurality of different channel change algorithms.
  • the selected channel change algorithm is used by apparatus 100 whenever that particular user is registered as the current active user of apparatus 100.
  • each of the selectable channel change algorithms causes apparatus 100 to pre-tune and pre-process (e.g., demodulate, decode, etc.) one or more channels based on different criteria.
  • Processor 60 is also operative to output control signals that control the functions of the other elements of FIG. 1.
  • Memory 60 is operative to store data including data related to the various user selectable channel change algorithms and channel list data for one or more users. Further details regarding processor 60 and memory 60 will be provided later herein.
  • a flowchart 200 illustrating steps for facilitating user selection of channel change algorithms according to an exemplary embodiment of the present invention is shown.
  • the steps of FIG. 2 will be described with reference to apparatus 100 of FIG. 1 described above.
  • the steps of FIG. 2 are exemplary only, and are not intended to limit the present invention in any manner.
  • a user enters a setup process of apparatus 20.
  • the user enters the setup process at step 210 by providing one or more predetermined inputs to apparatus 100 (e.g., via a remote control device or other input element not shown in FIGS.).
  • the setup process enables a user to select various user settings relating to the operation of apparatus 100, including a desired channel change algorithm which will be described later herein.
  • the selection of user settings other than channel change algorithms will not be described herein.
  • apparatus 100 provides one or more on-screen menus listing various channel change algorithms that may be selected by the user.
  • processor 60 enables the display of the on-screen menu(s) at step 220 using data stored in memory 60.
  • the on-screen menu(s) provided at step 220 may also include a descriptive explanation of each of the channel change algorithms to assist the user in his/her selection. The user may for example toggle through multiple on-screen pages to read the descriptive explanations of the various channel change algorithms before actually selecting one. One of the algorithms may be highlighted as an initial pre-set or default algorithm. The actual number of channel change algorithms offered for selection at step 220 may be a matter of design choice.
  • each of the channel change algorithms offered for selection at step 220 causes apparatus 100 to pre-tune and pre-process (e.g., demodulate, decode, etc.) one or more channels based on different criteria. As will be described later herein, these pre-tuned and pre-processed channels are included in a channel list for the corresponding user. By pre-tuning and pre-processing these certain channels, the time lags associated with conventional channel changes may be significantly reduced when these pre-tuned and pre-processed channels are selected by a user.
  • the channel change algorithms offered for selection at step 220 may predict future channel changes based on the past channel selection habits of the user, or may be based on specific channel or information selections by the user. According to an exemplary embodiment, at least the following different channel change algorithms may be offered for user selection at step 220:
  • Pattern Based Algorithm - This algorithm causes one or more channels to be pre-tuned and pre-processed based on a detected pattern in user channel selection habits. For example, a user may select channels in a pattern such that channel A is selected first, channel B is selected second, and channel C is selected third.
  • processor 60 may cause apparatus 100 to pre-tune and pre- process channel B and/or channel C in response to the user selecting channel A.
  • This algorithm causes one or more channels to be pre-tuned and pre-processed based on the time of day.
  • this algorithm detects that a user may select certain channels at approximately the same time of day. For example, if a user selects channel A just before or after 4 PM each day, processor 60 may cause apparatus 100 to pre-tune and pre-process channel A at 4 PM each day. Thereafter, if the user selects channel B at approximately 5 PM each day, processor 60 may cause apparatus 100 to pre-tune and pre-process channel B at 5 PM each day.
  • FIFO First-ln. First-Out (FIFO) Based Algorithm -
  • This algorithm causes one or more channels to be pre-tuned and pre-processed based on FIFO principles. According to this algorithm, if apparatus 100 has n tuners, these n tuners are used to tune the previous n channels.
  • This algorithm is based on the notion that a user may frequently navigate (e.g., "channel surf") on a small, but fixed number of favorite channels (e.g., a sports fan monitoring several sporting events simultaneously, etc.). Each time a channel is selected and tuned (or re-selected and re-tuned), a time- stamp is recorded in memory 60 with the channel number.
  • the channel list becomes full.
  • the oldest (i.e., earliest tuned) channel is dropped from the channel list and replaced with the most recently selected channel and the process continues.
  • a possible user interface could be a BACK or FORWARD key on a remote control device or other input element.
  • D. Channel Up/Channel Down Based Algorithm - This algorithm causes one or more channels to be pre-tuned and pre-processed based on the use of a channel up key and/or a channel down key on an input element (e.g., remote control device, etc.) of apparatus 100.
  • an input element e.g., remote control device, etc.
  • apparatus 100 may respond by pre-tuning and pre-processing channels 6 and 7.
  • Apparatus 100 may also have already pre-tuned and pre-processed channel 3 so that at the time the user is watching and/or listening to channel 5, apparatus 100 may be pre-tuning and pre-processing channels 3, 4, 6 and 7. User input of the channel up key would cause channel 6 (which is already pre-tuned and pre-processed) to be output, and further cause apparatus 100 to pre-tune and pre-process channel 8 using its processing resources previously allocated to channel 3 (i.e., channel 3 is dropped from channel list and is no longer pre-tuned and pre-processed).
  • apparatus 100 may re-tune and re-process channel 3, while dropping channel 8 from the channel list (i.e., channel 8 is no longer pre-tuned and pre-processed).
  • the currently selected channel represents a sort of "centroid" or median with at least one channel above and/or below the currently selected channel being pre-tuned and pre-processed in anticipation of the user inputting the channel up key and/or a channel down key.
  • Point Based Algorithm This algorithm causes one or more channels to be pre-tuned and pre-processed based on assigned points, and may be based on long- term historical information related to a user's channel selection habits.
  • apparatus 100 stores assigned point data in memory 60 to keep track of each time a channel is selected, where "selected" might mean that the channel is output for longer than some specified time period.
  • a long-term histogram may be created by processor 60 incrementing a point counter representing each time a channel is selected.
  • some channels may be selected by a user much more frequently than other channels. For example, assume channels 6, 8, 13, 20 and 70 have 70, 95, 45, 66 and 120 points, respectively, and all other channels have fewer points.
  • Apparatus 100 may then tune the currently selected channel plus pre-tune and pre-process additional channels according to the highest number of assigned points. In this manner, apparatus 100 pre-tunes and pre- processes channels based on frequency of selection.
  • an input element (e.g., remote control device) of apparatus 100 may include a designated key that causes apparatus 100 to automatically cycle through the channels having the highest number of assigned points each time the key is pressed. Over time, the most frequently selected channels may change and some channels may be replaced by new channels based on the assigned number of points.
  • This algorithm may also be modified to include the element of time, such that a new "weighted" point count is determined by factoring in the age of the point count. For example, if two channels each have 50 points, the channel that was weighted higher by being selected more recently would out-rank the channel that had been selected less recently.
  • F. Specific Channel Based Algorithm - This algorithm causes one or more channels to be pre-tuned and pre-processed based on specific channel selections by the user. For example, a user may use this algorithm to define a list of "fast" or "favorite" channels. A user may directly program his/her favorite channels into a channel list in memory 60 and n-1 of the tuners of apparatus 100 can pre-tune these favorite channels with the nth tuner used for the channel currently being output. An input element (e.g., remote control device) of apparatus 100 may also include a designated key that causes apparatus 100 to cycle through the list of favorite channels when pressed. A user may edit this list as desired. G.
  • An input element e.g., remote control device
  • This algorithm causes one or more channels to be pre-tuned and pre-processed based on specific information selections by the user.
  • a user may input specific information to apparatus 100 defining his/her favorite programs, genres, or actors, or any combination thereof. Data corresponding to these specific information selections may be stored in one or more channel lists in memory 60.
  • Processor 60 may then periodically scan program guide information in memory 60, and cause apparatus 100 to pre-tune and pre-process channels that may have desirable programming in accordance with the user's specific information selections.
  • processor 60 may cause apparatus 100 to pre-tune and pre-process channels that provide a user's favorite selected programs, and/or programs having user defined genres and/or actors.
  • a user interface for this algorithm may include a single key to cycle through a suggestions list, or perhaps a micro-guide that can be viewed containing information on suggested fast-tune channels and how to tune them.
  • a user selects one of the channel change algorithms offered for selection at step 220.
  • the user may select a particular channel change algorithm at step 230 by providing one or more predetermined inputs to apparatus 100.
  • the initial pre-set or default algorithm (if any) may be automatically selected if the user fails to provide an input at step 230. In such a case, the user is deemed to have selected the initial pre-set or default algorithm.
  • data corresponding to the selection is stored in memory 60 under the control of processor 60 and the selected channel change algorithm will be used by apparatus 100 whenever that particular user is registered as the current active user of apparatus 100.
  • a user may register himself/herself as the current active user of apparatus 100 by providing one or more predetermined inputs to apparatus 100, such as by inputting his/her name and/or a password.
  • a determination is made as to whether another user wants to select a channel change algorithm. If the determination at step 240 is positive, process flow loops back to step 230 where another user may select a desired channel change algorithm in the previously described manner. Steps 230 and 240 may be repeatedly performed for as many users as apparatus 100 can accommodate. Once the determination at step 240 is negative, process flow advances to step 250 where the setup process is exited.
  • apparatus 100 When multiple users select a channel change algorithm in FIG. 2, the selected channel change algorithm will be used by apparatus 100 whenever those particular users are registered as the current active user of apparatus 100. In this manner, apparatus 100 may adaptively change the channel change algorithms it uses on a user-by-user basis. For example, apparatus 100 may use algorithm A for user A, algorithm B for user B, algorithm C for user, and so on. Also, different users may select the same algorithm. As will be described hereinafter, each algorithm causes apparatus 100 to create and maintain a channel list of pre-tuned and pre-processed channels for each user.
  • FIG. 3 a flowchart 300 illustrating steps for providing rapid channel changes according to exemplary embodiments of the present invention is shown.
  • the steps of FIG. 3 will also be described with reference to apparatus 100 of FIG. 1 described above. It is noted that the steps of FIG. 3 correspond to a single user and may be repeatedly performed on a user-by-user basis. Accordingly, it is assumed that a particular user has first registered himself/herself as the current active user of apparatus 100 before the steps of FIG. 3 are performed.
  • the steps of FIG. 3 are exemplary only, and are not intended to limit the present invention in any manner.
  • a user provides a channel change input to apparatus 100.
  • the channel change input may be provided at step 310 by the user pressing one or more keys on an input element (e.g., remote control device, etc.) of apparatus 100, such as a channel up key, a channel down key, one or more numeric keys, etc.
  • the input at step 310 represents a user request for apparatus 100 to change the channel it is currently outputting by switching to another channel (i.e., a requested channel).
  • apparatus 100 checks a channel list corresponding to the particular user via processor 60.
  • each user that has selected a channel change algorithm at step 230 of FIG. 2 has an associated channel list stored in memory 60 representing any channels that apparatus 100 has pre-tuned and pre-processed for rapid output upon selection.
  • the contents of this channel list may vary depending on the particular channel change algorithm selected by the user.
  • certain channel change algorithms such as algorithms A through E, are based on past channel selections by the user and may therefore require multiple user inputs before a corresponding channel list can be completely populated.
  • channel change algorithms are based on specific channel or information selections by the user and may therefore produce a completely populated channel list through a onetime user selection process.
  • processor 60 examines channel list data in memory 60 to make the determination at step 330. If the determination at step 330 is positive, process flow advances to step 340 where apparatus 100 switches to the requested channel from the channel list (i.e., without re-tuning and re-processing the channel).
  • processor 60 enables step 340 by outputting one or more control signals that cause the requested channel to be switched to without having to re-tune and re-process the channel.
  • This switching operation involves selecting one or more digital output streams corresponding to the requested channel that is already being tuned and processed by apparatus 100. It is noted that a given channel may be comprised of multiple digital output streams (e.g., one for audio content and one for video content).
  • process flow advances to step 350 where apparatus 100 tunes the requested channel as a new channel.
  • processor 60 enables the requested channel to be tuned as a new channel by outputting one or more control signals that cause front-end processor 10 to tune and process the requested channel.
  • step 360 apparatus 100 outputs the requested channel. It is important to note that the requested channel is output more rapidly at step 360 if the requested channel is included in the channel list (and is therefore pre- tuned and pre-processed), than if the requested channel is not included in the channel list (and is not pre-tuned and pre-processed).
  • step 370 apparatus 100 updates the channel list for the user, if necessary.
  • apparatus 100 updates the channel list for the particular user, when necessary, according to the user's selected channel change algorithm. Updating the channel list at step 370 is performed by processor 60 updating channel list data stored in memory 60. Some algorithms may not require the user's channel list to be updated at step 370, while others may require an update. Updating the channel list at step 370 may for example cause a channel to be added to the channel list and/or a channel to be dropped from the channel list.
  • a non-channel change input to apparatus 100 may occur.
  • the non-channel change input may include inputs provided for channel change algorithms F and G described above.
  • a user may provide specific channel or information selections which facilitate his/her selected channel change algorithm.
  • process flow advances to step 370 where apparatus 100 updates its channel list for the user if necessary.
  • process flow loops back to step 310 where the foregoing steps may be repeated for the same user or for a different user.
  • the present invention provides a method for reducing channel change times in apparatuses such as digital television signal receivers.
  • the present invention may be applicable to various apparatuses, either with or without an integrated display device.
  • the term "apparatus” as used herein may refer to systems or apparatuses including, but not limited to, television sets, computers, radios, or monitors that include an integrated display device, and systems or apparatuses such as set-top boxes, video cassette recorders (VCRs), digital versatile disk (DVD) players, video game boxes, personal video recorders (PVRs), computers, radios or other apparatuses that may not include an integrated display device.
  • VCRs video cassette recorders
  • DVD digital versatile disk
  • PVRs personal video recorders

Abstract

An apparatus (100) such as a digital television signal receiver is capable of reducing channel change times. According to an exemplary embodiment, the apparatus (100) includes a processor (60) operative to enable a user to select an algorithm from a plurality of algorithms, and at least one tuner (10) operative to pre-tune at least one channel based on the selection. The processor (60) determines whether a requested channel is pre-tuned by the at least one tuner (10) responsive to an input, and enables output of the requested channel. The requested channel is output more rapidly if the requested channel is pre-tuned than if the requested channel is not pre-tuned.

Description

METHOD AND APPARATUS FOR REDUCING CHANNEL CHANGE TIMES
The present invention generally relates to a method for reducing channel change times in apparatuses such as digital television signal receivers. Apparatuses such as digital television signal receivers may experience an undesirable time delay when changing channels. This time delay may be attributable to various factors including the time required to tune and obtain a demodulation lock on a selected channel. With digital video systems, this time delay may also include the processing time required to produce a first full video l-frame available for decoding, the actual decoding time for the video I- frame, and the time required for outputting the first video l-frame. In systems with conditional access, the time delay associated with obtaining decryption information may further delay the process. For certain digital video systems, the combined time delays from the aforementioned processing functions may total over a second. This is greater than time delays associated with traditional analog television services, and may be particularly annoying for individuals that frequently select different channels (e.g., "channel surf").
The present invention described herein addresses the foregoing problems by providing a method and apparatus capable of reducing channel change times. The present invention also provides other advantages including enabling individual users to select desired channel change algorithms.
In accordance with an aspect of the present invention, a method for changing channels is disclosed. According to an exemplary embodiment, the method comprises steps of enabling a user to select an algorithm from a plurality of algorithms, pre-tuning at least one channel based on the selection, receiving an input requesting a channel, determining whether the requested channel is pre-tuned responsive to the input, enabling output of the requested channel, and wherein the requested channel is output more rapidly if the requested channel is pre-tuned than if the requested channel is not pre-tuned.
In accordance with another aspect of the present invention, an apparatus for changing channels is disclosed. According to an exemplary embodiment, the apparatus comprises first means for enabling a user to select an algorithm from a plurality of algorithms, and second means for pre-tuning at least one channel based on the selection. The first means determines whether a requested channel is pre- tuned by the second means responsive to an input, and enables output of the requested channel. The requested channel is output more rapidly if the requested channel is pre-tuned than if the requested channel is not pre-tuned.
In accordance with another aspect of the present invention, an apparatus for changing channels is disclosed. According to an exemplary embodiment, the apparatus comprises a processor operative to enable a user to select an algorithm from a plurality of algorithms, and at least one tuner operative to pre-tune at least one channel based on the selection. The processor determines whether a requested channel is pre-tuned by the at least one tuner responsive to an input, and enables output of the requested channel. The requested channel is output more rapidly if the requested channel is pre-tuned than if the requested channel is not pre-tuned.
The above-mentioned and other features and advantages of this invention, and the manner of attaining them, will become more apparent and the invention will be better understood by reference to the following description of embodiments of the invention taken in conjunction with the accompanying drawings, wherein:
FIG. 1 is a block diagram of an apparatus according to an exemplary embodiment of the present invention;
FIG. 2 is a flowchart illustrating steps for facilitating user selection of channel change algorithms according to an exemplary embodiment of the present invention; and
FIG. 3 is a flowchart illustrating steps for providing rapid channel changes according to an exemplary embodiment of the present invention.
The exemplifications set out herein illustrate preferred embodiments of the invention, and such exemplifications are not to be construed as limiting the scope of the invention in any manner.
Referring now to the drawings, and more particularly to FIG. 1 , a block diagram of an apparatus 100 according to an exemplary embodiment of the present invention is shown. According to an exemplary embodiment, apparatus 100 is embodied as a multi-channel digital television signal receiver comprising front-end processing means such as front-end processor 10, demultiplexing means such as demultiplexer 20, first-in, first-out (FIFO) means such as FIFO 30, decoding means such as decoder 40, picture display memory means such as picture display memory 50, and processing and memory means such as processor and memory 60. The foregoing elements of apparatus 100 may be implemented using one or more integrated circuits (ICs). For clarity of description, certain conventional elements associated with apparatus 100 such as power signals, certain control signals, and audio and video output elements may not be expressly shown in FIG. 1. Front-end processor 10 is operative to perform various front-end processing functions. According to an exemplary embodiment, front-end processor 10 is operative to receive and process a signal including a plurality of channels of audio and/or video content provided from one or more signal sources. Front-end processor 10 performs processing functions including channel tuning, analog-to-digital (A/D) conversion, demodulation and forward error correction (FEC) functions to thereby generate n digital output streams that each correspond to a given channel (where n is an integer value greater than one). The channel tuning function of front-end processor 10 is controlled by a control signal provided from processor 60 responsive to a channel change input from a user (e.g., via remote control device, etc.). According to an exemplary embodiment, the channel tuning function of front-end processor 10 may convert received signals from a relatively high frequency band to baseband or near baseband signals. The tuned baseband signals are converted to digital signals which are demodulated to generate demodulated digital signals. According to an exemplary embodiment, front-end processor 10 may be operative to demodulate various types of signals such as Quadrature Amplitude Modulated (QAM) signals, Phase Shift Keyed (PSK, e.g., QPSK) signals, and/or signals having other types of modulation. The FEC decoding function is applied to the demodulated digital signals to thereby generate error corrected digital signals. According to an exemplary embodiment, the FEC decoding function of front-end processor 10 may include Reed-Solomon (R-S) FEC, de-interleaving, Viterbi and/or other functions. Although front-end processor 10 is shown in FIG. 1 as a single block, it may for example be comprised of various individual elements including n tuners, n A/D converters, n demodulators and n FEC units. According to another exemplary embodiment, front- end processor 10 may include one A/D converter, n tuners, n demodulators and n FEC units and be implemented using digital signal processing techniques. As will be described later herein, the n tuners of front-end processor 10 may be used to pre- tune certain channels, and thereby provide reduced channel change times when those pre-tuned channels are selected by a user. In addition to this pre-tuning function, one or more of the n tuners may also be used for other functions, such as a personal video recording (PVR) function, a picture-in-picture (PIP) display function and/or a re-transmission function. However, any of the n tuners that are not used for these latter functions is available for pre-tuning channels. Demultiplexer 20 is operative to perform a demultiplexing function. According to an exemplary embodiment, demultiplexer 20 de-multiplexes the error corrected digital signals output from front-end processor 10 into n digital output streams. FIFO 30 is operative to perform a buffering function on a FIFO basis. According to an exemplary embodiment, FIFO 30 buffers the n digital output streams provided from demultiplexer 20 and outputs the same on a FIFO basis.
Decoder 40 is operative to perform a decoding function. According to an exemplary embodiment, decoder 40 decodes (e.g., using Moving Picture Expert Group (MPEG) decoding, etc.) the n digital output streams provided from FIFO 30 to thereby generate n decoded digital output streams. Picture display memory 50 is operative to store the n decoded digital output streams provided from decoder 40, and output the same for ultimate presentation to a user (e.g., display, etc.).
Processor and memory 60 are operative to perform processing and data storage functions, respectively. According to an exemplary embodiment, processor 60 enables and controls a channel changing function of apparatus 100 that is capable of reducing channel change times. According to this exemplary embodiment, processor 60 enables a user to select a desired channel change algorithm from a plurality of different channel change algorithms. The selected channel change algorithm is used by apparatus 100 whenever that particular user is registered as the current active user of apparatus 100. In general, each of the selectable channel change algorithms causes apparatus 100 to pre-tune and pre-process (e.g., demodulate, decode, etc.) one or more channels based on different criteria. These pre-tuned and pre-processed channels are included in a channel list for the particular user and are available for immediate output from picture display memory 50 upon selection. By pre-tuning and pre-processing certain channels, the time lags associated with conventional channel changes may be significantly reduced when these pre-tuned and pre-processed channels are selected by a user. Processor 60 is also operative to output control signals that control the functions of the other elements of FIG. 1. Memory 60 is operative to store data including data related to the various user selectable channel change algorithms and channel list data for one or more users. Further details regarding processor 60 and memory 60 will be provided later herein.
Referring now to FIG. 2, a flowchart 200 illustrating steps for facilitating user selection of channel change algorithms according to an exemplary embodiment of the present invention is shown. For purposes of example and explanation, the steps of FIG. 2 will be described with reference to apparatus 100 of FIG. 1 described above. The steps of FIG. 2 are exemplary only, and are not intended to limit the present invention in any manner. At step 210, a user enters a setup process of apparatus 20. According to an exemplary embodiment, the user enters the setup process at step 210 by providing one or more predetermined inputs to apparatus 100 (e.g., via a remote control device or other input element not shown in FIGS.). In general, the setup process enables a user to select various user settings relating to the operation of apparatus 100, including a desired channel change algorithm which will be described later herein. For clarity of description, the selection of user settings other than channel change algorithms will not be described herein.
At step 220, apparatus 100 provides one or more on-screen menus listing various channel change algorithms that may be selected by the user. According to an exemplary embodiment, processor 60 enables the display of the on-screen menu(s) at step 220 using data stored in memory 60. In addition to a listing of the selectable channel change algorithms, the on-screen menu(s) provided at step 220 may also include a descriptive explanation of each of the channel change algorithms to assist the user in his/her selection. The user may for example toggle through multiple on-screen pages to read the descriptive explanations of the various channel change algorithms before actually selecting one. One of the algorithms may be highlighted as an initial pre-set or default algorithm. The actual number of channel change algorithms offered for selection at step 220 may be a matter of design choice.
In general, each of the channel change algorithms offered for selection at step 220 causes apparatus 100 to pre-tune and pre-process (e.g., demodulate, decode, etc.) one or more channels based on different criteria. As will be described later herein, these pre-tuned and pre-processed channels are included in a channel list for the corresponding user. By pre-tuning and pre-processing these certain channels, the time lags associated with conventional channel changes may be significantly reduced when these pre-tuned and pre-processed channels are selected by a user. The channel change algorithms offered for selection at step 220 may predict future channel changes based on the past channel selection habits of the user, or may be based on specific channel or information selections by the user. According to an exemplary embodiment, at least the following different channel change algorithms may be offered for user selection at step 220:
A. Pattern Based Algorithm - This algorithm causes one or more channels to be pre-tuned and pre-processed based on a detected pattern in user channel selection habits. For example, a user may select channels in a pattern such that channel A is selected first, channel B is selected second, and channel C is selected third. In this example, processor 60 may cause apparatus 100 to pre-tune and pre- process channel B and/or channel C in response to the user selecting channel A.
B. Time Based Algorithm - This algorithm causes one or more channels to be pre-tuned and pre-processed based on the time of day. In particular, this algorithm detects that a user may select certain channels at approximately the same time of day. For example, if a user selects channel A just before or after 4 PM each day, processor 60 may cause apparatus 100 to pre-tune and pre-process channel A at 4 PM each day. Thereafter, if the user selects channel B at approximately 5 PM each day, processor 60 may cause apparatus 100 to pre-tune and pre-process channel B at 5 PM each day.
C. First-ln. First-Out (FIFO) Based Algorithm - This algorithm causes one or more channels to be pre-tuned and pre-processed based on FIFO principles. According to this algorithm, if apparatus 100 has n tuners, these n tuners are used to tune the previous n channels. This algorithm is based on the notion that a user may frequently navigate (e.g., "channel surf") on a small, but fixed number of favorite channels (e.g., a sports fan monitoring several sporting events simultaneously, etc.). Each time a channel is selected and tuned (or re-selected and re-tuned), a time- stamp is recorded in memory 60 with the channel number. After the first n different channels have been selected, tuned and placed in a channel list of memory 60, the channel list becomes full. As a new channel is selected and tuned, the oldest (i.e., earliest tuned) channel is dropped from the channel list and replaced with the most recently selected channel and the process continues. According to this algorithm, only channels included in the channel list are pre-tuned and pre-processed for rapid output upon selection. A possible user interface could be a BACK or FORWARD key on a remote control device or other input element.
D. Channel Up/Channel Down Based Algorithm - This algorithm causes one or more channels to be pre-tuned and pre-processed based on the use of a channel up key and/or a channel down key on an input element (e.g., remote control device, etc.) of apparatus 100. According to this algorithm, if apparatus 100 has n tuners, then some subset of those tuners, say f, where f < n, can be used for forward prediction (i.e., perhaps they tune the next f channels in sequential order). For example, if a user changes the channel from channel 4 to channel 5, apparatus 100 may respond by pre-tuning and pre-processing channels 6 and 7. Apparatus 100 may also have already pre-tuned and pre-processed channel 3 so that at the time the user is watching and/or listening to channel 5, apparatus 100 may be pre-tuning and pre-processing channels 3, 4, 6 and 7. User input of the channel up key would cause channel 6 (which is already pre-tuned and pre-processed) to be output, and further cause apparatus 100 to pre-tune and pre-process channel 8 using its processing resources previously allocated to channel 3 (i.e., channel 3 is dropped from channel list and is no longer pre-tuned and pre-processed). If the user then inputs the channel down key to select channel 5, apparatus 100 may re-tune and re-process channel 3, while dropping channel 8 from the channel list (i.e., channel 8 is no longer pre-tuned and pre-processed). According to this algorithm, the currently selected channel represents a sort of "centroid" or median with at least one channel above and/or below the currently selected channel being pre-tuned and pre-processed in anticipation of the user inputting the channel up key and/or a channel down key. E. Point Based Algorithm - This algorithm causes one or more channels to be pre-tuned and pre-processed based on assigned points, and may be based on long- term historical information related to a user's channel selection habits. According to an exemplary embodiment of this algorithm, apparatus 100 stores assigned point data in memory 60 to keep track of each time a channel is selected, where "selected" might mean that the channel is output for longer than some specified time period. A long-term histogram may be created by processor 60 incrementing a point counter representing each time a channel is selected. Over time, some channels may be selected by a user much more frequently than other channels. For example, assume channels 6, 8, 13, 20 and 70 have 70, 95, 45, 66 and 120 points, respectively, and all other channels have fewer points. Apparatus 100 may then tune the currently selected channel plus pre-tune and pre-process additional channels according to the highest number of assigned points. In this manner, apparatus 100 pre-tunes and pre- processes channels based on frequency of selection. According to this exemplary embodiment, an input element (e.g., remote control device) of apparatus 100 may include a designated key that causes apparatus 100 to automatically cycle through the channels having the highest number of assigned points each time the key is pressed. Over time, the most frequently selected channels may change and some channels may be replaced by new channels based on the assigned number of points. This algorithm may also be modified to include the element of time, such that a new "weighted" point count is determined by factoring in the age of the point count. For example, if two channels each have 50 points, the channel that was weighted higher by being selected more recently would out-rank the channel that had been selected less recently.
F. Specific Channel Based Algorithm - This algorithm causes one or more channels to be pre-tuned and pre-processed based on specific channel selections by the user. For example, a user may use this algorithm to define a list of "fast" or "favorite" channels. A user may directly program his/her favorite channels into a channel list in memory 60 and n-1 of the tuners of apparatus 100 can pre-tune these favorite channels with the nth tuner used for the channel currently being output. An input element (e.g., remote control device) of apparatus 100 may also include a designated key that causes apparatus 100 to cycle through the list of favorite channels when pressed. A user may edit this list as desired. G. Specific Information Based Algorithm - This algorithm causes one or more channels to be pre-tuned and pre-processed based on specific information selections by the user. According to an exemplary embodiment of this algorithm, a user may input specific information to apparatus 100 defining his/her favorite programs, genres, or actors, or any combination thereof. Data corresponding to these specific information selections may be stored in one or more channel lists in memory 60. Processor 60 may then periodically scan program guide information in memory 60, and cause apparatus 100 to pre-tune and pre-process channels that may have desirable programming in accordance with the user's specific information selections. For example, processor 60 may cause apparatus 100 to pre-tune and pre-process channels that provide a user's favorite selected programs, and/or programs having user defined genres and/or actors. A user interface for this algorithm may include a single key to cycle through a suggestions list, or perhaps a micro-guide that can be viewed containing information on suggested fast-tune channels and how to tune them.
At step 230, a user selects one of the channel change algorithms offered for selection at step 220. According to an exemplary embodiment, the user may select a particular channel change algorithm at step 230 by providing one or more predetermined inputs to apparatus 100. The initial pre-set or default algorithm (if any) may be automatically selected if the user fails to provide an input at step 230. In such a case, the user is deemed to have selected the initial pre-set or default algorithm. After a particular channel change algorithm is selected at step 230, data corresponding to the selection is stored in memory 60 under the control of processor 60 and the selected channel change algorithm will be used by apparatus 100 whenever that particular user is registered as the current active user of apparatus 100. According to an exemplary embodiment, a user may register himself/herself as the current active user of apparatus 100 by providing one or more predetermined inputs to apparatus 100, such as by inputting his/her name and/or a password. At step 240, a determination is made as to whether another user wants to select a channel change algorithm. If the determination at step 240 is positive, process flow loops back to step 230 where another user may select a desired channel change algorithm in the previously described manner. Steps 230 and 240 may be repeatedly performed for as many users as apparatus 100 can accommodate. Once the determination at step 240 is negative, process flow advances to step 250 where the setup process is exited.
When multiple users select a channel change algorithm in FIG. 2, the selected channel change algorithm will be used by apparatus 100 whenever those particular users are registered as the current active user of apparatus 100. In this manner, apparatus 100 may adaptively change the channel change algorithms it uses on a user-by-user basis. For example, apparatus 100 may use algorithm A for user A, algorithm B for user B, algorithm C for user, and so on. Also, different users may select the same algorithm. As will be described hereinafter, each algorithm causes apparatus 100 to create and maintain a channel list of pre-tuned and pre-processed channels for each user.
Referring now to FIG. 3, a flowchart 300 illustrating steps for providing rapid channel changes according to exemplary embodiments of the present invention is shown. For purposes of example and explanation, the steps of FIG. 3 will also be described with reference to apparatus 100 of FIG. 1 described above. It is noted that the steps of FIG. 3 correspond to a single user and may be repeatedly performed on a user-by-user basis. Accordingly, it is assumed that a particular user has first registered himself/herself as the current active user of apparatus 100 before the steps of FIG. 3 are performed. The steps of FIG. 3 are exemplary only, and are not intended to limit the present invention in any manner.
At step 310, a user provides a channel change input to apparatus 100. According to an exemplary embodiment, the channel change input may be provided at step 310 by the user pressing one or more keys on an input element (e.g., remote control device, etc.) of apparatus 100, such as a channel up key, a channel down key, one or more numeric keys, etc. In any event, the input at step 310 represents a user request for apparatus 100 to change the channel it is currently outputting by switching to another channel (i.e., a requested channel).
At step 320, apparatus 100 checks a channel list corresponding to the particular user via processor 60. According to an exemplary embodiment, each user that has selected a channel change algorithm at step 230 of FIG. 2 has an associated channel list stored in memory 60 representing any channels that apparatus 100 has pre-tuned and pre-processed for rapid output upon selection. The contents of this channel list may vary depending on the particular channel change algorithm selected by the user. As previously described herein, certain channel change algorithms, such as algorithms A through E, are based on past channel selections by the user and may therefore require multiple user inputs before a corresponding channel list can be completely populated. Conversely, certain channel change algorithms, such as algorithms F and G, are based on specific channel or information selections by the user and may therefore produce a completely populated channel list through a onetime user selection process. At step 330, a determination is made as to whether the channel requested at step 310 is included in the channel list. According to an exemplary embodiment, processor 60 examines channel list data in memory 60 to make the determination at step 330. If the determination at step 330 is positive, process flow advances to step 340 where apparatus 100 switches to the requested channel from the channel list (i.e., without re-tuning and re-processing the channel). According to an exemplary embodiment, processor 60 enables step 340 by outputting one or more control signals that cause the requested channel to be switched to without having to re-tune and re-process the channel. This switching operation involves selecting one or more digital output streams corresponding to the requested channel that is already being tuned and processed by apparatus 100. It is noted that a given channel may be comprised of multiple digital output streams (e.g., one for audio content and one for video content).
If the determination at step 330 is negative, process flow advances to step 350 where apparatus 100 tunes the requested channel as a new channel. According to an exemplary embodiment, processor 60 enables the requested channel to be tuned as a new channel by outputting one or more control signals that cause front-end processor 10 to tune and process the requested channel. From steps 340 and 350, process flow advances to step 360 where apparatus 100 outputs the requested channel. It is important to note that the requested channel is output more rapidly at step 360 if the requested channel is included in the channel list (and is therefore pre- tuned and pre-processed), than if the requested channel is not included in the channel list (and is not pre-tuned and pre-processed).
From step 360, process flow advances to step 370 where apparatus 100 updates the channel list for the user, if necessary. According to an exemplary embodiment, apparatus 100 updates the channel list for the particular user, when necessary, according to the user's selected channel change algorithm. Updating the channel list at step 370 is performed by processor 60 updating channel list data stored in memory 60. Some algorithms may not require the user's channel list to be updated at step 370, while others may require an update. Updating the channel list at step 370 may for example cause a channel to be added to the channel list and/or a channel to be dropped from the channel list. At step 380, a non-channel change input to apparatus 100 may occur. According to an exemplary embodiment, the non-channel change input may include inputs provided for channel change algorithms F and G described above. For example, a user may provide specific channel or information selections which facilitate his/her selected channel change algorithm. From step 380, process flow advances to step 370 where apparatus 100 updates its channel list for the user if necessary. From step 370, process flow loops back to step 310 where the foregoing steps may be repeated for the same user or for a different user.
As described herein, the present invention provides a method for reducing channel change times in apparatuses such as digital television signal receivers. The present invention may be applicable to various apparatuses, either with or without an integrated display device. Accordingly, the term "apparatus" as used herein may refer to systems or apparatuses including, but not limited to, television sets, computers, radios, or monitors that include an integrated display device, and systems or apparatuses such as set-top boxes, video cassette recorders (VCRs), digital versatile disk (DVD) players, video game boxes, personal video recorders (PVRs), computers, radios or other apparatuses that may not include an integrated display device.
While this invention has been described as having a preferred design, the present invention can be further modified within the spirit and scope of this disclosure. This application is therefore intended to cover any variations, uses, or adaptations of the invention using its general principles. Further, this application is intended to cover such departures from the present disclosure as come within known or customary practice in the art to which this invention pertains and which fall within the limits of the appended claims.

Claims

1. A method (200/300) for changing channels, comprising steps of: enabling a user to select an algorithm from a plurality of algorithms
(230); pre-tuning at least one channel based on said selection; receiving an input requesting a channel (310); determining whether said requested channel is pre-tuned responsive to said input (330); enabling output of said requested channel (360); and wherein said requested channel is output more rapidly if said requested channel is pre-tuned than if said requested channel is not pre-tuned.
2. The method (200/300) of claim 1 , further comprising steps of: enabling a second user to select a second algorithm from said plurality of algorithms (230/240); and pre-tuning at least one channel based on said selection by said second user.
3. The method (200/300) of claim 1 , wherein according to at least one of said algorithms, said pre-tuning step includes tuning said at least one channel based on past channel selection by said user.
4. The method (200/300) of claim 3, wherein said past channel selection includes: selecting a first channel; selecting a second channel after selecting said first channel; selecting a third channel after selecting said second channel; and said pre-tuning step includes tuning said second and third channels responsive to said user selecting said first channel.
5. The method (200/300) of claim 3, wherein said past channel selection includes selecting a first channel at approximately a first time of day, and said pre- tuning step includes tuning said first channel at said first time of day.
6. The method (200/300) of claim 3, wherein said past channel selection includes selecting a plurality of channels and said pre-tuning step includes tuning said plurality of channels on a first-in, first-out basis.
7. The method (200/300) of claim 3, wherein said past channel selection includes using a channel up key, and said pre-tuning step includes tuning at least one channel above a currently selected channel.
8. The method (200/300) of claim 3, wherein said past channel selection includes using a channel down key, and said pre-tuning step includes tuning at least one channel below a currently selected channel.
9. The method (200/300) of claim 3, wherein said past channel selection includes selecting a plurality of channels, and said pre-tuning step includes tuning said plurality of channels based on frequency of selection.
10. The method (200/300) of claim 1, wherein according to at least one of said algorithms, said pre-tuning step includes tuning said at least one channel based on a specific channel selection by said user.
11. The method (200/300) of claim 1 , wherein according to at least one of said algorithms, said pre-tuning step includes tuning said at least one channel based on a specific information selection by said user.
12. The method (200/300) of claim 11 , wherein said specific information includes at least one of a program title, a genre and an actor.
13. An apparatus (100), comprising: first means (60) for enabling a user to select an algorithm from a plurality of algorithms; second means (10) for pre-tuning at least one channel based on said selection; said first means (60) determining whether a requested channel is pre- tuned by said second means (10) responsive to an input, and enabling output of said requested channel; and wherein said requested channel is output more rapidly if said requested channel is pre-tuned than if said requested channel is not pre-tuned.
14. The apparatus (100) of claim 13, wherein: said first means (60) enables a second user to select a second algorithm from said plurality of algorithms; and said second means (10) pre-tunes at least one channel based on said selection by said second user.
15. The apparatus (100) of claim 13, wherein according to at least one of said algorithms, said second means (10) pre-tunes said at least one channel based on past channel selection by said user.
16. The apparatus (100) of claim 15, wherein said past channel selection includes: selection of a first channel; selection of a second channel after said selection of said first channel; selection of a third channel after said selection of said second channel; and said second means (10) pre-tunes said second and third channels responsive to said user selecting said first channel.
17. The apparatus (100) of claim 15, wherein said past channel selection includes selection of a first channel at approximately a first time of day, and said second means (10) pre-tunes said first channel at said first time of day.
18. The apparatus (100) of claim 15, wherein said past channel selection includes selection of a plurality of channels, and said second means (10) pre-tunes said plurality of channels on a first-in, first-out basis.
19. The apparatus (100) of claim 15, wherein said past channel selection includes using a channel up key, and said second means (10) pre-tunes at least one channel above a currently selected channel.
20. The apparatus (100) of claim 15, wherein said past channel selection includes using a channel down key, and said second means (10) pre-tunes at least one channel below a currently selected channel.
21. The apparatus (100) of claim 15, wherein said past channel selection includes selection of a plurality of channels, and said second means (10) pre-tunes said plurality of channels based on frequency of selection.
22. The apparatus (100) of claim 13, wherein according to at least one of said algorithms, said second means (10) pre-tunes said at least one channel based on a specific channel selection by said user.
23. The apparatus (100) of claim 13, wherein according to at least one of said algorithms, said second means (10) pre-tunes said at least one channel based on a specific information selection by said user.
24. The apparatus (100) of claim 23, wherein said specific information includes at least one of a program title, a genre and an actor.
25. An apparatus (100), comprising: a processor (60) operative to enable a user to select an algorithm from a plurality of algorithms; at least one tuner (10) operative to pre-tune at least one channel based on said selection; said processor (60) determining whether a requested channel is pre- tuned by said at least one tuner (10) responsive to an input, and enabling output of said requested channel; and wherein said requested channel is output more rapidly if said requested channel is pre-tuned than if said requested channel is not pre-tuned.
26. The apparatus (100) of claim 25, wherein: said processor (60) enables a second user to select a second algorithm from said plurality of algorithms; and said at least one tuner (10) pre-tunes at least one channel based on said selection by said second user.
27. The apparatus (100) of claim 25, wherein according to at least one of said algorithms, said at least one tuner (10) pre-tunes said at least one channel based on past channel selection by said user.
28. The apparatus (100) of claim 27, wherein said past channel selection includes: selection of a first channel; selection of a second channel after said selection of said first channel; selection of a third channel after said selection of said second channel; and said at least one tuner (10) pre-tunes said second and third channels responsive to said user selecting said first channel.
29. The apparatus (100) of claim 27, wherein said past channel selection includes selection of a first channel at approximately a first time of day, and said at least one tuner (10) pre-tunes said first channel at said first time of day.
30. The apparatus (100) of claim 27, wherein said past channel selection includes selection of a plurality of channels, and said at least one tuner (10) pre-tunes said plurality of channels on a first-in, first-out basis.
31. The apparatus (100) of claim 27, wherein said past channel selection includes using a channel up key, and said at least one tuner (10) pre-tunes at least one channel above a currently selected channel.
32. The apparatus (100) of claim 27, wherein said past channel selection includes using a channel down key, and said at least one tuner (10) pre-tunes at least one channel below a currently selected channel.
33. The apparatus (100) of claim 27, wherein said past channel selection includes selection of a plurality of channels, and said at least one tuner (10) pre-tunes said plurality of channels based on frequency of selection.
34. The apparatus (100) of claim 25, wherein according to at least one of said algorithms, said at least one tuner (10) pre-tunes said at least one channel based on a specific channel selection by said user.
35. The apparatus (100) of claim 25, wherein according to at least one of said algorithms, said at least one tuner (10) pre-tunes said at least one channel based on a specific information selection by said user.
36. The apparatus (100) of claim 35, wherein said specific information includes at least one of a program title, a genre and an actor.
PCT/US2006/025222 2006-06-28 2006-06-28 Method and apparatus for reducing channel change times WO2008002312A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/US2006/025222 WO2008002312A1 (en) 2006-06-28 2006-06-28 Method and apparatus for reducing channel change times

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2006/025222 WO2008002312A1 (en) 2006-06-28 2006-06-28 Method and apparatus for reducing channel change times

Publications (1)

Publication Number Publication Date
WO2008002312A1 true WO2008002312A1 (en) 2008-01-03

Family

ID=37890439

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2006/025222 WO2008002312A1 (en) 2006-06-28 2006-06-28 Method and apparatus for reducing channel change times

Country Status (1)

Country Link
WO (1) WO2008002312A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8615650B2 (en) 2009-12-28 2013-12-24 Viaccess Control-word deciphering, transmission and reception methods, recording medium and server for these methods
US9069585B2 (en) 2009-03-02 2015-06-30 Microsoft Corporation Application tune manifests and tune state recovery
WO2018100264A1 (en) * 2016-12-01 2018-06-07 Orange Method for managing the reception of digital contents by a management device

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5933192A (en) * 1997-06-18 1999-08-03 Hughes Electronics Corporation Multi-channel digital video transmission receiver with improved channel-changing response
US20030159157A1 (en) * 2002-02-21 2003-08-21 Peter Chan Systems, methods and apparatuses for minimizing subscriber-perceived digital video channel tuning delay
US20050078757A1 (en) * 2003-10-08 2005-04-14 Nohrden James M. Transport stream and channel selection system for digital video receiver systems and associated method
US20050216951A1 (en) * 2004-03-26 2005-09-29 Macinnis Alexander G Anticipatory video signal reception and processing

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5933192A (en) * 1997-06-18 1999-08-03 Hughes Electronics Corporation Multi-channel digital video transmission receiver with improved channel-changing response
US20030159157A1 (en) * 2002-02-21 2003-08-21 Peter Chan Systems, methods and apparatuses for minimizing subscriber-perceived digital video channel tuning delay
US20050078757A1 (en) * 2003-10-08 2005-04-14 Nohrden James M. Transport stream and channel selection system for digital video receiver systems and associated method
US20050216951A1 (en) * 2004-03-26 2005-09-29 Macinnis Alexander G Anticipatory video signal reception and processing

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9069585B2 (en) 2009-03-02 2015-06-30 Microsoft Corporation Application tune manifests and tune state recovery
US8615650B2 (en) 2009-12-28 2013-12-24 Viaccess Control-word deciphering, transmission and reception methods, recording medium and server for these methods
WO2018100264A1 (en) * 2016-12-01 2018-06-07 Orange Method for managing the reception of digital contents by a management device
FR3059794A1 (en) * 2016-12-01 2018-06-08 Orange METHOD FOR MANAGING THE RECEPTION OF DIGITAL CONTENTS BY A MANAGEMENT DEVICE
US11606618B2 (en) 2016-12-01 2023-03-14 Orange Method for managing the reception of digital contents by a management device
EP3548997B1 (en) * 2016-12-01 2023-04-19 Orange Method for managing the reception of digital contents by a management device

Similar Documents

Publication Publication Date Title
US7142255B2 (en) Transport stream and channel selection system for digital video receiver systems and associated method
US6927806B2 (en) Systems, methods and apparatuses for minimizing subscriber-perceived digital video channel tuning delay
US8769568B2 (en) Method and apparatus for predictive tuning in digital content receivers
US7814512B2 (en) Dynamic adjustment of EPG level of detail based on user behavior
US20020067438A1 (en) Predictive tuning on multi-tuner broadcast data
US20070038951A1 (en) Intelligent Default Selection In An OnScreen Keyboard
JP2009017237A (en) Decoder and decoding method
US20020057380A1 (en) Broadcast data receiver with dual tuning capability
US20070146551A1 (en) Multimedia receiver having fast predictive channel tuning and method
EP1884116A1 (en) Method for providing an electronic program guide based on user preference data
JP2002232795A (en) Channel tuning apparatus of digital/analog broadcasting receiver and the receiver with the apparatus
KR101061114B1 (en) How to retrieve video information of digital broadcasting receiver and other channels
US20090282439A1 (en) Digital tv scanning optimization
US8646003B2 (en) Method and device for displaying electronic program guide
WO2008002312A1 (en) Method and apparatus for reducing channel change times
US8490130B2 (en) Television channel list system and method
KR20080112732A (en) Broadcasting receiver and offer method for broadcasting program
JP4604017B2 (en) Broadcast receiving apparatus and control method thereof
JP2004135166A (en) Digital broadcast receiver
JP3568196B2 (en) Digital broadcast receiving apparatus and program extracting method in digital broadcast
JP2007520933A (en) Method and system for changing channels in a system operating in recording mode
JP2008294860A (en) Digital broadcast receiver, and digital broadcast receiving method
JP2004194031A (en) Program selecting system
JP5218981B2 (en) Receiving device and program
JP2004048312A (en) Digital broadcast receiver

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 06785763

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

NENP Non-entry into the national phase

Ref country code: RU

122 Ep: pct application non-entry in european phase

Ref document number: 06785763

Country of ref document: EP

Kind code of ref document: A1