A digital video broadcast system allows a multiple system operator (MSO) to deliver television programs and multimedia services to subscribers. The capacity, or bandwidth, of the system determines the programs and services that the MSO delivers. In legacy broadcast systems, the MSO sends all of the available programs and services to the subscriber's set-top box on a single cable. Thus, the only way to increase the programs and services available to subscribers in legacy broadcast systems is to increase the bandwidth.
A switched digital video (SDV) system is an improvement to the legacy broadcast systems. The SDV system requires less bandwidth to deliver high-bandwidth digital services by allowing the MSO to send only the content requested by a service group, where each service group includes a set of set-top boxes with visibility to a common set of switched edge quadrature amplitude modulator (QAM) devices. To make this possible, the subscriber's set-top box communicates with a network side video server to request the program that the subscriber wants to watch in real time. The SDV system responds by delivering the requested program to the subscriber's service group. Thus, the service group only receives the programs that subscribers in the service group are watching.
In the SDV system, the switched video manager is responsible for managing which SDV services should reside in an SDV transport stream. During this management process, it may become necessary for the switched video manager to add an SDV service to an edge QAM device as a result of a tune request from a subscriber's set-top box SDV client.
The problem with the tune request is that there is a time delay for the switched video manager to tune from a current SDV service to a requested SDV service when the requested SDV service is not currently being delivered to the set-top box that is requesting the service. The switched video manager will not be able to direct an edge resource manager device to deliver the requested SDV service at the exact time that corresponds to a seamless transition between the current SDV service and the requested SDV service. Since the response time for the edge resource manager device, Internet Group Management Protocol (IGMP) join time, and the time to convert IP to MPEG are not constant, the time delay may vary on the order of hundreds of milliseconds depending on the loading of the various systems. Furthermore, the time required for message communication between the SDV client in the set-top box and switched video manager, and message communication between the switched video manager and the switching equipment may add to this delay.
There is a demand for a method and system for providing a seamless transition when tuning a set-top box from a current SDV service to a requested SDV service for some features that require seamless transitions. The presently disclosed invention satisfies this demand.
Aspects of the present invention provide a switched digital video (SDV) system and method that provides a seamless transition when tuning a set-top box from a first SDV service to a second SDV service. The method detects a set up service trigger in a content stream before a tune request time to transition the content stream from the first SDV service to the second SDV service, and sends a request to set up the second SDV service at a time before the tune request time, where a time difference between the time and the tune request time is greater than a service set up time for the second SDV service. The method detects a tune request in the content stream for the second SDV service, sends a service select request to tune to the second SDV service, and receives the second SDV service at the tune request time.
The head end 120, in one embodiment, is a cable television master head end facility for receiving television signals for processing and distribution over a cable television system. The head end 120 provides the subscriber location 160 with a variety of services and/or connections, such as the connection to the network 110. For example, the head end 120 may provide a connection to external services such as video servers, public switched telephone network voice, multimedia messages, and internet data.
The switched video operations manager (SVOM) 132, edge resource manager (ERM) 134, and switched video manager (SVM) 136 are the components comprising the SDV cluster 130 for the SDV broadcast system 100. The SVOM 132 is a computing device, including a processor and memory, which configures, monitors, and collects data from the ERM 134 and SVM 136 components. A cable operator uses the SVOM 132 to configure channels for SDV services, manage service group mappings, and administer the ERM 134, SVM 136, and edge QAM device (not shown) relationships. The ERM 134 is a computing device, including a processor and memory, which manages the edge QAM device relationships in the head end 120 as established by the cable operator's policies. The ERM 134 receives requests for edge QAM devices, and selects the appropriate edge QAM device to satisfy the bandwidth requirements of the request. The SVM 136 is a computing device, including a processor and memory, which manages the SDV streams that are active at any given time, and directs each stream to the appropriate set-top box 170 that requested the stream. The SVM 136 also tracks the channels viewed by each set-top box 170, and communicates with the ERM 134 to establish the requested channels.
The SDV cluster 130 provides the SDV broadcast system 100 with features that are greatly affected by a time delay during a tuning transition and benefit from a seamless or “on the spot” tuning transition. These features include, but are not limited to, the insertion of targeted advertisements into a content stream, and the splicing of a Moving Picture Experts Group (MPEG) elementary stream when switching between audio and video (AN) service components.
In one embodiment, the SDV cluster 130 coordinates the insertion of targeted advertisements into a show that a subscriber is watching. The show includes a primary advertisement that is replaced by the targeted advertisement. To accomplish this replacement, when the video stream for the show encounters the beginning of the primary advertisement, the SDV cluster 130 tunes to another service so that the subscriber can view the targeted advertisement. When the video stream encounters the end of the targeted advertisement, the SDV cluster 130 tunes back to the video stream for the show. During these tuning transitions, the subscriber will be annoyed if there is a time delay between the show and the targeted advertisement spot, or between the targeted advertisement spot and the show. In addition, since these targeted advertisements generate a significant revenue stream, the time delay is lost advertisement time that negatively impacts the revenue stream.
In another embodiment, the SDV cluster 130 coordinates the splicing of an MPEG elementary stream when switching between A/V service components. Since the introduction of the Society of Cable Telecommunications Engineers (SCTE) Digital Video Service Multiplex and Transport System Standard for Cable Television (SCTE 54), services can only include one video component. Thus, the SDV cluster 130 will splice between one set of A/V service components (e.g., service A) to another set of A/V service components (e.g., Service B).
The subscriber location 160 includes a computing device, such as a set-top box 170, to receive, decode and display data and video content, and provide access to the services and/or connections that the head end 120 provides. A service group 150 is an organization that includes a number of subscriber locations 160, each subscriber location 160 including one or more set-top boxes 170. A unique identifier associated with each service group 150, subscriber location 160, and/or set-top box 170 supports the functionality and advantages provided by the head end 120, and SDV cluster 130.
In the SDV broadcast system 100 shown in
The network 110 shown in
The HFC network 140 shown in
The set-top box 170, in one embodiment, is a general-purpose computing device that performs the present invention. A bus 205 is a communication medium that connects a processor 210, data storage device 215 (such as a Serial ATA (SATA) hard disk drive, optical drive, Small Computer System Interface (SCSI) disk, flash memory, or the like), communication interface 220, infrared (IR) interface 225, video output processing 235, and memory 250 (such as Random Access Memory (RAM), Dynamic RAM (DRAM), non-volatile computer memory, flash memory, or the like). The communication interface 220 connects the set-top box 170 to the HFC network 140. The IR interface 225 connects the set-top box 170 to a remote controller 230. The video output processing 235 connects the set-top box 170 to a display device such as a television 240, and sends the video content that the television 240 screen displays. In one embodiment, the implementation of the present invention on the set-top box 170 is an application-specific integrated circuit (ASIC).
The processor 210 performs the disclosed methods by executing the sequences of operational instructions that comprise each computer program resident in, or operative on, the memory 250. The reader should understand that the memory 250 may include operating system, administrative, and database programs that support the programs disclosed in this application. In one embodiment, the configuration of the memory 250 of the set-top box 170 includes an application program 251, SDV client program 252, and assigned location identifier 253. The application program 251 provides the viewer with access to basic functions, such as the display of a video content stream on the television 240, and advanced functions, such as video-on-demand (VOD), interactive television, and other next-generation television application programs. The SDV client program 252 is a program that interfaces with the SDV cluster 130 to provide the SDV broadcast system 100 with features that are greatly affected by a time delay during a tuning transition and benefit from a seamless or “on the spot” tuning transition. The assigned location identifier 253 is an identifier that associates the set-top box 170 to a location, such as a service group 150 or subscriber location 160. The application program 251, SDV client program 252, and assigned location identifier 253 perform the methods of the present invention disclosed in detail in
The process 300 shown in
Referring again to
Since the new service was set up before the tuning request time, the set-top box 170 receives the new service at the tuning request time, thereby providing a seamless transition when tuning the set-top box 170 from the current SDV service to the new SDV service. In order to carry out the splicing feature in a seamless fashion, the present invention provides a deterministic mechanism to ensure that the SDV cluster 130 is prepared to send a new SDV service to the set-top box 170 prior to the set-top box 170 requesting to tune to the new service. This deterministic mechanism solves the problem of setting up the SDV service prior to the tuning transition point.
Although the disclosed embodiments describe a fully functioning method and system for providing a seamless transition when tuning a set-top box from a current SDV service to a requested SDV service, the reader should understand that other equivalent embodiments exist. Since numerous modifications and variations will occur to those reviewing this disclosure, the method and system for providing a seamless transition when tuning a set-top box from a current SDV service to a requested SDV service is not limited to the exact construction and operation illustrated and disclosed. Accordingly, this disclosure intends all suitable modifications and equivalents to fall within the scope of the claims.