System, method and computer program product for dynamically identifying, selecting and extracting graphical and media objects in frames or scenes rendered by a software application
First Claim
1. A method for storing information about objects appearing in frames rendered by a software application while said software application is executing in a computer, comprising:
- performing by an interception component installed on said computer that is not part of said software application;
identifying objects in a frame as said frame is rendered by said software application wherein said identifying step includes intercepting function calls directed to a graphics application programming interface (API) generated by said software application;
enabling a user to browse through at least a subset of said identified objects while said objects appear in said frame by hooking at least one input device connected to said computer, said hooking comprising overriding an interpretation by said software application of user input provided via said at least one input device;
determining whether said user selected one or more of said identified objects while browsing; and
if said user selected one or more of said identified objects, then storing information pertaining to said selected object;
wherein said identifying, enabling, determining and storing steps are performed by at least one processor included in said computer.
1 Assignment
0 Petitions
Accused Products
Abstract
A technique is described herein for dynamically enhancing and measuring a software application without having to change and recompile the original application code. A system includes a staging environment that monitors the application and indexes items of graphical and/or audio information into a first database. A second database is then populated with business rules that are associated with the objects indexed. The system further includes a run-time environment that identifies items of graphics and/or audio information generated during run-time, and upon determining that an identified item is associated with a business rule, applies the business rule, measures the object and its related attributes and optionally report the data back to a third database. Also described herein are techniques for dynamically measuring attributes of objects rendered and/or referenced by software applications, for dynamically serving advertisements to a computer game, and for pre-processing software applications to identify spots desirable for advertisement placement.
87 Citations
22 Claims
-
1. A method for storing information about objects appearing in frames rendered by a software application while said software application is executing in a computer, comprising:
performing by an interception component installed on said computer that is not part of said software application; identifying objects in a frame as said frame is rendered by said software application wherein said identifying step includes intercepting function calls directed to a graphics application programming interface (API) generated by said software application; enabling a user to browse through at least a subset of said identified objects while said objects appear in said frame by hooking at least one input device connected to said computer, said hooking comprising overriding an interpretation by said software application of user input provided via said at least one input device; determining whether said user selected one or more of said identified objects while browsing; and if said user selected one or more of said identified objects, then storing information pertaining to said selected object; wherein said identifying, enabling, determining and storing steps are performed by at least one processor included in said computer. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20)
-
21. A computer system configured to store information about objects appearing in frames rendered by a software application while the software application is executing thereon, comprising:
-
a processor configured to execute computer control logic; a memory communicatively connected to the processor that stores an interception component that is not part of said software application, the interception component comprising; first computer control logic that is executed by the processor to identify objects in a frame as said frame is rendered by said software application by intercepting function calls directed to a graphics application programming interface (API) generated by said software application, second computer control logic that is executed by the processor to enable a user to browse through at least a subset of said identified objects while said identified objects appear in said frame by hooking at least one input device connected to the computer, said hooking comprising overriding an interpretation by said software application of user input provided via said at least one input device, third computer control logic that is executed by the processor to determine whether said user selected one or more of said identified objects while browsing, and fourth computer control logic that is executed by the processor to store information pertaining to said selected object if said user selected one or more of said identified objects.
-
-
22. A computer program product comprising a non-transitory computer readable storage unit having computer control logic recorded thereon for enabling a processor to store information about objects appearing in frames rendered by a software application while said software application is executing in a computer, the computer control logic, when executed by a processor, enabling the processor to perform steps comprising:
-
identifying objects in a frame as said frame is rendered by said software application by intercepting function calls directed to a graphics application programming interface (API) generated by said software application; enabling a user to browse through at least a subset of said identified objects while said objects appear in said frame by hooking at least one input device connected to the computer, said hooking comprising overriding an interpretation by said software application of user input provided via said at least one input device; determining whether said user selected one or more of said identified objects while browsing; and storing information pertaining to said selected object if said user selected one or more of said identified objects; wherein the computer control logic comprise an interception component that is not part of said software application.
-
Specification