System to dispatch video decoding to dedicated hardware resources
First Claim
Patent Images
1. A security system video monitoring workstation for processing and displaying a plurality of streams of encoded or compressed video, the workstation comprising:
- a multi-core central processing unit (CPU);
a data network interface;
a display control device comprising at least one graphics processing unit (GPU) having multiple hardware cores configured for video decoding multiple video streams;
memory storing instances of a GPU codec driver executable by said CPU and each configured to send one of said streams of encoded or compressed video to said at least one GPU with instructions to decode said one of said streams and to display said one of said streams in a predetermined tile of a display;
memory storing instances of at least one video codec program module executable by said CPU and configured to decode a format of encoded or compressed video and to send decoded video image data to said at least one GPU for scaling and output in a predetermined tile of a display;
memory storing a stream receiving and dispatching program module executable by said CPU and configured to receive said plurality of streams of encoded or compressed video from said data network interface and to selectively relay each one of said streams to either one of said GPU codec driver instances or to one of said video codec program module instances; and
memory storing a control program module executable by said CPU and configured to detect a processing error or failure of one of said GPU codec driver instances handling a given one of said streams and, in response to said error or failure, cause said stream receiving and dispatching program module to relay said given one of said streams to one of said video codec program module instances with instruction to display said given one of said streams in a same predetermined tile of said display.
1 Assignment
0 Petitions
Accused Products
Abstract
A system to perform processing operations of input (video) streams, including is disclosed. The system consists of an input module, a stream type detection engine, a plurality of processing resources a resource monitoring engine, an attribution module, a dispatching module, and various other optional interface modules.
-
Citations
9 Claims
-
1. A security system video monitoring workstation for processing and displaying a plurality of streams of encoded or compressed video, the workstation comprising:
-
a multi-core central processing unit (CPU); a data network interface; a display control device comprising at least one graphics processing unit (GPU) having multiple hardware cores configured for video decoding multiple video streams; memory storing instances of a GPU codec driver executable by said CPU and each configured to send one of said streams of encoded or compressed video to said at least one GPU with instructions to decode said one of said streams and to display said one of said streams in a predetermined tile of a display; memory storing instances of at least one video codec program module executable by said CPU and configured to decode a format of encoded or compressed video and to send decoded video image data to said at least one GPU for scaling and output in a predetermined tile of a display; memory storing a stream receiving and dispatching program module executable by said CPU and configured to receive said plurality of streams of encoded or compressed video from said data network interface and to selectively relay each one of said streams to either one of said GPU codec driver instances or to one of said video codec program module instances; and memory storing a control program module executable by said CPU and configured to detect a processing error or failure of one of said GPU codec driver instances handling a given one of said streams and, in response to said error or failure, cause said stream receiving and dispatching program module to relay said given one of said streams to one of said video codec program module instances with instruction to display said given one of said streams in a same predetermined tile of said display. - View Dependent Claims (2, 3, 4)
-
-
5. A method for processing and displaying a plurality of streams of encoded or compressed video in a security system, the method comprising:
-
receiving said plurality of streams of encoded or compressed video from a data network interface; relaying each one of said streams to either one of a plurality of graphics processing unit (GPU) codec driver instances or to one of a plurality of video codec program module instances executed in a central processing unit (CPU); displaying decoded video streams from both said plurality of GPU codec driver instances and said plurality of video codec program module instances in tiles of a display; and detecting a processing error or failure of one of said GPU codec driver instances handling a given one of said streams and, in response to said error or failure, relaying said given one of said streams to one of said video codec program module instances with instruction to display said given one of said streams in a same predetermined tile of said display. - View Dependent Claims (6, 7, 8, 9)
-
Specification