Video Capture Minidriver Property Sets

This section describes the video capture-specific property sets that are available for video capture minidrivers that use WDM kernel-streaming services in Microsoft Windows XP, Windows 2000, and Windows 98/Me and later operating systems.

The reference page for each property contains a table with the following column headings.

Get Set Target Property descriptor type Property value type

These headings have the following meanings:

  • Get

    Does the target KS object support the KSPROPERTY_TYPE_GET property request?

  • Set

    Does the target KS object support the KSPROPERTY_TYPE_SET property request?

  • Target

    The target is the KS object to which property request is sent. The target for a video capture property is either a filter or a pin. (The property request specifies the target object by its kernel handle.)

  • Property descriptor type

    The property descriptor specifies the property and the operation to perform on that property. The descriptor always begins with a KSPROPERTY structure, but some types of descriptor contain additional information. For example, the KSNODEPROPERTY structure is a property descriptor that begins with a KSPROPERTY structure but also includes a node identifier.

  • Property value type

    A property has a value and the type of this value depends on the property. For example, a property that can be in one of only two states--on or off--typically has a BOOL value. A property that can assume integer values from 0x0 to 0xFFFFFFFF might have a ULONG value. More complex properties might have values that are arrays or structures.

The property descriptor and property value above are the property-specific versions of the instance-specification and operation-data buffers that KS Properties, Events, and Methods discusses.

A property request uses one of the following flags to specify the operation to be performed on the property:

  • KSPROPERTY_TYPE_BASICSUPPORT

  • KSPROPERTY_TYPE_GET

  • KSPROPERTY_TYPE_SET

All filter and pin objects support the basic-support operation on their properties. Whether they support the get and Set operations depends on the property. A property that represents an inherent capability of the filter or pin object is likely to require only a get operation. A property that represents a configurable setting might require only a Set operation, although a get operation might also be useful for reading the current setting. For more information about using the get, set, and basic-support operations with video capture properties, see KS Properties.

Every property description contains a table that indicates whether video capture minidrivers must support reading or writing the property. Video capture minidrivers should return STATUS_NOT_SUPPORTED in response to get or set requests for properties that are not supported by the minidriver.

The following list describes kernel streaming property sets that video capture minidrivers use:

PROPSETID_ALLOCATOR_CONTROL

PROPSETID_EXT_DEVICE

PROPSETID_EXT_TRANSPORT

PROPSETID_TIMECODE_READER

PROPSETID_TUNER

PROPSETID_VIDCAP_CAMERACONTROL

KSPROPERTYSETID_ExtendedCameraControl

PROPSETID_VIDCAP_CROSSBAR

PROPSETID_VIDCAP_DROPPEDFRAMES

PROPSETID_VIDCAP_TVAUDIO

PROPSETID_VIDCAP_VIDEOCOMPRESSION

PROPSETID_VIDCAP_VIDEOCONTROL

PROPSETID_VIDCAP_VIDEODECODER

PROPSETID_VIDCAP_VIDEOPROCAMP

The following property sets can be used with the USB Video Class Driver:

PROPSETID_VIDCAP_CAMERACONTROL

KSPROPERTYSETID_ExtendedCameraControl

PROPSETID_VIDCAP_VIDEOPROCAMP

PROPSETID_VIDCAP_SELECTOR