System and method for transparently processing multimedia data
First Claim
1. A client system for transparently processing multimedia data, comprising:
- a data source device for providing multimedia data;
a data sink device for receiving the multimedia data;
a process creation monitor for detecting a plurality of processes created by the client system;
a user mode injection service for injecting with at least one hook at least one process detected wherein hooks are inserted for only a subset of service calls of said process; and
a user mode processing layer on the data sink device to which the at least one hook redirects the multimedia data,wherein the process creation monitor is configured to notify the user mode injection service for each detected process, and the multimedia data is transparently processed before it reaches the data sink,wherein the multimedia data that is processed includes audio data and video data, andwherein said user mode injection service hot patches software in memory of the client system.
1 Assignment
0 Petitions
Accused Products
Abstract
A multimedia data processing system and method which transparently processes video and/or audio streams in real-time. The operation of a system in accordance with an embodiment of the present invention does not require any intervention from, or involvement of, either the producer of the video and/or audio stream, or the client application. With such a transparent solution, video and/or audio streams can be processed seamlessly, and completely independently of the specific client application that the user chooses to use. In one embodiment, the invention uses an external service to monitor new processes and add code to these processes. The invention inserts into the system by hot-patching the software in memory and by only looking at select service calls.
-
Citations
34 Claims
-
1. A client system for transparently processing multimedia data, comprising:
-
a data source device for providing multimedia data;
a data sink device for receiving the multimedia data;
a process creation monitor for detecting a plurality of processes created by the client system;a user mode injection service for injecting with at least one hook at least one process detected wherein hooks are inserted for only a subset of service calls of said process; and a user mode processing layer on the data sink device to which the at least one hook redirects the multimedia data, wherein the process creation monitor is configured to notify the user mode injection service for each detected process, and the multimedia data is transparently processed before it reaches the data sink, wherein the multimedia data that is processed includes audio data and video data, and wherein said user mode injection service hot patches software in memory of the client system. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 25)
-
-
16. A method for processing multimedia data, wherein the multimedia data is provided by a data source, and the multimedia data is received by a data sink, where the processing is transparent to both the data source and the data sink, the method comprising:
-
detecting a plurality of processes created in a client system; notifying a user mode injection service of each of the plurality of detected processes; injecting, in user mode, at least one hook into a selected process; inserting said hooks for only a subset of service calls of said selected process; routing, via the at least one hook, the multimedia data under control of the process to a processing layer; processing the routed multimedia data in the processing layer in user mode; and providing the processed multimedia data to the data sink, wherein the multimedia data that is processed includes audio data and video data, and wherein said injecting includes providing hot patches to software in memory of the client system. - View Dependent Claims (17, 18, 19, 20, 21, 22, 23, 24, 26, 27, 28)
-
-
29. A method for processing multimedia data comprising:
-
detecting a plurality of processes created in a host system; notifying a user mode injection service of each of the plurality of detected processes; injecting, in user mode, at least one hook into a selected process, wherein hooks are inserted for only a subset of service calls of said process; routing, via the at least one hook, multimedia data under control of the process to a processing layer; processing, in user mode, the routed multimedia data in the processing layer to perform one or more special effects; and providing the processed multimedia data to a data sink, wherein the multimedia data that is processed includes audio data and video data, and wherein said injecting includes hot patching software in memory of the host system. - View Dependent Claims (30, 31, 32, 33)
-
-
34. A client system for transparently processing multimedia data, comprising:
-
a data source device for providing multimedia data; a data sink device for receiving the multimedia data; a process creation monitor for detecting a plurality of processes created by the client system; a user mode injection service for injecting with at least one hook at least one process detected wherein hooks are inserted for only a subset of service calls of said process; and a user mode processing layer on the data sink device to process the multimedia data which the at least one hook redirects processed multimedia data, wherein the process creation monitor is configured to notify the user mode injection service for each detected process, and the multimedia data is transparently processed before it reaches the data sink, wherein the multimedia data that is processed includes video data and audio data, and wherein said user mode injection service hot patches software in memory of the client system.
-
Specification