Cloning Stream Pointers

Multiple stream pointers can reference a single frame. To duplicate a stream pointer, call KsStreamPointerClone.

The resulting copy of the stream pointer is referred to as a stream pointer clone. The clone is a new stream pointer that is identical to the parent. Initially, the clone references the same frame and has the same lock status. After it is created, a clone is independent of its parent stream pointer.

You can clone leading edge, trailing edge, or current clone stream pointers.

Adding a clone stream pointer increments the reference count on that particular frame. See Introduction to Stream Pointers For more information about reference counts.

Enumerate clone stream pointers by using KsPinGetFirstCloneStreamPointer and KsStreamPointerGetNextClone.

Clones exist until you delete them by calling KsStreamPointerDelete. When the minidriver deletes a clone, AVStream decrements the reference count for the corresponding frame.

See AVStream DMA Services for an example of how to use stream pointer clones.