IP Library Granted Patent US 9,161,030
Granted Patent B1
US 9,161,030 · App. 13/900,027 · Granted Oct 13, 2015

Graphics overlay system for multiple displays using compressed video

Inventors: Anthony D. Masterson (Saratoga, CA); Amir M. Mobini (San Francisco, CA)
Assignee: FREESCALE SEMICONDUCTOR, INC.
H04N19/00012
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 9,161,030
App. No.
13/900,027
Granted
Oct 13, 2015
Kind
B1
Abstract

Systems and methods for providing compressed video with layered graphics to at least one screen are described herein. An On Screen Display (OSD) system receives a command from a remote set top box coupled to a screen. The command instructs the OSD system to process the input video stream according to various processing functions including layering at least one graphics plane on top of the video stream. The OSD system processes the input video stream to generate an output video stream with the layered graphics planes and outputs, in a compressed format, the output video stream to the screen. The system advantageously provides a central OSD processing unit that can output video with layered graphics in a compressed format to multiple displays.

Claims (88)

1. A method for providing compressed video with layered graphics to at least one computing device, the method comprising:

receiving a first input video stream having a first input resolution;

receiving a first command from a first remote computing device, the first command including information identifying the first remote computing device as being a source of the first command;

obtaining information identifying a first target resolution associated with the first remote computing device and information identifying a first overlay graphic associated with the first command;

generating, by a video processing device, a first scaled and layered output video stream based on the first input video stream, the first scaled and layered output video stream comprising the first overlay graphic overlaid on the first input video stream, and the first scaled and layered output video stream having a resolution adjusted from the first input resolution to match the first target resolution associated with the first remote computing device identified in the first command;

compressing the first scaled and layered output video stream to generate a first compressed output video stream for transmission to the first remote computing device identified in the first command.

2. The method of claim 1 , wherein generating the first scaled and layered output video stream comprises:

overlaying the first overlay graphic on the first input video stream to generate an overlaid video stream; and

scaling the overlaid video stream to generate the first scaled and layered output video stream having the first target resolution associated with the first remote computing device identified in the first command.

3. The method of claim 1 , wherein generating the first scaled and layered output video stream comprises:

scaling the first input video stream to generate a scaled input video stream having the resolution matching the first target resolution associated with the first remote computing device identified in the first command; and

overlaying the first overlay graphic on the scaled input video stream to generate the first scaled and layered output video stream.

4. The method of claim 1 , further comprising:

receiving a second input video stream;

receiving a second command from a second remote computing device, the second command including information identifying the second computing device as being a source of the second command;

obtaining information identifying a second overlay graphic associated with the second command;

overlaying the second overlay graphic on the second input video stream to generate a second output video stream;

compressing the second output video stream to generate a second compressed output video stream for transmission to the second remote computing device identified in the second command.

5. The method of claim 1 , further comprising:

receiving a second input video stream having a second input resolution;

receiving a second command from a second remote computing device, the second command including information identifying the second computing device as being a source of the second command;

obtaining information identifying a second target resolution associated with the second remote computing device identified in the second command, where the second target resolution associated with the second remote computing device is different than the first target resolution associated with the first remote computing device;

scaling the second input video stream to generate an second output video stream having the resolution matching the second target resolution;

compressing the second output video stream to generate a second compressed output video stream for transmission to the second remote computing device identified in the second command.

6. The method of claim 1 , further comprising:

receiving a third command from the first remote computing device, the third command different than the first command;

obtaining information identifying a third overlay graphic associated with the third command, the third overlay graphic different than the first overlay graphic;

overlaying the third overlay graphic on the first input video stream.

7. The method of claim 1 , wherein the first overlay graphic comprises at least one of a setup menu, alert, program information, or watermark.

8. A non-transitory computer-readable storage medium for providing compressed video with layered graphics to at least one computing device, the non-transitory computer-readable storage medium storing computer executable instructions that when executed by a processor cause the processor to perform steps including:

receiving a first input video stream having a first input resolution;

receiving a first command from a first remote computing device, the first command including information identifying the first remote computing device as being a source of the first command;

obtaining information identifying a first target resolution associated with the first remote computing device and information identifying a first overlay graphic associated with the first command;

generating a first scaled and layered output video stream based on the first input video stream, the first scaled and layered output video stream comprising the first overlay graphic overlaid on the first input video stream, and the first scaled and layered output video stream having a resolution adjusted from the first input resolution to match the first target resolution associated with the first remote computing device identified in the first command;

compressing the first scaled and layered output video stream to generate a first compressed output video stream for transmission to the first remote computing device identified in the first command.

9. The non-transitory computer-readable storage medium of claim 8 , wherein generating the first scaled and layered output video stream comprises:

overlaying the first overlay graphic on the first input video stream to generate an overlaid video stream; and

scaling the overlaid video stream to generate the first scaled and layered output video stream having the first target resolution associated with the first remote computing device identified in the first command.

10. The non-transitory computer-readable storage medium of claim 8 , wherein generating the first scaled and layered output video stream comprises:

scaling the first input video stream to generate a scaled input video stream having the resolution matching the first target resolution associated with the first remote computing device identified in the first command; and

overlaying the first overlay graphic on the scaled input video stream to generate the first scaled and layered output video stream.

11. The non-transitory computer-readable storage medium of claim 8 , wherein the instructions when executed further cause the processor to perform steps including:

receiving a second input video stream;

receiving a second command from a second remote computing device, the second command including information identifying the second computing device as being a source of the second command;

obtaining information identifying a second overlay graphic associated with the second command;

