📄 adapcapprop.h
字号:
DEFINE_KSPROPERTY_ITEM
(
KSPROPERTY_VIDEOPROCAMP_BRIGHTNESS,
TRUE, // GetSupported or Handler
sizeof(KSPROPERTY_VIDEOPROCAMP_S), // MinProperty
sizeof(KSPROPERTY_VIDEOPROCAMP_S), // MinData
TRUE, // SetSupported or Handler
&BrightnessValues, // Values
0, // RelationsCount
NULL, // Relations
NULL, // SupportHandler
sizeof(ULONG) // SerializedSize
),
};
// ------------------------------------------------------------------------
// Property set for CameraControl
// ------------------------------------------------------------------------
//
// First define all of the ranges and stepping values
//
// ------------------------------------------------------------------------
static KSPROPERTY_STEPPING_LONG ZoomRangeAndStep [] =
{
{
10000 / 10, // SteppingDelta (range / steps)
0, // Reserved
0, // Minimum
10000 // Maximum
}
};
static const ULONG ZoomDefault = 5000;
static KSPROPERTY_MEMBERSLIST ZoomMembersList [] =
{
{
{
KSPROPERTY_MEMBER_RANGES,
sizeof (ZoomRangeAndStep),
SIZEOF_ARRAY (ZoomRangeAndStep),
0
},
(PVOID) ZoomRangeAndStep,
},
{
{
KSPROPERTY_MEMBER_VALUES,
sizeof (ZoomDefault),
sizeof (ZoomDefault),
KSPROPERTY_MEMBER_FLAG_DEFAULT
},
(PVOID) &ZoomDefault,
}
};
static KSPROPERTY_VALUES ZoomValues =
{
{
STATICGUIDOF (KSPROPTYPESETID_General),
VT_I4,
0
},
SIZEOF_ARRAY (ZoomMembersList),
ZoomMembersList
};
// ------------------------------------------------------------------------
static KSPROPERTY_STEPPING_LONG FocusRangeAndStep [] =
{
{
10000 / 256, // SteppingDelta (range / steps)
0, // Reserved
0, // Minimum
10000 // Maximum
}
};
static const ULONG FocusDefault = 5000;
static KSPROPERTY_MEMBERSLIST FocusMembersList [] =
{
{
{
KSPROPERTY_MEMBER_RANGES,
sizeof (FocusRangeAndStep),
SIZEOF_ARRAY (FocusRangeAndStep),
0
},
(PVOID) FocusRangeAndStep
},
{
{
KSPROPERTY_MEMBER_VALUES,
sizeof (FocusDefault),
sizeof (FocusDefault),
KSPROPERTY_MEMBER_FLAG_DEFAULT
},
(PVOID) &FocusDefault,
}
};
static KSPROPERTY_VALUES FocusValues =
{
{
STATICGUIDOF (KSPROPTYPESETID_General),
VT_I4,
0
},
SIZEOF_ARRAY (FocusMembersList),
FocusMembersList
};
// ------------------------------------------------------------------------
DEFINE_KSPROPERTY_TABLE(CameraControlProperties)
{
DEFINE_KSPROPERTY_ITEM
(
KSPROPERTY_CAMERACONTROL_ZOOM,
TRUE, // GetSupported or Handler
sizeof(KSPROPERTY_CAMERACONTROL_S), // MinProperty
sizeof(KSPROPERTY_CAMERACONTROL_S), // MinData
TRUE, // SetSupported or Handler
&ZoomValues, // Values
0, // RelationsCount
NULL, // Relations
NULL, // SupportHandler
sizeof(ULONG) // SerializedSize
),
DEFINE_KSPROPERTY_ITEM
(
KSPROPERTY_CAMERACONTROL_FOCUS,
TRUE, // GetSupported or Handler
sizeof(KSPROPERTY_CAMERACONTROL_S), // MinProperty
sizeof(KSPROPERTY_CAMERACONTROL_S), // MinData
TRUE, // SetSupported or Handler
&FocusValues, // Values
0, // RelationsCount
NULL, // Relations
NULL, // SupportHandler
sizeof(ULONG) // SerializedSize
),
};
// ------------------------------------------------------------------------
// Property set for AnalogVideoDecoder
// ------------------------------------------------------------------------
DEFINE_KSPROPERTY_TABLE(AnalogVideoDecoder)
{
DEFINE_KSPROPERTY_ITEM
(
KSPROPERTY_VIDEODECODER_CAPS,
TRUE, // GetSupported or Handler
sizeof(KSPROPERTY_VIDEODECODER_CAPS_S), // MinProperty
sizeof(KSPROPERTY_VIDEODECODER_CAPS_S), // MinData
FALSE, // SetSupported or Handler
NULL, // Values
0, // RelationsCount
NULL, // Relations
NULL, // SupportHandler
0 // SerializedSize
),
DEFINE_KSPROPERTY_ITEM
(
KSPROPERTY_VIDEODECODER_STANDARD,
TRUE, // GetSupported or Handler
sizeof(KSPROPERTY_VIDEODECODER_S), // MinProperty
sizeof(KSPROPERTY_VIDEODECODER_S), // MinData
TRUE, // SetSupported or Handler
NULL, // Values
0, // RelationsCount
NULL, // Relations
NULL, // SupportHandler
0 // SerializedSize
),
DEFINE_KSPROPERTY_ITEM
(
KSPROPERTY_VIDEODECODER_STATUS,
TRUE, // GetSupported or Handler
sizeof(KSPROPERTY_VIDEODECODER_STATUS_S),// MinProperty
sizeof(KSPROPERTY_VIDEODECODER_STATUS_S),// MinData
FALSE, // SetSupported or Handler
NULL, // Values
0, // RelationsCount
NULL, // Relations
NULL, // SupportHandler
0 // SerializedSize
),
DEFINE_KSPROPERTY_ITEM
(
KSPROPERTY_VIDEODECODER_OUTPUT_ENABLE,
TRUE, // GetSupported or Handler
sizeof(KSPROPERTY_VIDEODECODER_S), // MinProperty
sizeof(KSPROPERTY_VIDEODECODER_S), // MinData
TRUE, // SetSupported or Handler
NULL, // Values
0, // RelationsCount
NULL, // Relations
NULL, // SupportHandler
0 // SerializedSize
),
DEFINE_KSPROPERTY_ITEM
(
KSPROPERTY_VIDEODECODER_VCR_TIMING,
TRUE, // GetSupported or Handler
sizeof(KSPROPERTY_VIDEODECODER_S), // MinProperty
sizeof(KSPROPERTY_VIDEODECODER_S), // MinData
TRUE, // SetSupported or Handler
NULL, // Values
0, // RelationsCount
NULL, // Relations
NULL, // SupportHandler
0 // SerializedSize
),
};
// ------------------------------------------------------------------------
// Property set for VideoControl
// ------------------------------------------------------------------------
DEFINE_KSPROPERTY_TABLE(VideoControlProperties)
{
DEFINE_KSPROPERTY_ITEM
(
KSPROPERTY_VIDEOCONTROL_CAPS,
TRUE, // GetSupported or Handler
sizeof(KSPROPERTY_VIDEOCONTROL_CAPS_S), // MinProperty
sizeof(KSPROPERTY_VIDEOCONTROL_CAPS_S), // MinData
FALSE, // SetSupported or Handler
NULL, // Values
0, // RelationsCount
NULL, // Relations
NULL, // SupportHandler
0 // SerializedSize
),
DEFINE_KSPROPERTY_ITEM
(
KSPROPERTY_VIDEOCONTROL_ACTUAL_FRAME_RATE,
TRUE, // GetSupported or Handler
sizeof(KSPROPERTY_VIDEOCONTROL_ACTUAL_FRAME_RATE_S), // MinProperty
sizeof(KSPROPERTY_VIDEOCONTROL_ACTUAL_FRAME_RATE_S), // MinData
FALSE, // SetSupported or Handler
NULL, // Values
0, // RelationsCount
NULL, // Relations
NULL, // SupportHandler
0 // SerializedSize
),
DEFINE_KSPROPERTY_ITEM
(
KSPROPERTY_VIDEOCONTROL_FRAME_RATES,
TRUE, // GetSupported or Handler
sizeof(KSPROPERTY), // MinProperty
sizeof(KSMULTIPLE_ITEM), // MinData
FALSE, // SetSupported or Handler
NULL, // Values
0, // RelationsCount
NULL, // Relations
NULL, // SupportHandler
0 // SerializedSize
),
DEFINE_KSPROPERTY_ITEM
(
KSPROPERTY_VIDEOCONTROL_MODE,
TRUE, // GetSupported or Handler
sizeof(KSPROPERTY_VIDEOCONTROL_MODE_S), // MinProperty
sizeof(KSPROPERTY_VIDEOCONTROL_MODE_S), // MinData
TRUE, // SetSupported or Handler
NULL, // Values
0, // RelationsCount
NULL, // Relations
NULL, // SupportHandler
0 // SerializedSize
),
};
// ------------------------------------------------------------------------
// Array of all of the property sets supported by the adapter
// ------------------------------------------------------------------------
DEFINE_KSPROPERTY_SET_TABLE(AdapterPropertyTable)
{
DEFINE_KSPROPERTY_SET
(
&PROPSETID_VIDCAP_CROSSBAR, // Set
SIZEOF_ARRAY(XBarProperties), // PropertiesCount
XBarProperties, // PropertyItem
0, // FastIoCount
NULL // FastIoTable
),
DEFINE_KSPROPERTY_SET
(
&PROPSETID_TUNER,
SIZEOF_ARRAY(TVTunerProperties),
TVTunerProperties,
0,
NULL,
),
DEFINE_KSPROPERTY_SET
(
&PROPSETID_VIDCAP_TVAUDIO,
SIZEOF_ARRAY(TVAudioProperties),
TVAudioProperties,
0,
NULL,
),
DEFINE_KSPROPERTY_SET
(
&PROPSETID_VIDCAP_VIDEOPROCAMP,
SIZEOF_ARRAY(VideoProcAmpProperties),
VideoProcAmpProperties,
0,
NULL,
),
DEFINE_KSPROPERTY_SET
(
&PROPSETID_VIDCAP_CAMERACONTROL,
SIZEOF_ARRAY(CameraControlProperties),
CameraControlProperties,
0,
NULL,
),
DEFINE_KSPROPERTY_SET
(
&PROPSETID_VIDCAP_VIDEOCONTROL,
SIZEOF_ARRAY(VideoControlProperties),
VideoControlProperties,
0,
NULL,
),
DEFINE_KSPROPERTY_SET
(
&PROPSETID_VIDCAP_VIDEODECODER,
SIZEOF_ARRAY(AnalogVideoDecoder),
AnalogVideoDecoder,
0,
NULL,
)
};
#define NUMBER_OF_ADAPTER_PROPERTY_SETS (SIZEOF_ARRAY (AdapterPropertyTable))
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -