Previous Next

Capture, Preview, and Still Categories

The capture, preview, and still stream categories are almost identical in terms of data formats and stream characteristics.

Category/PinName Description
PINNAME_VIDEO_CAPTURE Capture category output pins provide a stream of compressed or uncompressed digital video. Typically, this stream is used for writing movies to disk, video conferencing, and for image analysis.
PINNAME_VIDEO_PREVIEW Preview category output pins provide a stream of usually uncompressed digital video. Typically, the stream is used to view the video stream on the local monitor, in either RGB or YUV formats that can be directly displayed by DirectDraw. In resource-limited situations, capture minidrivers should prioritize the preview stream lower than the capture stream.
PINNAME_VIDEO_STILL Still category output pins are used with dual-mode cameras that are capable of producing both a capture stream and a still image stream (that is often of higher quality than the capture stream). The still image stream includes the ability to externally or programmatically trigger acquisition of an image.

Note  Since many cameras produce only a single output stream, the DirectShow SDK includes a Smart Tee filter that splits a single stream into a Capture and a Preview stream. Therefore, cameras that produce only a single stream should not internally duplicate their data streams to produce a preview stream.

The following table lists the common characteristics of Capture, Preview, and Still streams.

Attribute Value
DataRange Structure KS_DATARANGE_VIDEO (frames only)
KS_DATARANGE_VIDEO2 (fields or frames, bob or weave settings)
KS_DATARANGE_MPEG1_VIDEO
KS_DATARANGE_MPEG2_VIDEO
DataFormat Structure KS_DATAFORMAT_VIDEO (frames only)
KS_DATAFORMAT_VIDEO2 (fields or frames, bob or weave settings)
KS_MPEG1VIDEOINFO (for MPEG1)
KS_MPEGVIDEOINFO2 (for MPEG2)
Major Format GUID KSDATAFORMAT_TYPE_VIDEO
Sub-Format GUID RGB16, RGB24, UYVY, JPEG, …
Specifier GUID KSDATAFORMAT_SPECIFIER_VIDEOINFO (frames only)
KSDATAFORMAT_SPECIFIER_VIDEOINFO2 (fields or frames)
Extended Header Size KS_FRAME_INFO if not an MPEG format. Zero if an MPEG format.
Required Property Sets KSPROPSETID_Connection
PROPSETID_VIDCAP_DROPPEDFRAMES
Required Event Sets None
DirectShow majortype MEDIATYPE_Video
DirectShow formattype FORMAT_VideoInfo (frames only)
FORMAT_VideoInfo2 (fields or frames)