WO2002005560A2 - Method and apparatus for downloading objects via an inband channel with minimal subscriber impact - Google Patents

Method and apparatus for downloading objects via an inband channel with minimal subscriber impact Download PDF

Info

Publication number
WO2002005560A2
WO2002005560A2 PCT/US2001/021866 US0121866W WO0205560A2 WO 2002005560 A2 WO2002005560 A2 WO 2002005560A2 US 0121866 W US0121866 W US 0121866W WO 0205560 A2 WO0205560 A2 WO 0205560A2
Authority
WO
WIPO (PCT)
Prior art keywords
download
mode
subscriber
top terminal
channel
Prior art date
Application number
PCT/US2001/021866
Other languages
French (fr)
Other versions
WO2002005560A3 (en
Inventor
Douglas Makofka
Dongsheng Wu
Original Assignee
General Instrument Corporation
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 General Instrument Corporation filed Critical General Instrument Corporation
Priority to AU2001273363A priority Critical patent/AU2001273363A1/en
Publication of WO2002005560A2 publication Critical patent/WO2002005560A2/en
Publication of WO2002005560A3 publication Critical patent/WO2002005560A3/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26208Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints
    • H04N21/26241Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints involving the time of distribution, e.g. the best time of the day for inserting an advertisement or airing a children program
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • 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/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4348Demultiplexing of additional data and video streams
    • 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/435Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/654Transmission by server directed to the client
    • H04N21/6543Transmission by server directed to the client for forcing some client operations, e.g. recording
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/8166Monomedia components thereof involving executable data, e.g. software

Definitions

  • the present invention relates generally to the field of cable television, and more particularly to a method and apparatus for downloading objects via an inband channel with minimal subscriber impact.
  • Cable television systems are extremely popular in modern society. By subscribing to a cable television network, a subscriber can have access in his or her home to dozens of channels of television programming that are not otherwise available. As cable networks develop and become more sophisticated more and more features are available to subscribers. For example, some cable systems now offer high-fidelity stereo quality sound, parental control of which channels are received, and a program listing of the subscriber's favorite channels for more ready access to those channels. The feature list is ever expanding. These advanced features of a cable system are typically implemented in a set- top terminal. A set-top terminal is a box of electronic circuitry which is connected between the subscriber's television set and the cable network.
  • the set-top terminal usually includes a computer processor and is programmed to provide those advanced features which are offered by the cable network. Periodically, as the cable system evolves, new features may become available or signal distribution may be refined in such a manner that the programming in the set-top terminal needs to be updated in order to allow the set-top terminal to continue to provide the services of the cable system to subscribers with peak efficiency. If a technician must visit the home of each subscriber to upgrade the programming in the set-top terminals, the implementation of the upgrade becomes time-consuming and expensive.
  • Metz et al. disclose a digital set-top terminal that periodically captures and stores an operating system broadcast on a fixed channel of a broadband broadcast network. Metz et al. further disclose that the operating system upgrade can be initiated either automatically or manually. The set-top terminal may automatically check the time or number of power-off cycles since the last upgrade to trigger an operating system upgrade routine. Alternatively, Metz et al. disclose that the user may execute a specific sequence of keystrokes on the remote control to call up a menu, one option of which is an operating system upgrade. The system of Metz et al., however, has shortcomings.
  • One shortcoming of the set-top terminal of Metz et al. is that it does not address the problem of subscriber impact that could arise as a result of a download of ' new software or data to the set-top terminal, as offered or commanded by the headend.
  • the set-top tuner includes only one video tuner, and the proposed download is to be delivered to the set-top terminal via an inband channel, a potential conflict over the use of the video tuner arises. If the physical channel (e.g., the RF channel) on which the download resides is different from the physical channel being tuned in order to receive the programming selected by the subscriber, then the set-top terminal would have to cause the tuner to tune to the download channel, thereby interrupting continued receipt of the program selected by the subscriber.
  • the physical channel e.g., the RF channel
  • a set-top terminal configured to minimize or eliminate unnecessary and undue interruptions of service when accepting a download of new programming or data over a cable network.
  • a set-top terminal includes a tuner, and a processing system.
  • the tuner is configured to tune one of a plurality of channels of an input signal which carries video/audio information corresponding to a primary service selected by a subscriber.
  • the processing system is coupled to the tuner and is configured to generate an output signal comprising the primary service, which may then optionally be connected to a television monitor, or the like.
  • the processing system is configured for operation in one of a first mode and a second mode selected in accordance with a command received over the cable network from a download server.
  • the command instructs the set-top terminal to accept a download of software or data.
  • the processing system as operating in the first mode will accept the download when the subscriber's primary service is unaffected by accepting the download. For example, this can occur when the download can be found in the same physical channel as the primary service (e.g., an MPEG-2 transport stream containing multiple services).
  • the system as operating in the second mode will accept the download irrespective of any effect on the subscriber's primary service.
  • the download server specifies the mode with the command.
  • the download server can specify the second mode of operation, which can be used to force the set-top terminal to tune to the download channel immediately regardless of the set-top terminal's current status (e.g., standby, off, in-use, etc.).
  • a third mode of operation is further defined, which is a combination of the first and second modes with an added element of timing.
  • the download server specifies a time frame with the command. If the current date and time (as determined by the set-top terminal) is before the specified time frame, the processing system treats the command as a first mode command (i.e., accept the download so long as the download can be made without impact on the subscriber's primary service). If, however, the current date and time is currently, or progresses to be within the specified time frame, then the processing system treats the command as a second mode command (i.e., forces the set-top to immediately accept the download, which may require tuning to the download channel, perhaps interrupting the subscriber's primary service).
  • a first mode command i.e., accept the download so long as the download can be made without impact on the subscriber's primary service.
  • the processing system treats the command as a second mode command (i.e., forces the set-top to immediately accept the download, which may require tuning to the download
  • preselected channels of the input signal that are provided to the set-top terminal contain an MPEG-2 transport stream having multiple services or programs, one of which may be the subscriber's primary service, and another of which may be the download service (i.e., the software or data for download).
  • the processing system in the first mode is configured to receive the subscriber service, while accepting the download of software or data in the background.
  • the tuner is directed to tune to the download channel and accept the software or data in the foreground.
  • the present invention also encompasses a method for operating a set-top terminal that minimizes or eliminates interruptions to the subscriber's primary service.
  • Figure 1 is a block diagram of a cable television system, including a headend facility, a cable network and a set- top terminal in accordance with the present invention
  • Figure 2 is a block diagram showing, in greater detail, the set-top terminal of
  • Figure 1 Figure 3 is a simplified block diagram view of various portions of a download command issued by a download server shown in Figure 1 to the set-top terminal; and Figure 4 is a flowchart of a method of controlling the download of software or data to a set -top terminal over a cable network on an inband channel with minimal subscriber impact.
  • the present invention involves configuring a set-top terminal to accept a download of software or data offered by a headend over a cable network in accordance with a multi-mode arrangement.
  • the multi-mode arrangement minimizes or eliminates undesirable interruptions of the subscriber's primary service.
  • Figure 1 illustrates a cable television system 10 which includes a signal headend 12, a cable or broadband network 14, and a plurality of set-top terminals 16 (only one shown for clarity).
  • the signal headend 12 is a facility maintained by a cable television company from which a cable television signal, designated 18 in Figure 1, is broadcast to subscribers over network 14.
  • Signal 18 is received as an input signal at set-top terminal 16.
  • Each subscriber (not shown) to the cable service is typically provided with at least one set- top terminal 16.
  • the set-top terminal is a box of electronic equipment that interfaces the subscriber's television, and possibly other electronic equipment, with network 14.
  • Set-top terminal 16 is configured to generate an output signal 20, destined for a display device, such as a television that contains a primary service selected by the subscriber.
  • Signal headend 12 includes a download server 22, an inband device 24, and inband modulator 26, an out-of-band modulator 28 and an RF (radio frequency) combiner/splitter 30.
  • headend 12 provides signal 18 having one or more physical channels that contain digital information that can be recovered by digital set- top terminal 16.
  • program material destined for transmission through network 14, such as video, audio or the like is available at signal headend 12 as digital data.
  • the digital data is encoded and packetized in compliance with a specified protocol or standard, for example, a Moving Pictures Expert Group (e.g., MPEG-2) encoding standard.
  • MPEG-2 Moving Pictures Expert Group
  • a single MPEG-2 transport stream may carry multiple programs or services, as understood in the art. Each service may itself include a collection of elementary streams (e.g., video, audio, etc.) that define the service.
  • the MPEG-2 standard also allows for the transport of data as payload information.
  • Download server 22 is configured to provide commands, via network 14, to set-top terminals 16, instructing an addressed one or more terminals to accept a download of software or data (hereinafter "objects").
  • the objects to be downloaded are carouseled in one or more inband channels.
  • the command according to the invention, also specifies a mode of operation that is followed by the set-top terminal in carrying out (or attempting to carry out) the download command.
  • Download server 22 is also configured as the source of the objects themselves.
  • the command from server 22 to the set-top terminal 16 is transmitted on an out-of-band (OOB) channel, traversing modulator 28, RF combiner/splitter 30 and network 14.
  • OOB out-of-band
  • the downloaded objects are transmitted on an inband channel via inband device 24, modulator 26, combiner/splitter 30 and network 14.
  • Inband device 24 is provided to multiplex various sources of digital data into a plurality of digital transport streams (e.g., MPEG-2 transport streams).
  • download server 22 provides first digital data to inband device 24.
  • Other sources of digital data such as audiovisual programs and the like (e.g., HBO) are also provided to inband device 24.
  • Device 24 multiplexes the various sources into multiple MPEG-2 transport streams.
  • Device 24 may comprise conventional components known in the art.
  • the MPEG-2 digital transport stream is thereafter provided to inband modulator 26.
  • Inband modulator 26 is configured to receive the plurality of MPEG-2 transport streams from device 24, and modulate each on a specified RF carrier signal having a predetermined frequency.
  • system 10 may operate in accordance with a predetermined frequency plan which specifies carrier frequencies for each physical, RF channel. The digital data must be converted to analog form for transmission on the main carrier frequency. Therefore, inband modulator 26 may .also employ conventional and known modulation schemes, such as 64 Quadrature Amplitude Modulation (64-QAM) or 256 QAM modulation for the MPEG-2 transport
  • 64-QAM 64 Quadrature Amplitude Modulation
  • 256 QAM modulation for the MPEG-2 transport
  • the broadband signal 18 is transmitted over the cable plant (i.e., broadband network 14) to various subscribers.
  • signal headend 12 is capable of transmitting approximately 27 Mbps of digital data to digital set-top terminal 16, this throughput increases to approximately 38 Mbps when a 256-QAM approach is employed.
  • RF block 30 may also transmit analog program material in a channel of signal 18.
  • Out-of-band (OOB) modulator 28 modulates digital data using conventional, known modulation techniques, such as Quadrature Phase Shift Keying (QPSK) on a fixed frequency carrier.
  • QPSK Quadrature Phase Shift Keying
  • the bandwidth transmitted on the out-of- band channel is 2.048 Mbps. It bears emphasizing that providing a download of objects by way of the out-of-band (OOB) channel is bandwidth-limited inasmuch as current technology limits data transfer rates to approximately 2 Mbps. Due to the limited bandwidth provided by the OOB channel, object downloading via inband channels is therefore desirable. The larger bandwidth available on the inband channels can be used to reduce the downloading time. However, use of an inband channel presents certain challenges.
  • Cost considerations for set-top terminal 16 generally require that only one inband video tuner be provided (although other tuners, such as an OOB tuner, cable modem tuner, etc. may be present). Accordingly, a potiential conflict arises from the use of the lone-inband tuner for tuning to a download channel to accept the download. Tuning to the download channel may ⁇ require tuning away from the channel carrying the subscriber's primary service, thereby interrupting the primary service selected by the subscriber.
  • the system according to the invention reduces or eliminates undesirable impact on the subscriber.
  • the invention realizes an opportunity to minimize subscriber impact previously unavailable with analog set-top terminals. Specifically, inasmuch as multiple programs or services may be contained in a single channel, there is an opportunity to coordinate to minimize subscriber impact when the download is contained in the same channel as the primary service selected by the subscriber.
  • FIG. 2 is a block diagram showing set-top terminal 16 in greater detail.
  • Terminal 16 includes an inband tuner 32, an out-of-band (OOB) tuner 34, a processing system 36, a non- volatile memory 38 such as a FLASH memory, RAM 40, and an input device 42.
  • OOB out-of-band
  • Inband tuner 32 is an RF tuner configured to tune and receive an inband channel, i.e., one of a plurality of channels of cable television input signal 18. This tuning action recovers a signal, which may thereafter be demodulated by, for example, a corresponding QAM demodulator (not shown) to recover digital information, such as MPEG-2 transport streams.
  • the particular channel of input signal 18 to which inband tuner 32 is tuned may carry video/audio information corresponding to a primary service selected by the subscriber. Accordingly, the output signal 20 of set-top terminal 16 would contain the primary service.
  • RF tuner 32 may comprise conventional components and have a nominal tuning range between 54-860 MHz, in order to tune and recover the present range of conventionally spaced RF cable channels.
  • Out-of-band (OOB) tuner 34 is configured to tune and receive the out-of-band channel transmitted by signal headend 12, and to recover the digital data transmitted therewith.
  • OOB tuner 34 operates at a fixed frequency, generally, in contrast to tuner 32, which is frequency agile.
  • Tuner 34 may comprise conventional components known to those of ordinary skill in the art, and have a nominal tuning range of between about 70-130 MHz to tune and recover the present range of conventional OOB channels.
  • Processing system 36 is configured for multimode operation. Processing system 36 controls tuners 32 and 34 in a manner known generally in the art. Particularly, system 36 controls tuner 32 in such a way as to cause it to tune to the,, particular channel of input signal 18 that is desired. Processing system 36 may also include a specialized (e.g., an MPEG-2 main level) video processor, an audio processor (e.g., ATSE Standard Dolby AC-3), a general purpose processor, as well as graphics/video processor. There are a variety of conventional and known hardware configurations suitable for use in implementing processing system 36. Processing system 36 operates generally in accordance with software and data stored in memory, such as non-volatile memory 38.
  • memory such as non-volatile memory 38.
  • Set-top terminal 16 may further include an input device 42 to operate or invoke various features. For example, using either a handheld remote control or front panel through user input device 42, a subscriber may set up parental control of channels received i.e., lock-out channels considered inappropriate for children; set or change passwords on control channels; set user preferences in an on-screen display, setup a listing of favorite channels for viewing, etc.
  • an input device 42 to operate or invoke various features. For example, using either a handheld remote control or front panel through user input device 42, a subscriber may set up parental control of channels received i.e., lock-out channels considered inappropriate for children; set or change passwords on control channels; set user preferences in an on-screen display, setup a listing of favorite channels for viewing, etc.
  • the downloading functionality according to the invention allows the Multi- System Operator (MSO) to deliver, update, and upgrade various objects (i.e., software and data) to set-top terminal 16.
  • MSO Multi- System Operator
  • Signal headend 12 initiates the downloading functionality by generating and transmitting a message via download server 22.
  • the command is delivered to set-top terminal 16 by way of the OOB channel.
  • the message contains a tune command 44 to instruct set-top terminal 16 to accept the download of various objects.
  • the objects may comprise operating system software, application software, data, etc.
  • Figure 3 shows details concerning the composition of tune command 44.
  • the tune command 44 includes a download location, and a tune_ channel_control field 48.
  • the download location 46 provides information to set-top terminal 16 as to what inband channel to tune to in order to acquire the needed software or data, including an identification of the program or service within the transport stream where the download may be found.
  • Control field 48 is used to define, in the illustrated embodiment, three different tuning modes of operation for set-top terminal 16.
  • Control field 48 contains a mode selection parameter 50, and a plurality of control parameters 52.
  • the mode selection 50 may be any one of a first mode, namely a background_tune mode 54, a second mode, namely a foreground_tune mode 56, and a third mode, namely a featured_tune mode 58. These modes will be described in-turn.
  • the objects proposed for download may be multiplexed with program materials selected by the subscriber (i.e., the particular program selected by the subscriber hereinafter designated as the "primary service").
  • tuner 32 may be tuned to that channel, and both the primary service and the download service may be extracted.
  • a conflict of using inband tuner 32 results.
  • Forcing inband tuner 32 to tune to the download channel when it is different than the channel carrying the primary service may cause an interruption to the primary service. This may generate an unexpected impact on the subscriber, which is undesireable.
  • the background_tune mode 54 is used to instruct setrtop terminal 16 to accept the download in the background only when the subscriber's primary service will not be interrupted or otherwise affected. This typically means that the tuning to the download channel could occur while set-top terminal 16 is in a standby state or, alternatively, when the primary service selected by the subscriber happens to be on the same physical channel of input signal 18 that carries the software or data proposed for download.
  • the foreground_tune mode 56 is used to force set-top terminal 16 to tune to the download channel immediately regardless of the set-top's current running status and thus irrespective of any effect such an action may have on the subscriber's primary service. This may interrupt the subscriber's primary service and affect the subscriber's viewing practice for a predetermined time.
  • the featured_tune mode 58 is a combination of the background_tune mode 54 and the foreground_tune mode 56.
  • Mode 58 provides a mechanism to escalate the priority of the download if the download has not occurred by a certain time.
  • a time frame in absolute terms, is associated with the featured_tune mode 58. If the current date/time is not within the specified time frame (i.e., the current date/time is before the specified time frame), then the featured_tune mode 58 will operate like a background_tune mode 54. Thus, prior to the time frame, if the set-top terminal 16 can obtain the download without affecting the subscriber's primary service, then it will do so. Otherwise, acceptance of the download will be deferred.
  • the featured_tune mode 58 will operate like a foreground_tune mode 56. If the downloading cannot be commenced (or completed) before the beginning of the specified time frame as a background download, then the set-top terminal 16 will forced to tune to the specified channel in order to complete the downloading. This forced tuning is done irrespective of the effect on the subscriber. Through the foregoing, the priority of the download (vis-avis the primary service) has been escalated.
  • command 44 also includes various control parameters 52, which further define the set-top terminal 16 behavior when the command 44 is received.
  • Control parameters 52 include a background_connect_allowed parameter 60, a subscriber_ACK_required parameter 62, an ACK ime outparameter, an intersession_timer parameter 66 and a start time 68/stop time 70 parameter pair. Each control parameter will be described in-rum.
  • the background_connect_allowed parameter 60 is a flag used to indicate whether a connection to the specified stream of a channel is allowed when the inband tuner 32 is already tuned to the same physical channel that carries the download objects.
  • Parameter 60 is used for the background_tune mode 54 and the featured_tune mode 58 where a connection is to be established in the background. If the parameter is set to "YES", then the set-top terminal 16 requests the connection to the download stream or streams (i.e., when the tuner 32 already is tuned to the physical channel that carries the download). If the parameter 60 is set to "NO", the set-top terminal 16 does not make the connection. Note that in the backgroundjmne mode 54, the primary service selected by the subscriber.always has priority in controlling inband tuner 32.
  • the subscriber_ acknowledge_ required parameter 62 is also a flag used to indicate whether subscriber intervention is required. Parameter 62 is used for the foreground__tune mode 56. If the parameter is set to "YES”, the subscriber's acknowledgement is required before the set-top terminal 16 will accept the download. If the parameter is set to "NO”, then downloading should proceed without the subscriber's acknowledgement. Acknowledgement may be made through, for example, input device 42 (best shown in Figure 2). Acknowledgement timeout parameter 64 is preferably used for the case when the subscriber_ acknowledge parameter 62 is set to "YES".
  • the parameter 64 specifies a period of time (e.g., in seconds) that a downloader portion (not shown) of processing system 36 waits for receipt of an acknowledgement from the subscriber. If the downloader does not receive the acknowledgement before expiration of the specified time period, it is configured to abort (or cause to abort) the download process.
  • Intersession timer parameter 62 is preferably used for the case when the subscriber_acknowledge_required parameter 62 is set to "YES".
  • the intersession timer parameter 66 specifies the period of time that the above-described downloader will ignore the same command 44 after either (i) no acknowledgement from the subscriber is received, or (ii) the subscriber affirmatively rejects the download. That is, the set-top terminal 16, through the foregoing parameter, is configured to ignore the same command 44 for a period of time specified by the intersession timer parameter 66. This parameter is employed so that a subscriber who has just rejected a download is not immediately solicited (and resolicited) to accept the very download just rejected.
  • the start time parameter 68 and stop time parameter 70 respectively define the beginning and the end of the time frame referred to above in connection with the featured_tune mode 58.
  • Parameters 68 and 70 specify the range of time, in-effect, during which tuning to the download channel should be enforced (i.e., to trigger the switch from the background_tune mode to the foreground_tune mode 56).
  • the start time parameter 68 and stop time parameter 70 are defined in GPS seconds.
  • the start time parameter 68 must be less than or equal to the stop time parameter 70.
  • a value of 0x00000000 (hex) indicates the infinite past, while a value of OxFFFFFFFF (hex) indicates the infinite future.
  • the start stop time parameters 68, 70 are used preferably in connection with the featured_tune mode 58.
  • step 72 the set-top terminal receives the tune command 44 from download server 22, preferably over an OOB channel, to accept a download of objects.
  • the method proceeds to step 74.
  • step 74 the set-top terminal 16 extracts the download location information from command 44, which includes the physical, inband channel identification, and the identification of the stream or streams (e.g., program ID) containing the download objects.
  • the method proceeds to step 76.
  • processing system 36 In the background_tune mode, processing system 36 is configured to accept the download only when the subscriber's primary service would be unaffected by accepting the download. Accordingly, in step 78, processing system 36 determines whether the offered download is on the same physical inband channel as the subscriber's primary service, or alternatively, whether the set-top terminal 16 is in a standby mode. In either of these situations, the subscriber's primary service will remain unaffected if the download is accepted.
  • step 80 processing system 36 accepts the download in the background, which is being provided on the same physical inband channel that inband tuner 32 is already tuned to (in the case where the set-top terminal 16 is on). If terminal 16 is in standby (i.e., no primary service selected), performance of step 80 may require that processing system 36 command inband tuner 32 to tune to the specified channel carrying the download service to recover the data stream(s) defining the offered download. The method then proceeds to step 82.
  • processing system 36 implements the captured download according to predetermined procedures.
  • the download may comprise new functionality, or may be an upgrade to existing functionality.
  • the process of replacing an existing, executing program with a newly downloaded version may itself involve a reboot, and thus an interruption of the subscriber's primary service. This may be taken into consideration by the background_rune mode to defer reboot.
  • error detection and version control may be considered as part of the predetermined procedures for implementing the download in set-top terminal 16, once obtained from download server 22.
  • step 78 if the answer to decision step 78 is "NO" (i.e., accepting the ⁇ download would affect the subscriber's primary service, perhaps interrupting it), then the method branches to step 84, wherein acceptance of the download offered by download server 22 is deferred.
  • step 76 If the answer to decision step 76 (background_tune?) is "NO”, then the method branches to step 86.
  • step 86 processing system 36 determines whether the commanded mode is the foreground_tune mode 56. If the answer is "YES”, then the method branches to step 88.
  • Processing system 36 is configured, in the foreground_tune mode 56, to force acceptance of a download wherein the set-top terminal tunes to the download channel irrespective of an effect on the subscriber's primary service.
  • the set-top terminal accepts the offered download, wherein processing system 36, if needed, immediately tunes inband tuner 32 to the specified download channel. Acceptance of the download assumes that either the subscriber acknowledge required parameter 62 had been set to "NO", or, if it had been set to "YES", that the subscriber affirmatively acknowledged and accepted the download before the acknowledgement timeout interval has elapsed.
  • the method then branches to step 82 wherein the download is implemented in the set-top terminal 16, as described above.
  • step 86 foreground_tune
  • the specified mode is the featured_tune mode 58, and the method branches to step 90.
  • processing system 36 initializes the featured_tune mode 58. The method proceeds to step 92.
  • step 92 processing system 36 performs a test. Processing system 36 determines whatever the current time is before the featured_tune time frame (i.e., defined by start parameter 68 and stop parameter 70). Therefore, if the answer to decision step 92 is "YES", then the method branches to step 94.
  • step 94 processing system 36 implements the above-described background_tune mode 54.
  • the subscriber's primary service would be unaffected by acceptance of the download, this is, in-effect, equivalent to the background_tune mode 54.
  • the method proceeds to step 96.
  • step 96 processing system 36 performs a test to determine whether the download can be accepted. If the download can be accepted without affecting the subscriber's primary service, then the download is accepted and the method branches to step 82 (i.e., implementation). Otherwise, if the download cannot presently be * _ accepted, the answer to decision step 96 is "NO", and the method branches back to step 92 (current_time less than start_time?). Processing system 36 continues to attempt to commence and complete the download commanded by download server 22 in the background until the beginning of the featured_tune time frame is reached. Once that time is reached, the method proceeds from step 92 to step 98.
  • processing system 36 enforces acceptance of the commanded download.
  • Processing system 36 is thus configured to accept the download commanded by download server 22 during the time frame specified in the command, irrespective of the effect such action may have on the subscriber's primary service. This assumes that the download was not already accepted before the beginning of the time frame. This step may involve the processing system 36 controlling tuner 32 to tune to the inband download channel. Once the download has been forced, the method proceeds to step 82 (implementation). The method ends in step 100.
  • the invention may be applied to a download on an out-of-band (OOB) channel.
  • OOB out-of-band
  • An OOB channel uses a fixed frequency, and has its own OOB tuner 34; accordingly, there is not a tuner conflict problem for tuning to the download channel when the download channel is an OOB channel.
  • the digital set-top terminal 16 needs to be reset in order to complete the downloading process, the subscriber's primary service and viewing practice could be interrupted unexpectedly.
  • the downloading may be controlled based on the current set-top terminal state. The foregoing modes may be applied to this scenario.
  • background_tune mode 54 the actual download of the software or data may be allowed to occur, but the required reset will be deferred until there is no conflict or interruption of the subscriber's primary service (e.g., when the set-top terminal is off, or in standby mode).
  • processing system 36 may be configured in the foreground_tune mode 56 to allow both the download, and the required reset irrespective of an effect on the subscriber's primary service.

Abstract

A download server at a headend of a cable system transmits a command to a digital set-top terminal causing it to operate in one of a background tune mode, a foreground tune mode, and a featured tune mode of operation. The background tune mode of operation configures the set-top terminal to accept the offered download of software or data objects to the set-top terminal when acceptance of the download would not affect a subscriber's primary service to thereby allow uninterrupted viewing of a subscriber selected program. The foreground tune mode of operation configures the set-top terminal to immediately accept a download from the download server by tuning to the download channel irrespective of any effect on the subscriber's primary service. In the featured tune mode of operation the set-top terminal is configured to attempt to download the objects in the background, without affecting the primary service, before a sepcified start time. Thereafter, the set-top terminal is reconfigured to immediately accept the download of the objects, wherein, through the foregoing, downloading via an inband channel may be made with minimal subscriber impact.

Description

TITLE OF THE INVENTION
METHOD AND APPARATUS FOR DOWNLOADING OBJECTS VIA AN
INBAND CHANNEL WITH MINIMAL SUBSCRIBER IMPACT
FIELD OF THE INVENTION
The present invention relates generally to the field of cable television, and more particularly to a method and apparatus for downloading objects via an inband channel with minimal subscriber impact.
BACKGROUND OF THE INVENTION
Cable television systems are extremely popular in modern society. By subscribing to a cable television network, a subscriber can have access in his or her home to dozens of channels of television programming that are not otherwise available. As cable networks develop and become more sophisticated more and more features are available to subscribers. For example, some cable systems now offer high-fidelity stereo quality sound, parental control of which channels are received, and a program listing of the subscriber's favorite channels for more ready access to those channels. The feature list is ever expanding. These advanced features of a cable system are typically implemented in a set- top terminal. A set-top terminal is a box of electronic circuitry which is connected between the subscriber's television set and the cable network. The set-top terminal usually includes a computer processor and is programmed to provide those advanced features which are offered by the cable network. Periodically, as the cable system evolves, new features may become available or signal distribution may be refined in such a manner that the programming in the set-top terminal needs to be updated in order to allow the set-top terminal to continue to provide the services of the cable system to subscribers with peak efficiency. If a technician must visit the home of each subscriber to upgrade the programming in the set-top terminals, the implementation of the upgrade becomes time-consuming and expensive.
To avoid these problems, new programming for the set-top terminal can be transmitted to the set-top terminal over the cable network itself, as seen by reference to U.S. Patent No. 5,666,293 entitled "DOWNLOADING OPERATING SYSTEM SOFTWARE THROUGH A BROADCAST CHANNEL" issued to Metz et al. Metz et al. disclose a digital set-top terminal that periodically captures and stores an operating system broadcast on a fixed channel of a broadband broadcast network. Metz et al. further disclose that the operating system upgrade can be initiated either automatically or manually. The set-top terminal may automatically check the time or number of power-off cycles since the last upgrade to trigger an operating system upgrade routine. Alternatively, Metz et al. disclose that the user may execute a specific sequence of keystrokes on the remote control to call up a menu, one option of which is an operating system upgrade. The system of Metz et al., however, has shortcomings.
One shortcoming of the set-top terminal of Metz et al. is that it does not address the problem of subscriber impact that could arise as a result of a download of ' new software or data to the set-top terminal, as offered or commanded by the headend. In particular, when the set-top tuner includes only one video tuner, and the proposed download is to be delivered to the set-top terminal via an inband channel, a potential conflict over the use of the video tuner arises. If the physical channel (e.g., the RF channel) on which the download resides is different from the physical channel being tuned in order to receive the programming selected by the subscriber, then the set-top terminal would have to cause the tuner to tune to the download channel, thereby interrupting continued receipt of the program selected by the subscriber.
Moreover, simply downloading during off-hours may not help. There are subscribers who use their television service during all hours, even if only to record programming which will be watched later. The interruption of set-top terminal functions for ^ purposes of accepting a download may therefore affect the subscriber's viewing practice at any time.
Accordingly, there is a need for a set-top terminal, and a method of operating the same, that minimizes or eliminates one or more of the problems as set forth above.
SUMMARY OF THE INVENTION It is an object of the present invention to provide a solution to the above- identified shortcomings in the art, and to provide the downloading of objects via an inband channel to improve downloading speed while minimizing or eliminating subscriber impact. Additional objects, advantages and novel features will be set forth in the description which follows or may be learned by those of ordinary skill in the art through reading these materials or practicing the invention. The object and advantages of the invention may be achieved through the means recited in the attached claims.
To achieve these stated and other objects, the present invention may be embodied and described as a set-top terminal configured to minimize or eliminate unnecessary and undue interruptions of service when accepting a download of new programming or data over a cable network. A set-top terminal according to the invention includes a tuner, and a processing system. The tuner is configured to tune one of a plurality of channels of an input signal which carries video/audio information corresponding to a primary service selected by a subscriber. The processing system is coupled to the tuner and is configured to generate an output signal comprising the primary service, which may then optionally be connected to a television monitor, or the like. The processing system is configured for operation in one of a first mode and a second mode selected in accordance with a command received over the cable network from a download server. The command instructs the set-top terminal to accept a download of software or data. The processing system as operating in the first mode will accept the download when the subscriber's primary service is unaffected by accepting the download. For example, this can occur when the download can be found in the same physical channel as the primary service (e.g., an MPEG-2 transport stream containing multiple services). The system as operating in the second mode will accept the download irrespective of any effect on the subscriber's primary service. The download server specifies the mode with the command. Less urgent downloads can be specified to occur in the first mode (i.e., for no subscriber interruption, which may be satisfied when the set-top terminal is in a standby state, or, the download channel is the same physical channel that carries the subscriber's primary service). For more urgent downloads, the download server can specify the second mode of operation, which can be used to force the set-top terminal to tune to the download channel immediately regardless of the set-top terminal's current status (e.g., standby, off, in-use, etc.).
In a preferred embodiment, a third mode of operation is further defined, which is a combination of the first and second modes with an added element of timing. For the third mode, the download server specifies a time frame with the command. If the current date and time (as determined by the set-top terminal) is before the specified time frame, the processing system treats the command as a first mode command (i.e., accept the download so long as the download can be made without impact on the subscriber's primary service). If, however, the current date and time is currently, or progresses to be within the specified time frame, then the processing system treats the command as a second mode command (i.e., forces the set-top to immediately accept the download, which may require tuning to the download channel, perhaps interrupting the subscriber's primary service).
In a further embodiment, preselected channels of the input signal that are provided to the set-top terminal contain an MPEG-2 transport stream having multiple services or programs, one of which may be the subscriber's primary service, and another of which may be the download service (i.e., the software or data for download). In this further embodiment, the processing system in the first mode is configured to receive the subscriber service, while accepting the download of software or data in the background. In the second mode, when the download is on a different physical channel, the tuner is directed to tune to the download channel and accept the software or data in the foreground.
The present invention also encompasses a method for operating a set-top terminal that minimizes or eliminates interruptions to the subscriber's primary service. Other objects, features, and advantages of the present invention will become apparent to one of ordinary skill in the art from the following detailed description and drawings illustrating the invention by way of example, but not by way of limitation.
BRIEF DESCRIPTION OF THE DRA INGS Figure 1 is a block diagram of a cable television system, including a headend facility, a cable network and a set- top terminal in accordance with the present invention;
Figure 2 is a block diagram showing, in greater detail, the set-top terminal of
Figure 1; Figure 3 is a simplified block diagram view of various portions of a download command issued by a download server shown in Figure 1 to the set-top terminal; and Figure 4 is a flowchart of a method of controlling the download of software or data to a set -top terminal over a cable network on an inband channel with minimal subscriber impact. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
The present invention involves configuring a set-top terminal to accept a download of software or data offered by a headend over a cable network in accordance with a multi-mode arrangement. The multi-mode arrangement minimizes or eliminates undesirable interruptions of the subscriber's primary service.
Referring now to the drawings wherein like reference numerals are used to identify identical components in the various views, Figure 1 illustrates a cable television system 10 which includes a signal headend 12, a cable or broadband network 14, and a plurality of set-top terminals 16 (only one shown for clarity). The signal headend 12 is a facility maintained by a cable television company from which a cable television signal, designated 18 in Figure 1, is broadcast to subscribers over network 14. Signal 18 is received as an input signal at set-top terminal 16. Each subscriber (not shown) to the cable service is typically provided with at least one set- top terminal 16. The set-top terminal is a box of electronic equipment that interfaces the subscriber's television, and possibly other electronic equipment, with network 14. Set-top terminal 16 is configured to generate an output signal 20, destined for a display device, such as a television that contains a primary service selected by the subscriber. Signal headend 12 includes a download server 22, an inband device 24, and inband modulator 26, an out-of-band modulator 28 and an RF (radio frequency) combiner/splitter 30.
In a preferred embodiment, headend 12 provides signal 18 having one or more physical channels that contain digital information that can be recovered by digital set- top terminal 16. In this regard, program material destined for transmission through network 14, such as video, audio or the like, is available at signal headend 12 as digital data. The digital data is encoded and packetized in compliance with a specified protocol or standard, for example, a Moving Pictures Expert Group (e.g., MPEG-2) encoding standard. A single MPEG-2 transport stream may carry multiple programs or services, as understood in the art. Each service may itself include a collection of elementary streams (e.g., video, audio, etc.) that define the service. The MPEG-2 standard also allows for the transport of data as payload information.
Download server 22 is configured to provide commands, via network 14, to set-top terminals 16, instructing an addressed one or more terminals to accept a download of software or data (hereinafter "objects"). The objects to be downloaded are carouseled in one or more inband channels. The command, according to the invention, also specifies a mode of operation that is followed by the set-top terminal in carrying out (or attempting to carry out) the download command. Download server 22 is also configured as the source of the objects themselves. In one embodiment, the command from server 22 to the set-top terminal 16 is transmitted on an out-of-band (OOB) channel, traversing modulator 28, RF combiner/splitter 30 and network 14. Also, preferably, the downloaded objects are transmitted on an inband channel via inband device 24, modulator 26, combiner/splitter 30 and network 14. Inband device 24 is provided to multiplex various sources of digital data into a plurality of digital transport streams (e.g., MPEG-2 transport streams). In the illustrated embodiment, for example, download server 22 provides first digital data to inband device 24. Other sources of digital data, such as audiovisual programs and the like (e.g., HBO) are also provided to inband device 24. Device 24 multiplexes the various sources into multiple MPEG-2 transport streams. Device 24 may comprise conventional components known in the art. The MPEG-2 digital transport stream is thereafter provided to inband modulator 26.
Inband modulator 26 is configured to receive the plurality of MPEG-2 transport streams from device 24, and modulate each on a specified RF carrier signal having a predetermined frequency. As known, system 10 may operate in accordance with a predetermined frequency plan which specifies carrier frequencies for each physical, RF channel. The digital data must be converted to analog form for transmission on the main carrier frequency. Therefore, inband modulator 26 may .also employ conventional and known modulation schemes, such as 64 Quadrature Amplitude Modulation (64-QAM) or 256 QAM modulation for the MPEG-2 transport
Figure imgf000008_0001
to set-top terminal 16, which may specify what physical channel and program contained therein, a logical or virtual channel may be found. It should be appreciated that this information is required, since multiple services or programs may be carried in one transport stream (i.e., modulated on one RF channel). The broadband signal 18 is transmitted over the cable plant (i.e., broadband network 14) to various subscribers. For a 64-QAM-modulation approach, signal headend 12 is capable of transmitting approximately 27 Mbps of digital data to digital set-top terminal 16, this throughput increases to approximately 38 Mbps when a 256-QAM approach is employed. RF block 30 may also transmit analog program material in a channel of signal 18. Out-of-band (OOB) modulator 28 modulates digital data using conventional, known modulation techniques, such as Quadrature Phase Shift Keying (QPSK) on a fixed frequency carrier. In one embodiment, the bandwidth transmitted on the out-of- band channel is 2.048 Mbps. It bears emphasizing that providing a download of objects by way of the out-of-band (OOB) channel is bandwidth-limited inasmuch as current technology limits data transfer rates to approximately 2 Mbps. Due to the limited bandwidth provided by the OOB channel, object downloading via inband channels is therefore desirable. The larger bandwidth available on the inband channels can be used to reduce the downloading time. However, use of an inband channel presents certain challenges. Cost considerations for set-top terminal 16 generally require that only one inband video tuner be provided (although other tuners, such as an OOB tuner, cable modem tuner, etc. may be present). Accordingly, a potiential conflict arises from the use of the lone-inband tuner for tuning to a download channel to accept the download. Tuning to the download channel may ^ require tuning away from the channel carrying the subscriber's primary service, thereby interrupting the primary service selected by the subscriber. The system according to the invention reduces or eliminates undesirable impact on the subscriber. For a digital capable set-top terminal 16, the invention realizes an opportunity to minimize subscriber impact previously unavailable with analog set-top terminals. Specifically, inasmuch as multiple programs or services may be contained in a single channel, there is an opportunity to coordinate to minimize subscriber impact when the download is contained in the same channel as the primary service selected by the subscriber.
Figure 2 is a block diagram showing set-top terminal 16 in greater detail. Terminal 16 includes an inband tuner 32, an out-of-band (OOB) tuner 34, a processing system 36, a non- volatile memory 38 such as a FLASH memory, RAM 40, and an input device 42.
Inband tuner 32 is an RF tuner configured to tune and receive an inband channel, i.e., one of a plurality of channels of cable television input signal 18. This tuning action recovers a signal, which may thereafter be demodulated by, for example, a corresponding QAM demodulator (not shown) to recover digital information, such as MPEG-2 transport streams. During normal operation, the particular channel of input signal 18 to which inband tuner 32 is tuned may carry video/audio information corresponding to a primary service selected by the subscriber. Accordingly, the output signal 20 of set-top terminal 16 would contain the primary service. RF tuner 32 may comprise conventional components and have a nominal tuning range between 54-860 MHz, in order to tune and recover the present range of conventionally spaced RF cable channels.
Out-of-band (OOB) tuner 34 is configured to tune and receive the out-of-band channel transmitted by signal headend 12, and to recover the digital data transmitted therewith. OOB tuner 34 operates at a fixed frequency, generally, in contrast to tuner 32, which is frequency agile. Tuner 34 may comprise conventional components known to those of ordinary skill in the art, and have a nominal tuning range of between about 70-130 MHz to tune and recover the present range of conventional OOB channels.
Processing system 36 is configured for multimode operation. Processing system 36 controls tuners 32 and 34 in a manner known generally in the art. Particularly, system 36 controls tuner 32 in such a way as to cause it to tune to the,, particular channel of input signal 18 that is desired. Processing system 36 may also include a specialized (e.g., an MPEG-2 main level) video processor, an audio processor (e.g., ATSE Standard Dolby AC-3), a general purpose processor, as well as graphics/video processor. There are a variety of conventional and known hardware configurations suitable for use in implementing processing system 36. Processing system 36 operates generally in accordance with software and data stored in memory, such as non-volatile memory 38.
Set-top terminal 16 may further include an input device 42 to operate or invoke various features. For example, using either a handheld remote control or front panel through user input device 42, a subscriber may set up parental control of channels received i.e., lock-out channels considered inappropriate for children; set or change passwords on control channels; set user preferences in an on-screen display, setup a listing of favorite channels for viewing, etc.
The downloading functionality according to the invention allows the Multi- System Operator (MSO) to deliver, update, and upgrade various objects (i.e., software and data) to set-top terminal 16.
Signal headend 12 initiates the downloading functionality by generating and transmitting a message via download server 22. Preferably, the command is delivered to set-top terminal 16 by way of the OOB channel. The message contains a tune command 44 to instruct set-top terminal 16 to accept the download of various objects. The objects may comprise operating system software, application software, data, etc. Figure 3 shows details concerning the composition of tune command 44. The tune command 44 includes a download location, and a tune_ channel_control field 48. The download location 46 provides information to set-top terminal 16 as to what inband channel to tune to in order to acquire the needed software or data, including an identification of the program or service within the transport stream where the download may be found. Control field 48 is used to define, in the illustrated embodiment, three different tuning modes of operation for set-top terminal 16. The three different tuning modes define how processing system 36 controls the tuning action of inband tuner 32 as a function of the set-top terminal's running status to accept the download. Control field 48 contains a mode selection parameter 50, and a plurality of control parameters 52. The mode selection 50 may be any one of a first mode, namely a background_tune mode 54, a second mode, namely a foreground_tune mode 56, and a third mode, namely a featured_tune mode 58. These modes will be described in-turn. The objects proposed for download may be multiplexed with program materials selected by the subscriber (i.e., the particular program selected by the subscriber hereinafter designated as the "primary service"). In such case, tuner 32 may be tuned to that channel, and both the primary service and the download service may be extracted. However, when the download is not in the same channel as the primary service, a conflict of using inband tuner 32 results. Forcing inband tuner 32 to tune to the download channel when it is different than the channel carrying the primary service may cause an interruption to the primary service. This may generate an unexpected impact on the subscriber, which is undesireable. The background_tune mode 54 is used to instruct setrtop terminal 16 to accept the download in the background only when the subscriber's primary service will not be interrupted or otherwise affected. This typically means that the tuning to the download channel could occur while set-top terminal 16 is in a standby state or, alternatively, when the primary service selected by the subscriber happens to be on the same physical channel of input signal 18 that carries the software or data proposed for download.
The foreground_tune mode 56 is used to force set-top terminal 16 to tune to the download channel immediately regardless of the set-top's current running status and thus irrespective of any effect such an action may have on the subscriber's primary service. This may interrupt the subscriber's primary service and affect the subscriber's viewing practice for a predetermined time.
The featured_tune mode 58 is a combination of the background_tune mode 54 and the foreground_tune mode 56. Mode 58 provides a mechanism to escalate the priority of the download if the download has not occurred by a certain time. A time frame, in absolute terms, is associated with the featured_tune mode 58. If the current date/time is not within the specified time frame (i.e., the current date/time is before the specified time frame), then the featured_tune mode 58 will operate like a background_tune mode 54. Thus, prior to the time frame, if the set-top terminal 16 can obtain the download without affecting the subscriber's primary service, then it will do so. Otherwise, acceptance of the download will be deferred. However, if the current date/time is within the specified time frame, the featured_tune mode 58 will operate like a foreground_tune mode 56. If the downloading cannot be commenced (or completed) before the beginning of the specified time frame as a background download, then the set-top terminal 16 will forced to tune to the specified channel in order to complete the downloading. This forced tuning is done irrespective of the effect on the subscriber. Through the foregoing, the priority of the download (vis-avis the primary service) has been escalated.
With continued reference to Figure 3, in conjunction with the various modes of operation, command 44 also includes various control parameters 52, which further define the set-top terminal 16 behavior when the command 44 is received. Control parameters 52 include a background_connect_allowed parameter 60, a subscriber_ACK_required parameter 62, an ACK ime outparameter, an intersession_timer parameter 66 and a start time 68/stop time 70 parameter pair. Each control parameter will be described in-rum.
The background_connect_allowed parameter 60 is a flag used to indicate whether a connection to the specified stream of a channel is allowed when the inband tuner 32 is already tuned to the same physical channel that carries the download objects. Parameter 60 is used for the background_tune mode 54 and the featured_tune mode 58 where a connection is to be established in the background. If the parameter is set to "YES", then the set-top terminal 16 requests the connection to the download stream or streams (i.e., when the tuner 32 already is tuned to the physical channel that carries the download). If the parameter 60 is set to "NO", the set-top terminal 16 does not make the connection. Note that in the backgroundjmne mode 54, the primary service selected by the subscriber.always has priority in controlling inband tuner 32.
The subscriber_ acknowledge_ required parameter 62 is also a flag used to indicate whether subscriber intervention is required. Parameter 62 is used for the foreground__tune mode 56. If the parameter is set to "YES", the subscriber's acknowledgement is required before the set-top terminal 16 will accept the download. If the parameter is set to "NO", then downloading should proceed without the subscriber's acknowledgement. Acknowledgement may be made through, for example, input device 42 (best shown in Figure 2). Acknowledgement timeout parameter 64 is preferably used for the case when the subscriber_ acknowledge parameter 62 is set to "YES". The parameter 64 specifies a period of time (e.g., in seconds) that a downloader portion (not shown) of processing system 36 waits for receipt of an acknowledgement from the subscriber. If the downloader does not receive the acknowledgement before expiration of the specified time period, it is configured to abort (or cause to abort) the download process.
Intersession timer parameter 62 is preferably used for the case when the subscriber_acknowledge_required parameter 62 is set to "YES". The intersession timer parameter 66 specifies the period of time that the above-described downloader will ignore the same command 44 after either (i) no acknowledgement from the subscriber is received, or (ii) the subscriber affirmatively rejects the download. That is, the set-top terminal 16, through the foregoing parameter, is configured to ignore the same command 44 for a period of time specified by the intersession timer parameter 66. This parameter is employed so that a subscriber who has just rejected a download is not immediately solicited (and resolicited) to accept the very download just rejected.
The start time parameter 68 and stop time parameter 70 respectively define the beginning and the end of the time frame referred to above in connection with the featured_tune mode 58. Parameters 68 and 70 specify the range of time, in-effect, during which tuning to the download channel should be enforced (i.e., to trigger the switch from the background_tune mode to the foreground_tune mode 56). In one embodiment, the start time parameter 68 and stop time parameter 70 are defined in GPS seconds. The start time parameter 68 must be less than or equal to the stop time parameter 70. In a constructed embodiment, a value of 0x00000000 (hex) indicates the infinite past, while a value of OxFFFFFFFF (hex) indicates the infinite future. Of course, other arrangements are possible. The start stop time parameters 68, 70 are used preferably in connection with the featured_tune mode 58.
Referring now to Figure 4, the overall operation of set-top terminal 16 will be described. In step 72, the set-top terminal receives the tune command 44 from download server 22, preferably over an OOB channel, to accept a download of objects. The method proceeds to step 74.
In step 74, the set-top terminal 16 extracts the download location information from command 44, which includes the physical, inband channel identification, and the identification of the stream or streams (e.g., program ID) containing the download objects. The method proceeds to step 76.
In step 76, set-top terminal 16, particularly processing system 36 determines whether the commanded mode is the background xme mode. If the answer to «=. decision step 76 is "YES", then the method branches to step 78. In the background_tune mode, processing system 36 is configured to accept the download only when the subscriber's primary service would be unaffected by accepting the download. Accordingly, in step 78, processing system 36 determines whether the offered download is on the same physical inband channel as the subscriber's primary service, or alternatively, whether the set-top terminal 16 is in a standby mode. In either of these situations, the subscriber's primary service will remain unaffected if the download is accepted. Other situations where the subscriber's primary service would be unaffected will be recognized by those if ordinary skill in the art. If the answer to decision step 78 is "YES", and parameter 60 (background_connect_allowed) is set to "YES", then the method branches to step 80. In step 80, processing system 36 accepts the download in the background, which is being provided on the same physical inband channel that inband tuner 32 is already tuned to (in the case where the set-top terminal 16 is on). If terminal 16 is in standby (i.e., no primary service selected), performance of step 80 may require that processing system 36 command inband tuner 32 to tune to the specified channel carrying the download service to recover the data stream(s) defining the offered download. The method then proceeds to step 82.
In step 82, processing system 36 implements the captured download according to predetermined procedures. It will be understood that the download may comprise new functionality, or may be an upgrade to existing functionality. The process of replacing an existing, executing program with a newly downloaded version may itself involve a reboot, and thus an interruption of the subscriber's primary service. This may be taken into consideration by the background_rune mode to defer reboot. In addition, error detection and version control, among other items, may be considered as part of the predetermined procedures for implementing the download in set-top terminal 16, once obtained from download server 22. These and other considerations are as set forth in a cop ending application assigned to the common assignee of the present invention entitled "METHOD AND APPARATUS FOR PREVENTING DISRUPTIONS IN SET-TOP TERMINAL FUNCTION DUE TO THE DOWNLOAD OF UPDATED PROGRAMMING OR DATA TO THE SET-TOP TERMINAL", U.S. Application No. 09/353,583, filed July 15, 1999, hereby incorporated by reference in its entirety.
Otherwise, if the answer to decision step 78 is "NO" (i.e., accepting the ^ download would affect the subscriber's primary service, perhaps interrupting it), then the method branches to step 84, wherein acceptance of the download offered by download server 22 is deferred.
If the answer to decision step 76 (background_tune?) is "NO", then the method branches to step 86.
In step 86, processing system 36 determines whether the commanded mode is the foreground_tune mode 56. If the answer is "YES", then the method branches to step 88.
Processing system 36 is configured, in the foreground_tune mode 56, to force acceptance of a download wherein the set-top terminal tunes to the download channel irrespective of an effect on the subscriber's primary service. In step 88, the set-top terminal accepts the offered download, wherein processing system 36, if needed, immediately tunes inband tuner 32 to the specified download channel. Acceptance of the download assumes that either the subscriber acknowledge required parameter 62 had been set to "NO", or, if it had been set to "YES", that the subscriber affirmatively acknowledged and accepted the download before the acknowledgement timeout interval has elapsed. The method then branches to step 82 wherein the download is implemented in the set-top terminal 16, as described above.
If the answer to decision step 86 (foreground_tune?) is "NO", then the specified mode is the featured_tune mode 58, and the method branches to step 90. In step 90, processing system 36 initializes the featured_tune mode 58. The method proceeds to step 92.
In step 92, processing system 36 performs a test. Processing system 36 determines whatever the current time is before the featured_tune time frame (i.e., defined by start parameter 68 and stop parameter 70). Therefore, if the answer to decision step 92 is "YES", then the method branches to step 94.
In step 94, processing system 36 implements the above-described background_tune mode 54. When the subscriber's primary service would be unaffected by acceptance of the download, this is, in-effect, equivalent to the background_tune mode 54. The method proceeds to step 96. In step 96, processing system 36 performs a test to determine whether the download can be accepted. If the download can be accepted without affecting the subscriber's primary service, then the download is accepted and the method branches to step 82 (i.e., implementation). Otherwise, if the download cannot presently be *_ accepted, the answer to decision step 96 is "NO", and the method branches back to step 92 (current_time less than start_time?). Processing system 36 continues to attempt to commence and complete the download commanded by download server 22 in the background until the beginning of the featured_tune time frame is reached. Once that time is reached, the method proceeds from step 92 to step 98.
In step 98, processing system 36 enforces acceptance of the commanded download. Processing system 36 is thus configured to accept the download commanded by download server 22 during the time frame specified in the command, irrespective of the effect such action may have on the subscriber's primary service. This assumes that the download was not already accepted before the beginning of the time frame. This step may involve the processing system 36 controlling tuner 32 to tune to the inband download channel. Once the download has been forced, the method proceeds to step 82 (implementation). The method ends in step 100.
In an alternate embodiment, the invention may be applied to a download on an out-of-band (OOB) channel. An OOB channel uses a fixed frequency, and has its own OOB tuner 34; accordingly, there is not a tuner conflict problem for tuning to the download channel when the download channel is an OOB channel. However, if the digital set-top terminal 16 needs to be reset in order to complete the downloading process, the subscriber's primary service and viewing practice could be interrupted unexpectedly. In this case, the downloading may be controlled based on the current set-top terminal state. The foregoing modes may be applied to this scenario. For example, in background_tune mode 54, the actual download of the software or data may be allowed to occur, but the required reset will be deferred until there is no conflict or interruption of the subscriber's primary service (e.g., when the set-top terminal is off, or in standby mode). Likewise, processing system 36 may be configured in the foreground_tune mode 56 to allow both the download, and the required reset irrespective of an effect on the subscriber's primary service.
The proceeding description has been presented only to illustrate and describe the invention. It is not intended to be exhaustive or to limit the invention to any precise form disclosed. Many modifications and variations are possible in light of the above-teachings.

Claims

1. A set-top terminal comprising: a tuner configured to tune one of a plurality of channels of an input signal which carries video/audio information corresponding to a primary service selected by a subscriber; a processing system coupled to said tuner and configured to generate an output signal comprising said primary service, said processing system being further configured for operation in one of a first mode and a second mode selected in accordance with a command from a download server to accept a download of software or data, said system in said first mode accepting said download when said subscriber's primary service is unaffected by accepting said download, said system in said second mode accepting said download irrespective of an effect on said subscriber's primary service.
2. The set-top terminal of claim 1 wherein said processing system is configured for operation in a third mode having a time frame associated therewith, said system in said third mode of operation being configured to accept said download at times before said time frame when said subscriber's primary service is unaffected by accepting said download, said system in said third mode being further configured to accept said download during said time frame irrespective of an effect on said subscriber's primary service when said download was not accepted before said tir&e" frame.
3. The set-top terminal of claim 2 wherein said command includes a start time and a stop time defining said time frame.
4. The set-top terminal of claim 3 wherein one of said data streams carries audio/video program information defining said subscriber's primary service.
5. The set-top terminal of claim 1 wherein said download is specified by said command as occurring on a download channel different from said one channel, said system in said second mode being configured to tune said tuner to said download channel away from said one channel to thereby accept said download.
6. The set-top terminal of claim 1 wherein said download is specified by said command as occurring on said one channel, said system in said first mode of operation being configured to accept said download while continuing to generate said output signal comprising said primary service.
7. The set-top terminal of claim 1 further comprising a second tuner, and ' wherein said download is specified by said command as occurring on an out-of-band channel receivable by said second tuner, said system in said first mode being further configured to defer accepting said download when a condition for accepting said download requires a reset of said set-top terminal.
8. The set-top terminal of claim 1 wherein said one channel carries information in an MPEG-2 compliant format corresponding to a plurality of services including said primary service and said download.
9. The set-top terminal of claim 5 wherein said command includes a subscriber acknowledgement parameter, which when set, configures said processing system in said second mode to solicit an acknowledgement from said subscriber prior to accepting said download.
10. The set-top terminal of claim 9 wherein said command further includes an acknowledgement time out parameter that specifies a time out interval within which said processing system must obtain said acknowledgement from said subscriber to accept said download.
11. The set-top terminal of claim 10 wherein said command further includes a download deferral parameter that configures said processing system to defer soliciting said acknowledgement from said subscriber in response to subsequent commands from said download server for a predetermined deferral interval after one of an expiration of said time out interval and a rejection of said download by said subscriber.
12. The set-top terminal of claim 6 wherein said command includes a background_connect_allowed parameter, which when set, configures said processing system in said first mode to accept said download while output signal comprising said primary service is active, and, which when reset, configures said processing system in said second mode to accept said download provided said output signal comprising said primary service is inactive.
13. A set-top terminal comprising: a tuner configured to tune one of a plurality of inband channels of an input signal that carries video/audio information corresponding to a primary service selected by a subscriber, said one inband channel carrying information corresponding to a plurality of services including said primary service; and a processing system coupled to said tuner configured to generate an output signal comprising said primary service, said processing system being further configured for operation in one of a first mode and a second mode selected in accordance with a command from a download server to accept a download of software or data, said system in said first mode being configured to accept said download when said download is carried in said information in said one channel, and, wherein when said download is included in information in a download channel different from said one channel, said system in said second mode being configured to tune said tuner to said download channel away from said selected channel to accept said download.
14. The set-top terminal of claim 9 wherein said first mode is a background_tune mode, said second mode is a foreground_tune mode, and said information in said one channel corresponds to an MPEG-2 compliant transport stream carrying said plurality of services,
15. A method of operating a set-top terminal comprising the steps of: (A) tuning to one of a plurality of channels that carry video/audio information corresponding to a primary service selected by a subscriber and generating an output signal comprising the primary service; (B) receiving from a download server a command to accept a download of software or data;
(C) reading a mode of operation from the command; and
(D) determining whether to accept the download using the mode.
16. The method of claim 15 further comprising the steps of: determining a condition when the download is contained in the one channel; accepting the download when the condition is satisfied and the mode allows a background transmission of the download to thereby leave the subscriber's primary service undisturbed.
17. The method of claim 15 further comprising the steps of: tuning to a download channel different from the one channel when the mode of operation requires the set-top terminal to accept the download irrespective of an effect on the subscriber's primary service.
18. The method of claim 15 further comprising the steps of: establishing a time frame using start and stop times from the command; determining a condition when the download is contained in the one channel; accepting the download prior to the time frame when the condition is satisfied o thereby leave the subscriber's primary service undisturbed.
19. The method of claim 18 further comprising the steps of: tuning to a download channel different from the one channel to accept the download during the time frame irrespective of an effect on the subscriber's primary service when the download was not accepted prior to the time frame.
PCT/US2001/021866 2000-07-12 2001-07-11 Method and apparatus for downloading objects via an inband channel with minimal subscriber impact WO2002005560A2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU2001273363A AU2001273363A1 (en) 2000-07-12 2001-07-11 Method and apparatus for downloading objects via an inband channel with minimal subscriber impact

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US61408900A 2000-07-12 2000-07-12
US09/614,089 2000-07-12

Publications (2)

Publication Number Publication Date
WO2002005560A2 true WO2002005560A2 (en) 2002-01-17
WO2002005560A3 WO2002005560A3 (en) 2002-03-14

Family

ID=24459820

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2001/021866 WO2002005560A2 (en) 2000-07-12 2001-07-11 Method and apparatus for downloading objects via an inband channel with minimal subscriber impact

Country Status (2)

Country Link
AU (1) AU2001273363A1 (en)
WO (1) WO2002005560A2 (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2381709A (en) * 2001-10-30 2003-05-07 Graeme Roy Smith Programmable set-top box and home gateway
EP1765013A1 (en) * 2005-09-14 2007-03-21 LG Electronics Inc. Broadcasting receiver and method for upgrading firmware
WO2009139993A2 (en) 2008-05-16 2009-11-19 Sony Computer Entertainment America Inc. Channel hopping scheme for update of data for multiple services across multiple digital broadcast channels
US7727529B2 (en) 2002-01-30 2010-06-01 General Antibodies And Biotechnologies S.R.L Human monoclonal antibody Fab fragments directed against HCV E2 glycoprotein and endowed with in vitro neutralizing activity
US20100161987A1 (en) * 2008-12-22 2010-06-24 Electronics And Telecommunications Research Institute Downloadable conditional access system service providing apparatus and method
US10757475B2 (en) * 2012-12-21 2020-08-25 Centurylink Intellectual Property Llc System and method for utilizing set-top box testing in television distribution network

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5440632A (en) * 1992-12-02 1995-08-08 Scientific-Atlanta, Inc. Reprogrammable subscriber terminal
EP0732850A1 (en) * 1989-05-25 1996-09-18 General Instrument Corporation Of Delaware Functionally modifiable cable television converter system
US5797010A (en) * 1995-12-22 1998-08-18 Time Warner Cable Multiple run-time execution environment support in a set-top processor
EP0926862A2 (en) * 1997-12-26 1999-06-30 Matsushita Electric Industrial Co., Ltd. Software download system including a transmitting apparatus and a receiving apparatus
US5940074A (en) * 1996-06-03 1999-08-17 Webtv Networks, Inc. Remote upgrade of software over a network

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0732850A1 (en) * 1989-05-25 1996-09-18 General Instrument Corporation Of Delaware Functionally modifiable cable television converter system
US5440632A (en) * 1992-12-02 1995-08-08 Scientific-Atlanta, Inc. Reprogrammable subscriber terminal
US5797010A (en) * 1995-12-22 1998-08-18 Time Warner Cable Multiple run-time execution environment support in a set-top processor
US5940074A (en) * 1996-06-03 1999-08-17 Webtv Networks, Inc. Remote upgrade of software over a network
EP0926862A2 (en) * 1997-12-26 1999-06-30 Matsushita Electric Industrial Co., Ltd. Software download system including a transmitting apparatus and a receiving apparatus

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2381709A (en) * 2001-10-30 2003-05-07 Graeme Roy Smith Programmable set-top box and home gateway
US7727529B2 (en) 2002-01-30 2010-06-01 General Antibodies And Biotechnologies S.R.L Human monoclonal antibody Fab fragments directed against HCV E2 glycoprotein and endowed with in vitro neutralizing activity
EP1765013A1 (en) * 2005-09-14 2007-03-21 LG Electronics Inc. Broadcasting receiver and method for upgrading firmware
US8250621B2 (en) 2005-09-14 2012-08-21 Lg Electronics Inc. Broadcasting receiver and method for upgrading firmware
CN102119528A (en) * 2008-05-16 2011-07-06 美国索尼电脑娱乐有限责任公司 Channel hopping scheme for update of data for multiple services across multiple digital broadcast channels
EP2292006A2 (en) * 2008-05-16 2011-03-09 Sony Computer Entertainment America LLC Channel hopping scheme for update of data for multiple services across multiple digital broadcast channels
EP2292006A4 (en) * 2008-05-16 2011-09-14 Sony Comp Entertainment Us Channel hopping scheme for update of data for multiple services across multiple digital broadcast channels
WO2009139993A2 (en) 2008-05-16 2009-11-19 Sony Computer Entertainment America Inc. Channel hopping scheme for update of data for multiple services across multiple digital broadcast channels
US8359614B2 (en) 2008-05-16 2013-01-22 Sony Computer Entertainment America Llc Channel hopping scheme for update of data for multiple services across multiple digital broadcast channels
AU2009246744B2 (en) * 2008-05-16 2013-07-04 Sony Computer Entertainment America Llc Channel hopping scheme for update of data for multiple services across multiple digital broadcast channels
US8605725B2 (en) 2008-05-16 2013-12-10 Sony Computer Entertainment America Llc Channel hopping scheme for update of data for multiple services across multiple digital broadcast channels
US9178774B2 (en) 2008-05-16 2015-11-03 Sony Computer Entertainment America, LLC Channel hopping scheme for update of data for multiple services across multiple channels
CN103716654B (en) * 2008-05-16 2018-06-01 美国索尼电脑娱乐有限责任公司 The method of the renewable time table for the data transmitted for generation with digital broadcast signal
US20100161987A1 (en) * 2008-12-22 2010-06-24 Electronics And Telecommunications Research Institute Downloadable conditional access system service providing apparatus and method
US10757475B2 (en) * 2012-12-21 2020-08-25 Centurylink Intellectual Property Llc System and method for utilizing set-top box testing in television distribution network

Also Published As

Publication number Publication date
WO2002005560A3 (en) 2002-03-14
AU2001273363A1 (en) 2002-01-21

Similar Documents

Publication Publication Date Title
CA2498283C (en) Backup communication modes
EP1182818B1 (en) Communication parameter adjustment system in an Internet compatible bi-directional communication system
KR100483370B1 (en) Set top terminal for an interactive information distribution system
US20030061604A1 (en) Software-code configurable digital appliance
CA2498280C (en) Adaptive communication modes
US20060294566A1 (en) Method and apparatus for automatically altering viewed segments of television broadcast
CN103546809A (en) Method and device for upgrading software of set top box
US7650622B2 (en) Interactive session establishment based on initiation failure detection
WO2002005560A2 (en) Method and apparatus for downloading objects via an inband channel with minimal subscriber impact
KR100795644B1 (en) Receiving apparatus and electric power controlling method
JP4450133B2 (en) Information transmitting method and information transmitting apparatus
US20090158380A1 (en) Set top terminal performing service group number autodiscovery during initialization or boot-up process
US6918135B1 (en) Session oriented settop communication using dynamic, synchronized routing
KR20070117819A (en) Open cable broadcast processing apparatus and control method thereof
US20080013472A1 (en) Method of controlling data broadcast and data broadcast receiver
US20110296483A1 (en) Digital broadcast receiver
JP3722590B2 (en) CATV system, transmission apparatus, reception apparatus, and control signal transmission method used therefor
CN116112753A (en) Processing method compatible with digital television private descriptor service logic and related device
MXPA99002481A (en) Set top terminal for an interactive information distribution system

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
AK Designated states

Kind code of ref document: A3

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A3

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase in:

Ref country code: JP