KSPROPERTY_CAMERACONTROL_EXTENDED_PHOTOMODE (submode)

KSPROPERTY_CAMERACONTROL_EXTENDED_PHOTOMODE 属性允许配置 submode。

使用情况摘要

以下 submodes 的定义如下。

#define KSCAMERA_EXTENDEDPROP_PHOTOMODE_SEQUENCE_SUB_NONE       0x00000000
#define KSCAMERA_EXTENDEDPROP_PHOTOMODE_SEQUENCE_SUB_VARIABLE   0x00000001

KSCAMERA_EXTENDEDPROP_PHOTOMODE_SEQUENCE_SUB_NONE 由定期照片序列使用。

KSCAMERA_EXTENDEDPROP_PHOTOMODE_SEQUENCE_SUB_VARIABLE 用于指示照片序列是可变的。 如果指定了每帧设置,则将在 KSCAMERA_EXTENDEDPROP_PHOTOMODE 结构的 submode 字段中指定 KSCAMERA_EXTENDEDPROP_PHOTOMODE_SEQUENCE_SUB_VARIABLE 标志,以指示可变照片序列,即使未指定任何项设置 ("所有帧) 的项计数为0。 当帧计数为1并且项计数为0时,可变照片序列会使用全局设置减少为一个帧可变照片序列。

下面是 ksmedia 中定义的 KSCAMERA_EXTENDEDPROP_PHOTOMODE 结构的定义:

typedef struct tagKSCAMERA_EXTENDEDPROP_PHOTOMODE {  
    ULONG       RequestedHistoryFrames;  
    ULONG       MaxHistoryFrames;  
    ULONG       SubMode;  
    ULONG       Reserved;  
} KSCAMERA_EXTENDEDPROP_PHOTOMODE, *PKSCAMERA_EXTENDEDPROP_PHOTOMODE;

可变照片序列模式对于照片序列具有以下独特特征。

  • 始终使用有限照片序列。

  • 帧计数大于0时应用每帧设置。

  • 如果指定的循环计数大于0,驱动程序将在结束时自动停止照片序列,而不需要 KS_VideoControlFlag_StopPhotoSequenceCapture 触发器。

  • 最后一个示例必须标记为 KSSTREAM_HEADER_OPTIONSF_ENDOFPHOTOSEQUENCE 标志。

  • 捕获管道不会从驱动程序中删除任何示例。

  • 管道和 driver\MFT0 都不会生成任何照片缩略图。

此属性是异步的,不可取消。

要求

标头: Ksmedia (包含 Ksmedia)