The Spy Filter is a DirectShow In-place Transform Filter. It can be placed, as a transparent filter, in between any two filters within a graph, without changing the basic characteristics of the graph. It does not make any change to the data stream, only checks or “spies” on the data stream, to retrieve the properties of the stream, logging the details. The filter tries to pass-through any call to its pins etc. to the corresponding upstream or downstream pin / filter, thereby remaining as transparent as possible. This is particularly helpful for DirectShow developers, who want to understand the inner workings of a graph and also debug their graph related applications.
The Spy filter uses SARANGSoft’s Logastic text logging engine to log all the data related to the data stream passing through it. During streaming it logs the size of data buffer in each media sample, timestamps, the data type and dynamic changes to it, data discontinuities, flushes, new segment, end of stream, state change (run / pause / stop). It also logs connects & disconnects as well as various calls passed through it.
The Spy filter can be used in GraphEdt (available as part of Windows Platform SDK) in manual graph building and editing mode, as well as can be programmatically added to and removed from a filter graph. For more information on how to and why use the Spy filter, please refer to the accompanying help doc that comes with the download package.