Patent ID: 7697026

Claim:
A method of processing video data that represents one or more video streams, the method comprising: at a first stage of a multiple stage pipeline, providing a first application programming interface (API) through which one or more first analyzers are allowed to perform a first set of real-time analysis operations on the video data; based on the first set of real-time analysis operations, filtering the video data to produce filtered video data, wherein the filtered video data contains a subset of the video data; and at a second stage of the multiple stage pipeline, providing a second API through which one or more second analyzers are allowed to perform a second set of analysis operations on the filtered video data; wherein the second set of analysis operations are more complex than the first set of analysis operations; wherein the one or more first analyzers are one or more first analysis applications that are external to the multiple stage pipeline and are plugged into the first stage of the multiple stage pipeline via the first API; wherein the one or more second analyzers are one or more second analysis applications that are external to the multiple stage pipeline and are plugged into the second stage of the multiple stage pipeline via the second API.