CA2652123A1 - System and method for dynamically allocating stream identifiers in a multi-encryption transport system - Google Patents

System and method for dynamically allocating stream identifiers in a multi-encryption transport system Download PDF

Info

Publication number
CA2652123A1
CA2652123A1 CA002652123A CA2652123A CA2652123A1 CA 2652123 A1 CA2652123 A1 CA 2652123A1 CA 002652123 A CA002652123 A CA 002652123A CA 2652123 A CA2652123 A CA 2652123A CA 2652123 A1 CA2652123 A1 CA 2652123A1
Authority
CA
Canada
Prior art keywords
stream
encrypted
primary
packet
identifier
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
CA002652123A
Other languages
French (fr)
Other versions
CA2652123C (en
Inventor
Neil B. Buchen
Thomas C. Wilson
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Scientific Atlanta LLC
Original Assignee
Scientific-Atlanta, Inc.
Neil B. Buchen
Thomas C. Wilson
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 Scientific-Atlanta, Inc., Neil B. Buchen, Thomas C. Wilson filed Critical Scientific-Atlanta, Inc.
Publication of CA2652123A1 publication Critical patent/CA2652123A1/en
Application granted granted Critical
Publication of CA2652123C publication Critical patent/CA2652123C/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/167Systems rendering the television signal unintelligible and subsequently intelligible
    • H04N7/1675Providing digital key or authorisation information for generation or regeneration of the scrambling sequence
    • 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/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/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/23608Remultiplexing multiplex streams, e.g. involving modifying time stamps or remapping the packet identifiers
    • 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/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2389Multiplex stream processing, e.g. multiplex stream encrypting
    • H04N21/23895Multiplex stream processing, e.g. multiplex stream encrypting involving multiplex stream encryption
    • H04N21/23897Multiplex stream processing, e.g. multiplex stream encrypting involving multiplex stream encryption by partially encrypting, e.g. encrypting only the ending portion of a movie
    • 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/436Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
    • H04N21/43607Interfacing a plurality of external cards, e.g. through a DVB Common Interface [DVB-CI]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/162Authorising the user terminal, e.g. by paying; Registering the use of a subscription channel, e.g. billing
    • 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/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/23406Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving management of server-side video buffer
    • 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/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/2362Generation or processing of Service Information [SI]
    • 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

Abstract

The present invention is suitable for use in a multi-encrypted system that dynamically allocates stream identifiers in a secondary overlay stream depending upon the identifiers in a primary encrypted stream. The primary encrypted input stream is monitored to determine the presence of all identifier values. Once the identifier values are determined, the values are stored in an allocation table and marked as 'in-use' to ensure that these identifier values are not allocated to any of the secondary overlay streams. The primary encrypted stream is monitored and the allocation table is updated continuously to detect any changes or conflicts to the identifier values, and the secondary overlay streams are dynamically updated accordingly.

Claims (20)

1. A method for dynamically allocating identifier values to a secondary stream depending upon a primary stream in a multi-encrypted transport stream, wherein the identifier values fall within a range of values, the method comprising the steps of:
receiving a primary encrypted stream at a processor, wherein the primary encrypted stream comprises primary encrypted packets;
discovering an identifier value for each primary encrypted packet;
storing a bit value corresponding to each discovered identifier value in an allocated table;
based on each discovered identifier value in the allocated table, assigning an available identifier value to each secondary encrypted packet comprised in a secondary encrypted stream, wherein the available identifier value is chosen from an available table.
2. The method of claim 1, further comprising the step of resetting the bit value in the allocated table accordingly when an identifier value is changed or added in the primary encrypted stream.
3. The method of claim 1, further comprising the step of mapping the assigned identifier value in accordance with the bit value to one of a program association table (PAT) and a program map table (PMT), wherein the PAT and PMT are transmitted along with the multi-encrypted transport stream.
4. The method of claim 3, further comprising the steps of:
continuously monitoring the identifier values of the primary encrypted stream;
resetting the bit value in the allocated table when a monitored identifier value is changed in an updated primary encrypted stream;
determining a reset bit value conflicts with an assigned identifier of the secondary encrypted stream; and changing the assigned identifier of the secondary stream to an updated assigned identifier value taken from the available table to provide an updated secondary encrypted stream.
5. The method of claim 4, further comprising the steps of:
remapping the updated assigned identifier of the secondary stream in one of the PAT and the PMT; and transmitting one of the PAT and the PMT comprising the remapped updated assigned identifier.
6. The method of claim 4, further comprising the step of:
blocking transmission of the updated primary encrypted stream while the secondary encrypted stream is updated with route changes and one of the PAT and PMT
comprising the updated assigned identifier are transmitted to a plurality of receiving devices.
7. The method of claim 1, the steps further comprising:
receiving the multi-encrypted transport stream at a plurality of receiving devices, wherein the plurality of receiving devices decrypt one of the primary encrypted stream and the secondary encrypted stream;
at each of the plurality of receiving devices, determining a desired program in its associated encrypted stream by a program number in the PAT; and decrypting the desired program by a video, audio, and encryption identifier in the PMT.
8. The method of claim 1, further comprising the steps of:
receiving the primary encrypted stream from the processor and a clear stream at a packet selector;
determining a critical packet of the clear stream and its associated primary encrypted packet;
encrypting the determined critical packet of the clear stream with a secondary encryption scheme to provide the secondary encrypted packet; and ensuring the secondary encrypted packet has the assigned identifier value that does not conflict with the discovered identifier value of the primary encrypted stream by comparing the identifier value of the primary encrypted packet to each bit value in the allocated table.
9. A method for dynamically allocating identifier values to a secondary encrypted stream depending upon a primary encrypted stream, the method comprising the steps of:
receiving a primary encrypted stream at a processor, wherein the primary encrypted stream comprises primary encrypted packets;
determining an identifier value for each primary encrypted packet;
storing the determined identifier value in an allocated table;
receiving the primary encrypted stream and a matching clear stream at a packet selector;
determining a critical packet of the clear stream and its associated primary encrypted packet;
encrypting the determined critical packet of the clear stream with a secondary encryption scheme to provide a secondary encrypted packet;
assigning a secondary identifier value to the secondary encrypted packet that is not present in the allocated table; and transmitting a combined overlay stream to a plurality of receiving devices, wherein the combined overlay stream comprises the critical packets of the primary encrypted stream, secondary encrypted packets of a secondary encrypted stream, and a remaining portion of the clear stream.
10. The method of claim 9, further comprising the step of resetting the identifier value in the allocated table when the determined identifier value for a primary encrypted packet is at least one of changed in, added to, or removed from the primary encrypted stream.
11. The method of claim 9, further comprising the steps of:
continuously monitoring and discovering the identifier values of the primary encrypted stream;
resetting the identifier value in the allocated table when the discovered identifier value for a primary encrypted packet is at least one of changed in, added to, or removed from the primary encrypted stream;
identifying the discovered identifier value conflicts with an secondary assigned identifier value in a secondary packet; and changing the assigned secondary identifier value to an updated assigned identifier value not present in the allocated table.
12. The method of claim 9, further comprising the step of mapping the assigned secondary identifier value to one of a PAT and a PMT, wherein the PAT and the PMT are transmitted along with the combined overlay stream.
13. The method of claim 12, further comprising the steps of:
continuously monitoring the primary encrypted stream for changed identifier values in an updated primary encrypted stream;
detecting a change in an identifier value of the updated primary encrypted stream;
determining the changed identifier value conflicts with an equal identifier value of the secondary encrypted stream;
remapping the changed identifier of the secondary encrypted stream in one of the PAT
and the PMT; and changing the conflicting identifier value of the secondary encrypted packet to an available unused identifier value not found in one of the updated primary and secondary encrypted stream.
14. The method of claim 13, further comprising the steps of:
blocking the transmission of the updated primary and secondary encrypted streams; and transmitting the remapped PAT and the PMT.
15. A communications system for transmitting a multi-encrypted transport stream, the multi-encrypted transport stream including a primary stream, a secondary stream and a clear stream, each of the streams including a plurality of programs each having a program number and a plurality of packets each having a packet identifier, the communications system comprising:
a device for dynamically allocating program numbers and packet identifiers to secondary packets comprised in the secondary stream depending upon program numbers and packets identifiers present in the primary stream, the device comprising:
monitoring means for monitoring and detecting the program numbers and packet identifiers present in the primary stream; and processing means for assigning available program numbers and available packet identifiers to the secondary packets, wherein the monitoring means continuously monitors the primary stream for any changes in program number and packet identifiers, and when changes occur, the processing means checks for conflicts and subsequently assigns the packet having a conflicting program number or a conflicting packet identifier to one of an available program number and packet identifier.
16. The communications system of claim 15, wherein the device transmits an initial PAT and PMTs including the program numbers and packet identifiers, respectively, that allow a plurality of secondary receiving devices to correctly accept the secondary stream, and wherein in the event of a dynamic primary stream reassignment, the device transmits at least one of a revised PAT and PMTs depending upon the detected conflict.
17. The communications system of claim 16, wherein in the event of a conflict, the device blocks transmission of the primary stream and the secondary stream until the conflicting secondary stream reassignment is complete and the revised PAT and the PMTs reflecting the reassignment are transmitted to the primary and secondary receiving devices.
18. The communications system of claim 15, wherein the monitoring means comprises a processor for assigning a bit value to an unavailable table corresponding to a program number value and a packet identifier value when present in the primary stream.
19. The communications system of claim 18, wherein the processing means subsequently assigns an available one of a program number and a packet identifier in the secondary stream.
20. The communications system of claim 19, wherein the processing means detects a released packet identifier value that was previously in use by the primary stream and stores the released packet identifier value in a buffer to delay its availability.
CA2652123A 2006-05-15 2007-05-09 System and method for dynamically allocating stream identifiers in a multi-encryption transport system Expired - Fee Related CA2652123C (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/383,375 2006-05-15
US11/383,375 US7983417B2 (en) 2006-05-15 2006-05-15 System and method for dynamically allocating stream identifiers in a multi-encryption transport system
PCT/US2007/068532 WO2007134089A2 (en) 2006-05-15 2007-05-09 System and method for dynamically allocating stream identifiers in a multi-encryption transport system

Publications (2)

Publication Number Publication Date
CA2652123A1 true CA2652123A1 (en) 2007-11-22
CA2652123C CA2652123C (en) 2012-05-01

Family

ID=38596034

Family Applications (1)

Application Number Title Priority Date Filing Date
CA2652123A Expired - Fee Related CA2652123C (en) 2006-05-15 2007-05-09 System and method for dynamically allocating stream identifiers in a multi-encryption transport system

Country Status (6)

Country Link
US (1) US7983417B2 (en)
EP (1) EP2077036B1 (en)
JP (1) JP5107346B2 (en)
BR (1) BRPI0711827B1 (en)
CA (1) CA2652123C (en)
WO (1) WO2007134089A2 (en)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8275132B2 (en) * 2006-05-15 2012-09-25 Buchen Neil B System and method for dynamically allocating stream identifiers in a multi-encryption transport system
JP5230112B2 (en) * 2007-03-01 2013-07-10 キヤノン株式会社 Information distribution apparatus, information distribution method, and information distribution program
US8595493B2 (en) * 2010-04-13 2013-11-26 Microsoft Corporation Multi-phase storage volume transformation
US9008308B2 (en) * 2012-02-08 2015-04-14 Vixs Systems, Inc Container agnostic decryption device and methods for use therewith
EP2680595A1 (en) * 2012-06-25 2014-01-01 ITE Tech. Inc Apparatus and method thereof for multiplexing transport streams to a transport stream
EP2899941B1 (en) * 2014-01-23 2020-06-03 ABB Schweiz AG Method for processing data streams with multiple tenants
US10228751B2 (en) 2014-08-06 2019-03-12 Apple Inc. Low power mode
US9647489B2 (en) 2014-08-26 2017-05-09 Apple Inc. Brownout avoidance
US10708391B1 (en) 2014-09-30 2020-07-07 Apple Inc. Delivery of apps in a media stream
US10231033B1 (en) 2014-09-30 2019-03-12 Apple Inc. Synchronizing out-of-band content with a media stream
US11363133B1 (en) 2017-12-20 2022-06-14 Apple Inc. Battery health-based power management
US10817307B1 (en) 2017-12-20 2020-10-27 Apple Inc. API behavior modification based on power source health
KR102188270B1 (en) * 2018-07-06 2020-12-09 엘지전자 주식회사 Method for processing 360-degree video data based on sub-picture and apparatus for the same
US10743041B1 (en) 2019-01-31 2020-08-11 DISH Technologies L.L.C. Systems and methods for facilitating adaptive content splicing
US11638049B2 (en) 2019-10-16 2023-04-25 Dish Network L.L.C. Systems and methods for content item recognition and adaptive packet transmission
US11303943B2 (en) * 2019-10-16 2022-04-12 Dish Network L.L.C. Systems and methods for facilitating adaptive content items for delivery in a packet stream
US10880351B1 (en) 2019-10-16 2020-12-29 Dish Network L.L.C. Systems and methods for adapting content items to endpoint media devices
US11218525B2 (en) 2020-01-21 2022-01-04 Dish Network L.L.C. Systems and methods for adapting content delivery based on endpoint communications
US11245946B2 (en) 2020-01-21 2022-02-08 Dish Network L.L.C. Systems and methods for adapting content items to secured endpoint media device data
US11012737B1 (en) 2020-04-27 2021-05-18 Dish Network L.L.C. Systems and methods for audio adaptation of content items to endpoint media devices

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7224798B2 (en) 1995-04-03 2007-05-29 Scientific-Atlanta, Inc. Methods and apparatus for providing a partial dual-encrypted stream in a conditional access overlay system
US20040136532A1 (en) 1995-04-03 2004-07-15 Pinder Howard G. Partial dual-encrypted stream utilizing program map tables
US5864358A (en) * 1995-06-26 1999-01-26 Matsushita Electric Industrial Co., Ltd. Method for switching programs in digital broadcasting and digital broadcast receiving apparatus
US7113523B1 (en) * 1997-06-11 2006-09-26 Sony Corporation Data multiplexing device, program distribution system, program transmission system, pay broadcast system, program transmission method, conditional access system, and data reception device
DE60019174T2 (en) * 1999-08-06 2005-08-11 Matsushita Electric Industrial Co., Ltd., Kadoma Data transmission method, apparatus and data receiving apparatus
US7649901B2 (en) * 2000-02-08 2010-01-19 Mips Technologies, Inc. Method and apparatus for optimizing selection of available contexts for packet processing in multi-stream packet processing
US7146008B1 (en) * 2000-06-16 2006-12-05 Intel California Conditional access television sound
US7124303B2 (en) * 2001-06-06 2006-10-17 Sony Corporation Elementary stream partial encryption
KR100952800B1 (en) 2002-01-02 2010-04-14 소니 일렉트로닉스 인코포레이티드 Partial encryption and pid mapping
US7218738B2 (en) * 2002-01-02 2007-05-15 Sony Corporation Encryption and content control in a digital broadcast system
US7310423B2 (en) * 2003-04-24 2007-12-18 General Instrument Corporation Processing multiple encrypted transport streams
US7661120B2 (en) 2003-11-26 2010-02-09 Wegener Communications, Inc. Automated transport stream apparatus and method
US8275132B2 (en) 2006-05-15 2012-09-25 Buchen Neil B System and method for dynamically allocating stream identifiers in a multi-encryption transport system

Also Published As

Publication number Publication date
EP2077036A2 (en) 2009-07-08
CA2652123C (en) 2012-05-01
WO2007134089A3 (en) 2008-01-10
US7983417B2 (en) 2011-07-19
JP2009538052A (en) 2009-10-29
WO2007134089A2 (en) 2007-11-22
EP2077036B1 (en) 2016-08-24
US20070263860A1 (en) 2007-11-15
BRPI0711827B1 (en) 2020-03-24
BRPI0711827A2 (en) 2012-01-17
JP5107346B2 (en) 2012-12-26

Similar Documents

Publication Publication Date Title
CA2652123A1 (en) System and method for dynamically allocating stream identifiers in a multi-encryption transport system
US20150195260A1 (en) System and Method for Dynamically Allocating Stream Identifiers in a Multi-Encryption Transport System
KR101749261B1 (en) Hybrid networking system with seamless path switching of streams
US7801046B2 (en) Method and system for bandwidth control on a network interface card
KR101458391B1 (en) Method and apparatus for transmitting/receiving multiplexed packet stream over single transmission channel
AU2002315983A1 (en) Apparatus and method for resource allocation
KR100875739B1 (en) Apparatus and method for packet buffer management in IP network system
WO2009027300A3 (en) Allocating network adapter resources among logical partitions
US20160117148A1 (en) Data transmitter apparatus and method for data communication using the same
US20170317951A1 (en) Method of dynamically renumbering ports and an apparatus thereof
JP2008181387A (en) I/o bus system and its management method
KR101328627B1 (en) Packet handler device and packet handling method thereof
CN106982169B (en) Message forwarding method and device
JP4634225B2 (en) Base station apparatus, communication speed reduction preventing method, and program
JP5742424B2 (en) COMMUNICATION DEVICE AND METHOD, AND CONTROL DEVICE
KR101214794B1 (en) Traffic distribution method and sysem using hash algorithm and dynamic connection allocation
US7830887B2 (en) Method and apparatus for direct memory access based on class-of-service
KR20020053993A (en) Call Control and Traffic Channel Assignment Method in Mobile Communication System
CN109644346B (en) Method, source device and power node for distributed dynamic spectrum allocation
KR102345929B1 (en) Methods of handling different protocol data unit types in device to device communication sysytem
WO2020016990A1 (en) Screen generation device and screen generation method
KR20110095123A (en) System and method that allocate channel of multi traffic stream
KR101271482B1 (en) Energy efficency traffic control mechanism in wmsn
JP2007243436A (en) Transmission apparatus, transmitter-receiver, and transmission reception system for packet
CA2531813A1 (en) A scalable approach to large scale queuing through dynamic resource allocation

Legal Events

Date Code Title Description
EEER Examination request
MKLA Lapsed

Effective date: 20180509