IP Library Granted Patent US 8,994,241
Granted Patent B2
US 8,994,241 · App. 13/729,652 · Granted Mar 31, 2015

Real time composition of a composite window from content maintaining unique security domains

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,994,241
App. No.
13/729,652
Granted
Mar 31, 2015
Kind
B2
Abstract

In general, in one aspect, a multi-content composition pipeline encrypts protected video streams that may be utilized as part of a composite window using different encryption keys so that each encrypted video stream has a unique security domain. The protected video streams may be received as encrypted and compressed video streams that are decrypted and decoded (decompressed) and then the decompressed video streams may be encrypted. The encryption keys used to encrypt the decompressed video stream may be related to the encryption keys used to decrypt the corresponding encrypted compressed video stream. The encrypted decompressed video streams are stored in memory until they are needed for generating the composite window at which point they are read from memory and decrypted. The composite window is generated from the decrypted uncompressed video streams and possibly other content in real time and thus is not stored in memory prior to transmission to a display.

Claims (75)

1. A method comprising:

receiving a plurality of encrypted compressed video streams;

decrypting the plurality of encrypted compressed video streams to generate a plurality of decrypted compressed video streams, wherein a unique encryption key is utilized to decrypt each of the plurality of encrypted compressed video streams;

decoding the plurality of decrypted compressed video streams to generate a plurality of decompressed video streams;

encrypting the plurality of decompressed video streams to generate a plurality of encrypted video streams, wherein a unique encryption key is utilized to encrypt each of the plurality of decompressed video streams so that each of the plurality of encrypted video streams has a unique security domain;

storing the plurality of encrypted video streams in memory;

retrieving at least one of the plurality of encrypted video streams from the memory to be presented in a composite window, wherein the composite window includes a plurality of content displayed together in some fashion;

decrypting the at least one of the plurality of encrypted video streams to generate at least one decrypted video stream; and

generating the composite window to include the at least one decrypted video stream.

2. The method of claim 1 , wherein the unique encryption keys utilized to encrypt the plurality of decompressed video streams are the unique encryption keys utilized to decrypt corresponding ones of the plurality of encrypted compressed video streams.

3. The method of claim 1 , wherein the unique encryption keys utilized to encrypt the plurality of decompressed video streams are derivatives of the unique encryption keys utilized to decrypt the corresponding ones of the plurality of encrypted compressed video streams.

4. The method of claim 1 , wherein the composite window is not stored in memory.

5. The method of claim 1 , further comprising transmitting the composite window to a display for presentation.

6. The method of claim 1 , further comprising

encrypting the composite window; and

transmitting the encrypted composite window to a display for presentation.

7. The method of claim 1 , wherein the generating the composite window includes generating the composite window from the at least the one decrypted video stream and other content.

8. The method of claim 7 , wherein the other content includes graphics.

9. The method of claim 7 , wherein the other content includes at least one non-protected video stream.

10. A multi-content composition pipeline comprising:

a media engine to

decrypt a plurality of encrypted compressed video streams received to generate a plurality of decrypted compressed video streams, wherein a unique encryption key is utilized to decrypt each of the plurality of encrypted compressed video streams,

decode the plurality of decrypted compressed video streams to generate a plurality of uncompressed video streams, and

encrypt the plurality of uncompressed video streams to generate a plurality of encrypted uncompressed video streams, wherein a unique encryption key is utilized to encrypt each of the plurality of uncompressed video streams so that each of the plurality of encrypted uncompressed video streams has a unique security domain;

memory to store the plurality of encrypted uncompressed video streams; and

a display engine to

retrieve at least one of the plurality of encrypted uncompressed video streams from the memory to be presented in a composite window, wherein the composite window includes a plurality of content displayed together in some fashion,

decrypt the at least one of the plurality of encrypted uncompressed video streams to generate at least one decrypted uncompressed video stream, and

generate the composite window to include the at least one decrypted uncompressed video stream.

11. The pipeline of claim 10 , wherein the unique encryption keys utilized to encrypt the plurality of uncompressed video streams are the unique encryption keys utilized to decrypt corresponding ones of the plurality of encrypted compressed video streams.

