private void OnFrameSet(FrameSet frames) { using (var aligned = aligner.Process(frames)) { using (var f = aligned[sourceStreamType]) { using (VideoFrame vPost = f as VideoFrame) { using (VideoFrame v1 = decimationFilter.ApplyFilter(vPost)) { using (VideoFrame v2 = spatialFilter.ApplyFilter(v1)) { using (VideoFrame vOut = temporalFilter.ApplyFilter(v2)) { OnFrame(vOut); } } } } } } }
public override Frame Process(Frame frame, FrameSource frameSource, FramesReleaser releaser) { return(_enabled ? _pb.ApplyFilter(frame as VideoFrame) : frame); }