Bewerken

Delen via


KSPROPERTY_CAMERACONTROL_EXTENDED_METADATA

This extended property control is used by the client to query the driver for the metadata buffer requirements. It is sent to the driver along with a standard KSCAMERA_EXTENDEDPROP_HEADER structure followed by a KSCAMERA_EXTENDEDPROP_METADATAINFO structure.

Usage summary table

Scope Control Type

Version 1

Pin

Synchronous

The following are metadata flags that can be placed in the KSCAMERA_EXTENDEDPROP_HEADER.Flags field.

#define KSCAMERA_EXTENDEDPROP_METADATA_SYSTEMMEMORY                     0x0000000000000001  
#define KSCAMERA_EXTENDEDPROP_METADATA_ALIGNMENTREQUIRED                0x0000000000000100

In a Get call, the driver does the following:

  1. Fills KSCAMERA_EXTENDEDPROP_HEADER.Capability with 0.

  2. Fill KSCAMERA_EXTENDEDPROP_HEADER.Flags with a combination of any of the above KSCAMERA_EXTENDEDPROP_METADATA_XXX flags to indicate the metadata memory requirements.

  3. Fill KSCAMERA_EXTENDEDPROP_METADATAINFO.BufferAlignment with the desired memory alignment (KSCAMERA_EXTENDEDPROP_MetadataAlignment_Xxx). See the KSCAMERA_EXTENDEDPROP_MetadataAlignment for possible values.

  4. Fill KSCAMERA_EXTENDEDPROP_METADATAINFO.MaxMetadataBufferSize with the required metadata buffer size in bytes.

The table below contains the descriptions and requirements for the KSCAMERA_EXTENDEDPROP_HEADER structure fields when using the metadata control.

Member Description

Version

This must be 1.

PinId

This must be the Pin ID associated with the pin whose frame contains metadata. This can be any of the preview, record, and image pin.

Size

This must be sizeof(KSCAMERA_EXTENDEDPROP_HEADER)+sizeof(KSCAMERA_EXTENDEDPROP_METADATAINFO),

Result

This indicates the error results of the last SET operation. If no SET operation has taken place, this must be 0.

Capability

This is unused and must be 0.

Flags

This is a read/write field. This can be any combination of KSCAMERA_EXTENDEDPROP_METADATA_ALIGNMENTREQUIRED or KSCAMERA_EXTENDEDPROP_METADATA_SYSTEMMEMORY.

Requirements

Header

Ksmedia.h