overlaying the second overlay graphic on the second input video stream to generate a second output video stream;

compressing the second output video stream to generate a second compressed output video stream for transmission to the second remote computing device identified in the second command.

12. The non-transitory computer-readable storage medium of claim 8 , wherein the instructions when executed further cause the processor to perform steps including:

receiving a second input video stream having a second input resolution;

receiving a second command from a second remote computing device, the second command including information identifying the second computing device as being a source of the second command;

obtaining information identifying a second target resolution associated with the second remote computing device identified in the second command, where the second target resolution associated with the second remote computing device is different than the first target resolution associated with the first remote computing device;

scaling the second input video stream to generate an second output video stream having the resolution matching the second target resolution;

compressing the second output video stream to generate a second compressed output video stream for transmission to the second remote computing device identified in the second command.

13. The non-transitory computer-readable storage medium of claim 8 , wherein the instructions when executed further cause the processor to perform steps including:

receiving a third command from the first remote computing device, the third command different than the first command;

obtaining information identifying a third overlay graphic associated with the third command, the third overlay graphic different than the first overlay graphic;

overlaying the third overlay graphic on the first input video stream.

14. The non-transitory computer-readable storage medium of claim 8 , wherein the first overlay graphic comprises at least one of a setup menu, alert, program information, or watermark.

15. A video processing device for providing compressed video with layered graphics to at least one computing device comprising:

a processor; and

a non-transitory computer-readable storage medium, the non-transitory computer-readable storage medium storing computer executable instructions that when executed by the processor cause the processor to perform steps including:

receiving a first input video stream having a first input resolution;

receiving a first command from a first remote computing device, the first command including information identifying the first remote computing device as being a source of the first command;

obtaining information identifying a first target resolution associated with the first remote computing device and information identifying a first overlay graphic associated with the first command;

generating a first scaled and layered output video stream based on the first input video stream, the first scaled and layered output video stream comprising the first overlay graphic overlaid on the first input video stream, and the first scaled and layered output video stream having a resolution adjusted from the first input resolution to match the first target resolution associated with the first remote computing device identified in the first command;

compressing the first scaled and layered output video stream to generate a first compressed output video stream for transmission to the first remote computing device identified in the first command.

16. The video processing device of claim 15 , wherein generating the first scaled and layered output video stream comprises:

overlaying the first overlay graphic on the first input video stream to generate an overlaid video stream; and

scaling the overlaid video stream to generate the first scaled and layered output video stream having the first target resolution associated with the first remote computing device identified in the first command.

17. The video processing device of claim 15 , wherein generating the first scaled and layered output video stream comprises:

scaling the first input video stream to generate a scaled input video stream having the resolution matching the first target resolution associated with the first remote computing device identified in the first command; and

overlaying the first overlay graphic on the scaled input video stream to generate the first scaled and layered output video stream.

18. The video processing device of claim 15 , wherein the instructions when executed further cause the processor to perform steps including:

receiving a second input video stream;

receiving a second command from a second remote computing device, the second command including information identifying the second computing device as being a source of the second command;

obtaining information identifying a second overlay graphic associated with the second command;

overlaying the second overlay graphic on the second input video stream to generate a second output video stream;

compressing the second output video stream to generate a second compressed output video stream for transmission to the second remote computing device identified in the second command.

19. The video processing device of claim 15 , wherein the instructions when executed further cause the processor to perform steps including:

receiving a second input video stream having a second input resolution;

receiving a second command from a second remote computing device, the second command including information identifying the second computing device as being a source of the second command;

obtaining information identifying a second target resolution associated with the second remote computing device identified in the second command, where the second target resolution associated with the second remote computing device is different than the first target resolution associated with the first remote computing device;

scaling the second input video stream to generate an second output video stream having the resolution matching the second target resolution;

compressing the second output video stream to generate a second compressed output video stream for transmission to the second remote computing device identified in the second command.

20. The video processing device of claim 15 , wherein the instructions when executed further cause the processor to perform steps including:

receiving a third command from the first remote computing device, the third command different than the first command;

obtaining information identifying a third overlay graphic associated with the third command, the third overlay graphic different than the first overlay graphic;

overlaying the third overlay graphic on the first input video stream.

Assignments (6)
RELEASE OF SECURITY INTEREST Recorded Sep 10, 2019
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP B.V.
Reel/Frame 050744/0097 →
CORRECTIVE ASSIGNMENT TO CORRECT THE NATURE OF CONVEYANCE LISTED CHANGE OF NAME SHOULD BE MERGER AND CHANGE PREVIOUSLY RECORDED AT REEL: 040652 FRAME: 0180. ASSIGNOR(S) HEREBY CONFIRMS THE MERGER AND CHANGE OF NAME. Recorded Jan 12, 2017
From: FREESCALE SEMICONDUCTOR INC.
To: NXP USA, INC.
Reel/Frame 041354/0148 →
CHANGE OF NAME Recorded Nov 8, 2016
From: FREESCALE SEMICONDUCTOR INC.
To: NXP USA, INC.
Reel/Frame 040652/0180 →
SUPPLEMENT TO THE SECURITY AGREEMENT Recorded Jun 16, 2016
From: FREESCALE SEMICONDUCTOR, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 039138/0001 →
CHANGE OF NAME Recorded Jan 27, 2015
From: ZENVERGE, INC.
To: ZENVERGE, LLC
Reel/Frame 034817/0375 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 15, 2015
From: ZENVERGE LLC
To: FREESCALE SEMICONDUCTOR INC.
Reel/Frame 034766/0476 →
Continuity (1)
Continuation 11851924 · Sep 7, 2009