12. The pipeline of claim 10 , wherein the unique encryption keys utilized to encrypt the plurality of uncompressed video streams are derivatives of the unique encryption keys utilized to decrypt the corresponding ones of the plurality of encrypted compressed video streams.

13. The pipeline of claim 10 , wherein the media engine includes

at least one decryption engine to decrypt at least one encrypted compressed video stream;

at least one decode engine to decode at least one decrypted compressed video stream; and

at least one encryption engine to encrypt at least one uncompressed video stream.

14. The pipeline of claim 10 , wherein the display engine does not store the composite window in memory.

15. The pipeline of claim 10 , wherein the display engine is further to transmit the composite window to a display for presentation.

16. The pipeline of claim 10 , wherein the display engine is further to

encrypt the composite window; and

transmit the encrypted composite window to a display for presentation.

17. The pipeline of claim 10 , wherein the display engine includes

at least decryption engine to decrypt at least one encrypted uncompressed video stream; and

a window composition engine to generate the composite window.

18. The pipeline of claim 17 , wherein the window composition engine is to generate the composite window from at least one decrypted uncompressed video stream and other content.

19. The pipeline of claim 10 , wherein the display engine is to generate the composite window to include a plurality of windows, wherein the at least one decrypted uncompressed video stream is included in one of the plurality of windows.

20. The pipeline of claim 19 , wherein the display engine is to generate the composite window to include the plurality of windows presented on different portions of the composite window.

21. The pipeline of claim 19 , wherein the display engine is to generate the composite window to include the plurality of windows overlapping.

22. A system comprising:

a video source to provide a plurality of encrypted compressed video streams;

a host processor; and

a multi-content composition pipeline including:

a media engine to

decrypt the plurality of encrypted compressed video streams received to generate a plurality of decrypted compressed video streams, wherein a unique encryption key is utilized to decrypt each of the plurality of encrypted compressed video streams,

decode the plurality of decrypted compressed video streams to generate a plurality of uncompressed video streams, and

encrypt the plurality of uncompressed video streams to generate a plurality of encrypted uncompressed video streams, wherein a unique encryption key is utilized to encrypt each of the plurality of uncompressed video streams so that each of the plurality of encrypted uncompressed video streams has a unique security domain;

memory to store the plurality of encrypted uncompressed video streams; and

a display engine to

retrieve at least one of the plurality of encrypted uncompressed video streams from the memory to be presented in a composite window, wherein the composite window includes a plurality of content displayed together in some fashion,

decrypt the at least one encrypted uncompressed video stream, and

generate the composite window to include the at least decrypted uncompressed video stream.

23. The system of claim 22 , wherein the display engine is further to

encrypt the composite window; and

transmit the encrypted composite window to a display for presentation, wherein neither the composite window nor the encrypted composite window is stored in memory.

24. A non-transitory processor readable storage medium storing instructions, wherein when the instructions are executed by the processor they cause the processor to:

receive a plurality of encrypted compressed video streams;

decrypt the plurality of encrypted compressed video streams to generate a plurality of decrypted compressed video streams, wherein a unique encryption key is utilized to decrypt each of the plurality of encrypted compressed video streams;

decode the plurality of decrypted compressed video streams to generate a plurality of decompressed video streams;

encrypt the plurality of decompressed video streams to generate a plurality of encrypted video streams, wherein a unique encryption key is utilized to encrypt each of the plurality of decompressed video streams so that each of the plurality of encrypted video streams has a unique security domain;

store the plurality of encrypted video streams in memory;

retrieve at least one of the plurality of encrypted video streams from the memory to be presented in a composite window, wherein the composite window includes a plurality of content displayed together in some fashion;

decrypt the at least one of the plurality of encrypted video streams to generate at least one decrypted video stream; and

generate the composite window to include the at least one decrypted video stream.

25. The non-transitory processor readable storage medium of claim 24 , wherein when the instructions are executed by the processor they further cause the processor to

encrypt the composite window; and

transmit the encrypted composite window to a display for presentation.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 15, 2022
From: INTEL CORPORATION
To: TAHOE RESEARCH, LTD.
Reel/Frame 061175/0176 →