IP Library Granted Patent US 9,936,002
Granted Patent B2
US 9,936,002 · App. 14/186,917 · Granted Apr 3, 2018

Video compose function

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,936,002
App. No.
14/186,917
Granted
Apr 3, 2018
Kind
B2
Abstract

In particular embodiments, a method includes receiving from an application a first graphics device interface (GDI) call and adding the first GDI call to a list of events. The method further includes receiving from the application one or more second GDI calls, wherein each of the second GDI calls is related to the first GDI call and adding the second GDI calls to the list of events. The method further includes receiving from the application a third GDI call, wherein the third GDI call is not related to the first GDI call, and performing a call to a GDI system, the call including the list of events.

Claims (56)

1. A method comprising, by a computing device:

intercepting, by an intermediate function, from an application a first graphics device interface (GDI) call after a painting function and before a rendering function;

adding the first GDI call to a list of events, wherein each event comprises regionally related graphics data for re-creation;

intercepting, by the intermediate function, from the application one or more second GDI calls, wherein each of the second GDI calls is related at least as to a region to the first GDI call;

adding the second GDI calls to the list of events;

intercepting, by the intermediate function, from the application a third GDI call, wherein the third GDI call is not related to the first GDI call, wherein intercepting the first GDI call, the one or more second GDI calls and the third GDI call prevents the application from directly accessing a GDI system;

performing a call to the GDI system once the region is fully defined, the call comprising the list of events, wherein the call to the GDI system comprises a single system GDI event; and

render to a display data associated with at least one event of the list of events.

2. The method of claim 1 , wherein:

the first GDI call specifies a first region of a first area to be modified,

the one or more second GDI calls each comprise graphics data related to the first region, and

the third GDI call specifies a second region of a second area to be modified, wherein the second region is not related to the first region.

3. The method of claim 1 , wherein the data is rendered to the display after a period of time has passed since receiving the last of the second GDI calls.

4. The method of claim 1 , wherein the third GDI call is added to the list of events after the call to the GDI system is performed.

5. The method of claim 2 , further comprising:

resetting the GDI system.

6. The method of claim 1 , wherein the method is performed by a component of a generic transcoding service.

7. The method of claim 1 , wherein the GDI calls are received from an HTTP-compatible client.

8. A system comprising:

one or more processors; and

a memory coupled to the processors comprising instructions executable by the processors, the processors being operable when executing the instructions to:

intercept, by an intermediate function, from an application a first graphics device interface (GDI) call after a painting function and before a rendering function;

add the first GDI call to a list of events, wherein each event comprises regionally related graphics data for re-creation;

intercept, by the intermediate function, from the application one or more second GDI calls, wherein each of the second GDI calls is related at least as to a region to the first GDI call;

add the second GDI calls to the list of events;

intercept, by the intermediate function, from the application a third GDI call,

wherein the third GDI call is not related to the first GDI call, wherein intercepting the first GDI call, the one or more second GDI calls and the third GDI call prevents the application from directly accessing a GDI system;

perform a call to the GDI system once the region is fully defined, the call comprising the list of events, wherein the call to the GDI system comprises a single system GDI event; and

render to a display data associated with at least one event of the list of events.

9. The system of claim 8 , wherein:

the first GDI call specifies a first region of a first area to be modified,

the one or more second GDI calls each comprise graphics data related to the first region, and

the third GDI call specifies a second region of a second area to be modified, wherein the second region is not related to the first region.

10. The system of claim 8 , wherein the data is rendered to the display after a period of time has passed since receiving the last of the second GDI calls.

11. The system of claim 8 , wherein the third GDI call is added to the list of events after the call to the GDI system is performed.

12. The system of claim 9 , the processors further operable when executing the instructions to:

reset the GDI system.

13. The system of claim 8 , wherein the system comprises a component of a generic transcoding service.

14. The system of claim 8 , wherein the GDI calls are received from an HTTP-compatible client.

15. One or more computer-readable non-transitory storage media embodying software that is operable when executed to:

intercept, by an intermediate function, from an application a first graphics device interface (GDI) call after a painting function and before a rendering function;

add the first GDI call to a list of events, wherein each event comprises regionally related graphics data for re-creation;

intercept, by the intermediate function, from the application one or more second GDI calls, wherein each of the second GDI calls is related at least as to a region to the first GDI call;

add the second GDI calls to the list of events;

intercept, by the intermediate function, from the application a third GDI call, wherein the third GDI call is not related to the first GDI call, wherein intercepting the first GDI call, the one or more second GDI calls and the third GDI call prevents the application from directly accessing a GDI system;

perform a call to the GDI system once the region is fully defined, the call comprising the list of events, wherein the call to the GDI system comprises a single system GDI event; and

render to a display data associated with at least one event of the list of events.

16. The media of claim 15 , wherein:

the first GDI call specifies a first region of a first area to be modified,

the one or more second GDI calls each comprise graphics data related to the first region, and

the third GDI call specifies a second region of a second area to be modified, wherein the second region is not related to the first region.

17. The media of claim 15 , wherein the data is rendered to the display after a period of time has passed since receiving the last of the second GDI calls.

18. The media of claim 15 , wherein the third GDI call is added to the list of events after the call to the GDI system is performed.

19. The media of claim 16 , the software further operable when executed to:

reset the GDI system.

20. The media of claim 15 , wherein the system comprises a component of a generic transcoding service.

Assignments (15)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (045455/0001) Recorded May 20, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061753/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040136/0001) Recorded Apr 26, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061324/0001 →
RELEASE OF SECURITY INTEREST Recorded Nov 3, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL USA L.P.; ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL INTERNATIONAL, L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; WYSE TECHNOLOGY L.L.C.
Reel/Frame 058216/0001 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
SECURITY AGREEMENT Recorded Mar 21, 2019
From: CREDANT TECHNOLOGIES, INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 049452/0223 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040134/0001 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 040136/0001 →
RELEASE OF REEL 032809 FRAME 0987 (NOTE) Recorded Sep 14, 2016
From: BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: DELL SOFTWARE INC.; DELL PRODUCTS L.P.; SECUREWORKS, INC.
Reel/Frame 040026/0953 →
RELEASE OF REEL 032810 FRAME 0038 (TL) Recorded Sep 14, 2016
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: DELL SOFTWARE INC.; DELL PRODUCTS L.P.; SECUREWORKS, INC.
Reel/Frame 040027/0686 →
RELEASE OF REEL 032810 FRAME 0023 (ABL) Recorded Sep 13, 2016
From: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
To: DELL SOFTWARE INC.; DELL PRODUCTS L.P.; SECUREWORKS, INC.
Reel/Frame 040014/0320 →
SUPPLEMENT TO PATENT SECURITY AGREEMENT (NOTES) Recorded May 1, 2014
From: DELL PRODUCTS L.P.; DELL SOFTWARE INC.; SECUREWORKS, INC.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 032809/0987 →
SUPPLEMENT TO PATENT SECURITY AGREEMENT (TERM LOAN) Recorded May 1, 2014
From: DELL PRODUCTS L.P.; DELL SOFTWARE INC.; SECUREWORKS, INC.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 032810/0038 →
SUPPLEMENT TO PATENT SECURITY AGREEMENT (ABL) Recorded May 1, 2014
From: DELL PRODUCTS L.P.; DELL SOFTWARE INC.; SECUREWORKS, INC.
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 032810/0023 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 21, 2014
From: FAUSAK, ANDREW T.; ROMBAKH, OLEG
To: DELL PRODUCTS L.P.
Reel/Frame 032273/0675 →