Source: http://www.google.com/patents/US7804856?dq=7,634,557
Timestamp: 2017-11-25 12:35:32
Document Index: 246875293

Matched Legal Cases: ['art 10', 'art10', 'art 10', 'art 10', 'art 10', 'art 100', 'art 10', 'art 10', 'art 10']

Patent US7804856 - Advanced, self-balancing video multiplexer system - Google Patents
An advanced video multiplexer system designed and optimized for next generation on-demand video distribution is described. The system optimizes identifies a multi-program transport stream best able to accommodate new seesions based upon Quality of Service (QoS) and QAM utilization ratios. MPTS channels...http://www.google.com/patents/US7804856?utm_source=gb-gplus-sharePatent US7804856 - Advanced, self-balancing video multiplexer system
Publication number US7804856 B2
Application number US 11/123,677
Also published as CA2537280A1, CA2537280C, CA2537293A1, CA2537293C, CA2537294A1, CA2537294C, CN1871795A, CN1871814A, CN100521626C, CN100571066C, CN101065963A, CN101065963B, EP1661266A2, EP1661266A4, EP1661310A2, EP1661310A4, EP1665765A2, EP1665765A4, US6996129, US7864808, US8161519, US20050190794, US20050198686, US20050276284, US20090138966, WO2005022795A2, WO2005022795A3, WO2005022796A2, WO2005022796A3, WO2005022892A2, WO2005022892A3
Publication number 11123677, 123677, US 7804856 B2, US 7804856B2, US-B2-7804856, US7804856 B2, US7804856B2
Patent Citations (83), Non-Patent Citations (7), Referenced by (30), Classifications (91), Legal Events (7)
US 7804856 B2
An advanced video multiplexer system designed and optimized for next generation on-demand video distribution is described. The system optimizes identifies a multi-program transport stream best able to accommodate new seesions based upon Quality of Service (QoS) and QAM utilization ratios. MPTS channels are rebalanced via re-grouping and transrating as necessary to optimize bandwidth utilization. Multiple video formats are supported via built-in transcoding. The multiplexer manages encryption resources and supports new sessions using previously allocated encryption resources where possible. Sessions can be grouped into encryption channels either by using a single authorization tier per channel policy, or by requiring all clients of the group to be in physically separated service groups. Encryption channels can be released when a channel no longer serves any clients or when one or more other channels that have been assigned the same entitlement can accommodate any remaining clients.
1. A video multiplexer system, comprising:
a session manager for establishing digital video sessions with client devices, for identifying digital video program content to be provided to said client devices, and how said digital video program content is to be encrypted;
a video server, responsive to said session manager, for providing said digital video program content, said digital video program content being further characterized by a plurality of video segments;
a multiplexer for selecting and combining said video segments into one or more multi-channel multiplexes and determining Multi Program Transport Stream (MPTS) occupancy levels;
a device to encrypt said digital video program content according to encryption parameters associated with authorization information for said digital video program content;
a device to establish authorization tiers for encrypting said digital video program content, each authorization tier corresponding to a class of programs and having a particular different encryption; and
at least one transrating module associated with said multiplexer which enables modification of at least one of a bit rate or encoding format of said digital video program content;
wherein said multiplexer:
receives a request for said digital video program content, the request identifying the authorization tier of said digital program content;
manages encryption resources and routes said digital video program content associated with new sessions for encryption via previously established encryption channels when such previously established encryption channels are compatible with encryption requirements of said new sessions and allocating new encryption channels otherwise;
combines said digital video program content for multiple clients having compatible encryption requirements associated with said authorization tier for encryption according to a specific set of the encryption parameters via the same encryption channel; and
routes said digital video program content associated with a new session and re-routes said digital video program content associated with previously established sessions to balance MPTS occupancy.
when the new session is established by said session manager, said multiplexer determines MPTS occupancy levels and routes said digital video program content associated with said new session to an MPTS best able to accommodate said session according to predetermined occupancy criteria.
said predetermined occupancy criteria include a minimum QoS requirement.
4. A video multiplexer system according to claim 2, wherein:
said predetermined occupancy criteria include QAM utilization ratios.
said multiplexer transrates CBR digital video program content via said at least one transrating module, converting it to VBR digital video program content consistent with QAM channel capacity.
6. A video multiplexer system according to claim 1, further comprising:
a satellite receiver providing VBR digital video program content;
said multiplexer receives and transrates said VBR digital video program content via said at least one transrating module.
said multiplexer selectively replaces portions of said VBR digital video program content with other digital video program content to produce a multiplex, transrating said multiplex to maintain video quality and to match QAM channel capacity.
8. A video multiplexer system according to claim 1, further comprising:
at least one transcoder module associated with said multiplexer.
9. A video multiplexer system according to claim 8, wherein:
said digital video program content is encoded according to a first video format;
said multiplexer transcodes said digital video program content to a second video format.
said multiplexer selectively determines the digital video format to be routed to client devices on a client-by-client basis depending upon client capabilities established at session start-up.
11. A video multiplexer system according to claim 1, wherein:
said multiplexer groups sessions into encryption channels by service group.
12. A video multiplexer system according to claim 1, wherein:
said multiplexer groups sessions into encryption channels by authorization tier.
13. A video multiplexer system according to claim 1, wherein said digital video program content from multiple clients are combined for encryption via the same encryption channel in the event that the clients belong to the same service group within the same authorization tier.
14. A video multiplexer system according to claim 1, wherein said digital video program content from multiple clients are combined for encryption via the same encryption channel in the event that the clients correspond to different service groups.
15. A method for multiplexing digital video program content, comprising:
providing a session manager for establishing digital video sessions with client devices, for identifying digital video program content to be provided to said client devices, and how said digital video program content is to be encrypted;
providing a video server, responsive to said session manager, for providing said digital video program content, said digital video program content being further characterized by a plurality of video segments;
providing a multiplexer for selecting and combining said video segments into one or more multi-channel multiplexes and determining Multi Program Transport Stream (MPTS) occupancy levels;
providing a device to encrypt said digital video program content according to encryption parameters associated with authorization information for said digital video program content;
providing a device to establish authorization tiers for encrypting said digital video program content, each authorization tier corresponding to a class of programs and having a particular different encryption; and
providing at least one transrating module associated with said multiplexer which enables modification of at least one of a bit rate or encoding format of said digital video program content;
This application is a continuation of copending PCT Patent Application No. PCT/US 2004/028031 filed on Aug. 27, 2004, which is incorporated herein by reference.
This application further relates to copending PCT Patent Application No. PCT/US 2004/028155 filed on Aug. 27, 2004, which is incorporated herein by reference.
According to another aspect of the invention, when new sessions are established, the multiplexer automatically re-routes video content associated with previous sessions along with the content of the new sessions to balance MPTS occupancy.
The session manager 130 controls the operation of the various system modules (server 110, encrypter 120 and integrated multiplexer/modulator 150) via their respective resource managers (server resource manager 110B, encrypter resource manager. 120B and multiplex resource manager 150A) controlling allocation of resources between the various system modules over the network switch. A direct communication path exists between the session manager and individual Resource managers linked to the server, encrypter, and multiplexer. A less direct path exists between the session manager and each client, utilizing network links and modulated upstream or downstream channels.
The server module 310 (compare 110, FIGS. 1 and 210, FIG. 2) further comprises a server 310A and a server resource manager 310B. The encrypter module 320 (compare 120, FIGS. 1 and 220, FIG. 2) further comprises an encrypter 320A and an encrypter resource manager 320B. The multiplexer module 350 (compare 150, FIGS. 1 and 250, FIG. 2) further comprises a multiplexer 350A and a multiplex resource manager 350B.
Those of ordinary skill in the art will understand that the multiplexer system of the present invention is capable of supporting a variety of Video On Demand (VOD) services including Movies on Demand, Subscription video on Demand (SVOD), Free Video on Demand, and other VOD-related services at different bit rates and improves the efficiency, flexibility, scalability, cost and performance to provide these services. The flexibility of the present invention with respect to transrafing, transcoding, multiplexing and encryption greatly facilitates such On-Demand features.
Those of ordinary skill in the art will also understand that the multiplexer system of the present invention can support HDTV (High-Definition Televsion) On Demand Services and improves scalability and flexibility with respect to delivery of HDTV On Demand Services. While modulators and upconverter are not concerned with the meaning of the transport streams they operate upon, multiplexer systems are tightly connected to the format of their transport streams. By separating multiplexer and modulator functionality, the present inventive technique simplifies deployment of HDTV and mixed HDTV/SDTV (Standard Definition Television) services by allowing multiplexers to combine both SDTV and HDTV streams into common MPTS signals.
MPEG-4/Part 10 (H.264) encoders and set top boxes will soon become available and it is therefore highly desirable to accommodate this and other emerging standards. The present inventive multiplexing technique is specifically designed to work directly with transcoders and transraters, and is therefore ideally suited to the addition of new video/audio/data formats. By adding transcoding capability between MPEG4/Part10 and MPEG-2, cable operators can smoothly migrate in MPEG4/Part 10 set top boxes while continuing to use legacy MPEG-2 set top boxes in the same cable plant, in the same nodes, and in the same service groups. In an on-demand service environment, every set top box has its own point-to-point connection to the source in the headend. If that source (whether it is a satellite feed, real-time encoder, or video server) is in MPEG4/Part 10 format, the multiplexer can, on a stream-by-stream basis, transcode to MPEG-2 to feed legacy MPEG-2 On-Demand clients or keep the stream in MPEG4/Part 10 format to feed new MPEG-4/Part 100n-Demand clients. By using MPEG4/Part 10 for satellite feeds, real-time encoding, and/or storage on video servers, cable operators can achieve a 2-3 times gain in the number of streams that can be transmitted in a satellite transponder, stored on video servers, transported over the network, and sent down a QAM channel.
FIG. 7 is a block diagram of hardware components of an integrated multiplexer-modulator function 700 of the type desribed hereinabove with respect to FIG. 6. These hardware components are operated under the software control of a processing element (i.e., CPU) included in MUX module 720. These components include OS RAM memory block 710A (compare 620), packet RAM 710B (compare 630) and interleaver ram 710C (compare 650). These random access memory devices can be implemented using common dual data rate (DDR) or single data rate (SDR) synchronous dynamic RAM devices (SDRAM). Also included in the integrated multiplexer-modulator function 700 are I/O function 730, a SERDES (Serializer/Deserializer) function 740, a “scrambler” function 750, a modulator function 760, an IFFT function block 770 and a filter function block 780.
FIG. 8 is a block diagram of a prior-art MPEG-2 Transrater module 800. The purpose of the transrater module is to decoder an incoming MPEG-2 stream and re-encode it at a different data rate. The incoming data is initially decoded by a variable-length decoder 805 (VLD). This is then presented to an Inverse Quantizer (IQ) function 810 (to restore quantized/encoded coefficient data to a “full” representation thereof). Predictive data, such as motion vectors, is operated upon by a prediction function block 845 and used in conjunction with stored frame images to contstruct intermediate frame difference images in image memory 855. A DCT (Discrete Cosine Transform) function 850 converts image difference data stored in image memory 855 and converts it into DCT coefficients. These are summed with coefficients from the inverse quantizer 810 in a summing block 815 to produce coefficient data for requantizing at a different level (to produce a different data rate) in a Quantizer block (Q) 820. Coefficient data from the quantizer block 820 is variable-length encoded (VLE) in an encoder block 825 for output as a transrated MPEG-2 data stream, and is also processed by a second inverse quanitzer block (IQ) 830 and differenced with the coefficient from the summing block 815 in a differencing block 835. The coefficient differences are then operated upon by an IDCT (Inverse Discrete Cosine Transform) block 840 to produce difference frame image in image memory 855. The processing loop comprising the summing block 815, the inverse quantizer 830, the differencing block 835, the IDCT 840, the prediction block 845, the image memory 855 and the DCT 850 is used to prevent differences between the incoming and outgoing data streams from diverging as the prediction errors are propagated from one frame to the next.
The description hereinabove with respect to FIG. 8 is specific to MPEG transrating. Those of ordinary skill in the art will immediately understand that pther types of transrating are known in the art and can be substituted. It is fully within the spirit and scope of the present inventive technique to do so.
FIG. 9 is a block diagram of a simple prior-art transcoder function. In this example, a stream that was previously encoded using MPEG4, is converted to an MPEG-2 stream. This type of conversion can be useful during the process of upgrading a system from MPEG-2 to a more efficient compression standard such as MPEG-4 Part 10 (H.264). If the source content is made available in the MPEG-4 format, then the transcoder in FIG. 9 could be used when the content is to be delivered to a user which has not yet replaced his MPEG-2 receiver with an MPEG4 receiver.
MPEG-4 Decode module 910 receives the MPEG-4 signal and reconstructs the uncompressed video pixels. This uncompressed stream of video pixels is then supplied to MPEG-2 encoder 920 which is adapted to receive quantization parameters from an external Control interface, and Decision Data directly from MPEG4 Decode module 910. Decision Data can include block encoding parameters such as prediction mode, interlace mode, motion type, and motion vectors. If this information is supplied directly from MPEG-4 Decode module 910, then the complexity of the MPEG-2 encoder can be significantly reduced. However, since the encoding decisions used in MPEG-4 do not precisely match the coding decisions used in MPEG-2, the MPEG-4 Decode module 910 would typically be designed to provide only an approximation of the best encoding decisions to be used by the MPEG-2 encoder. These parameters can then be further optimized by MPEG-2 Encode module 920.
The multiplexer can support multiple video formats such as MPEG-2, MP@ML (Main Profile at Main Level) and HDTV, and can include sufficient resources to handle any practical combination of MP@ML and HDTV streams in each modulator channel. MPEG4/Part 10 AVC (Advanced Video Coding) may also be supported with both transrating and transcoding capabilities. With this transcoding capability of the present inventive multiplexer, it becomes possible to conserve storage resources on the server by adopting the more efficient MPEG-4 format for most high definition or standard definition content, and relying on transcoding to enable compatibility with existing MPEG-2 set-tops. This ability becomes particularly advantageous after migrating to a predominately narrowcast format, as it permits selective enabling of the transoding feature on a client by client basis. This permits the gradual migration of clients to MPEG-4 set-tops and can have a very significant impact on the last-mile bandwidth that available for narrowcasting.
The multiplex resource manager can also create and manage a different type of encryption channel where each of the assigned streams is targeted to clients in physically separated service groups. In this case, the packets of the multiplexed and encrypted packet stream are regrouped into multi-program transport streams that are subsequently distributed to different service groups. This means that each client will have no way to apply his keys to another client's stream simply because these streams will not be available on the same feed. Once assigned to this type of encryption channel, a client will not need to be reassigned when switching from one program to another, even though the corresponding authorization tiers may differ. In fact, a client may only need to be reassigned if part of a rebalancing operation designed to avoid the over-utilization of any single encryption channel. Rebalancing can be perfouned seamlessly without incurring any sort of service disruption.
FIG. 11 is a block diagram of a video multiplexer system 1100 similar to that previously shown and described hereinabove with with respect to FIG. 4. The video multiplexer system 1100 of FIG. 11 accommodates this scheme for a satellite receiver.
3 Hairuo Ma, Magda El Zarki; A New Transport Protocol for Broadcasting/Multicating MPEG-2 Video Over Wireless ATM Access Networks, Jul. 2002, Wireless Networks, vol. 8 Issue 4, pp. 371-380.
US8631454 * Sep 5, 2008 Jan 14, 2014 Motorola Mobility Llc Method and apparatus for constrained distribution of television program material
US8854964 * Dec 14, 2007 Oct 7, 2014 General Instrument Corporation Method and apparatus for determining a transport bit rate for a Multiprogram transport stream
US20090154546 * Dec 14, 2007 Jun 18, 2009 General Instrument Corporation Method and Apparatus for Determining a Transport Bit Rate for a MultiProgram Transport Stream
US20100064308 * Sep 5, 2008 Mar 11, 2010 General Instrument Corporation Method and Apparatus for Constrained Distribution of Television Program Material
U.S. Classification 370/486, 370/537
International Classification H04H60/31, G06F15/163, H04N11/04, H04B7/185, H04N7/025, H04J, H04L12/66, H04L29/06, H04N7/12, H04N7/18, H04N7/26, H04N, H04L12/16, H04N7/24, G06F15/16, H04N7/50, H04N7/173, H04N11/02, H04L12/26, H04N7/20, H04L12/28, H04J1/00, H04J3/26, H04J3/02, H04H20/28
Cooperative Classification H04N19/48, H04N19/40, H04N19/61, H04N19/146, H04N7/17318, H04N21/812, H04N21/23655, H04N7/1675, H04N21/47202, H04N21/23103, H04N21/4344, H04N21/26606, H04L63/0428, H04N21/2225, H04N21/4347, H04N21/63345, H04N21/23608, H04N7/17336, H04N21/6118, H04L29/06027, H04N21/26613, H04N21/2405, H04N21/44016, H04N21/2383, H04N21/2385, H04N21/2347, H04N21/2365, H04N21/23424, H04N21/26216, H04L65/80, H04L65/4076, H04L65/605
European Classification H04N21/231B, H04N21/24L, H04N21/2385, H04N21/81C, H04N21/2347, H04N21/2365S, H04N21/262C1, H04N21/266E, H04N21/2383, H04N21/2225, H04N21/234S, H04N21/472D, H04N7/50, H04N21/236R, H04L29/06M6C6, H04N21/266K, H04N7/173B2, H04N7/26A6E, H04N21/2365, H04N21/6334K, H04N21/434R, H04N7/26C, H04L29/06M8, H04N7/26T, H04N21/44S, H04L29/06M4S2, H04N21/434V, H04L29/06C2, H04N21/61D2, H04L63/04B, H04N7/167D, H04N7/173B4
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:KRAUSE, EDWARD A.;MONTA, PETER;TOM, ADAMA;REEL/FRAME:016544/0906