KSJACK_DESCRIPTION 结构 (devicetopology.h)
KSJACK_DESCRIPTION结构描述音频插孔。
语法
typedef struct __MIDL___MIDL_itf_devicetopology_0000_0000_0009 {
DWORD ChannelMapping;
COLORREF Color;
EPcxConnectionType ConnectionType;
EPcxGeoLocation GeoLocation;
EPcxGenLocation GenLocation;
EPxcPortConnection PortConnection;
BOOL IsConnected;
} KSJACK_DESCRIPTION, *PKSJACK_DESCRIPTION;
成员
ChannelMapping
指定立体声插孔中两个音频声道到扬声器位置的映射。
在 Windows Vista 中,此成员的值是下表所示的 EChannelMapping 枚举值之一。
值 | 第一个通道 | 第二个通道 |
---|---|---|
ePcxChanMap_FL_FR | 左前扬声器 | 右前扬声器 |
ePcxChanMap_FC_LFE | 前置扬声器 | 低频扬声器 (低音炮) |
ePcxChanMap_BL_BR | 左后方扬声器 | 右后扬声器 |
ePcxChanMap_FLC_FRC | 前左中扬声器 | 正面右中扬声器 |
ePcxChanMap_SL_SR | 侧边左扬声器 | 侧右扬声器 |
ePcxChanMap_Unknown | 未知 | 未知 |
在 Windows 7 中, EChannelMapping 枚举已弃用。 此成员的数据类型为 DWORD。 此成员存储 Ksmedia.h 中定义的以下一个或多个值的 0 或按位 OR 组合。
#define SPEAKER_FRONT_LEFT 0x1
#define SPEAKER_FRONT_RIGHT 0x2
#define SPEAKER_FRONT_CENTER 0x4
#define SPEAKER_LOW_FREQUENCY 0x8
#define SPEAKER_BACK_LEFT 0x10
#define SPEAKER_BACK_RIGHT 0x20
#define SPEAKER_FRONT_LEFT_OF_CENTER 0x40
#define SPEAKER_FRONT_RIGHT_OF_CENTER 0x80
#define SPEAKER_BACK_CENTER 0x100
#define SPEAKER_SIDE_LEFT 0x200
#define SPEAKER_SIDE_RIGHT 0x400
#define SPEAKER_TOP_CENTER 0x800
#define SPEAKER_TOP_FRONT_LEFT 0x1000
#define SPEAKER_TOP_FRONT_CENTER 0x2000
#define SPEAKER_TOP_FRONT_RIGHT 0x4000
#define SPEAKER_TOP_BACK_LEFT 0x8000
#define SPEAKER_TOP_BACK_CENTER 0x10000
#define SPEAKER_TOP_BACK_RIGHT 0x20000
Color
插孔颜色。 颜色表示为 32 位 RGB 值,该值通过连接 8 位蓝色、绿色和红色分量而形成。 蓝色分量占用 8 个最低有效位 (位 0-7) ,绿色分量占用 8-15 位,红色分量占用位 16-23。 8 个最有效位为零。 如果插孔颜色未知或物理连接器没有可识别的颜色,则此成员的值0x00000000,即黑色。
ConnectionType
连接类型。 此成员的值是下表中显示的 EPcxConnectionType 枚举值之一。
值 | 连接器类型 |
---|---|
eConnTypeUnknown | 未知 |
eConnTypeEighth (Windows Vista) eConnType3Point5mm (Windows 7) |
1/8 英寸插孔 |
eConnTypeQuarter | 1/4 英寸插孔 |
eConnTypeAtapiInternal | ATAPI 内部连接器 |
eConnTypeRCA | RCA 插孔 |
eConnTypeOptical | 光学连接器 |
eConnTypeOtherDigital | 通用数字连接器 |
eConnTypeOtherAnalog | 通用模拟连接器 |
eConnTypeMultichannelAnalogDIN | 多通道模拟 DIN 连接器 |
eConnTypeXlrProfessional | XLR 连接器 |
eConnTypeRJ11Modem | RJ11 调制解调器连接器 |
eConnTypeCombination | 连接器类型的组合 |
GeoLocation
插孔的几何位置。 此成员的值是下表中显示的 EPcxGeoLocation 枚举值之一。
值 | 几何位置 |
---|---|
eGeoLocRear | 后置面板 |
eGeoLocFront | 前置面板 |
eGeoLocLeft | 左装载面板 |
eGeoLocRight | 右装载面板 |
eGeoLocTop | 顶部安装的面板 |
eGeoLocBottom | 底部安装的面板 |
eGeoLocRearOPanel (Windows Vista) eGeoLocRearPanel (Windows 7) |
后滑打开或拉开面板 |
eGeoLocRiser | Riser 卡 |
eGeoLocInsideMobileLid | 移动计算机盖子内部 |
eGeoLocDrivebay | 驱动器托架 |
eGeoLocHDMI | HDMI 连接器 |
eGeoLocOutsideMobileLid | 移动计算机的外盖 |
eGeoLocATAPI | ATAPI 连接器 |
GenLocation
插孔的一般位置。 此成员的值是下表中显示的 EPcxGenLocation 枚举值之一。
值 | 常规位置 |
---|---|
eGenLocPrimaryBox | 在主机箱上 |
eGenLocInternal | 在主机箱内 |
eGenLocSeperate (Windows Vista) eGenLocSeparate (Windows 7) |
在单独的机箱上 |
eGenLocOther | 其他位置 |
PortConnection
插孔表示的端口类型。 此成员的值是下表中显示的 EPxcPortConnection 枚举值之一。
值 | 端口连接类型 |
---|---|
ePortConnJack | 杰克 |
ePortConnIntegratedDevice | 集成设备的槽 |
ePortConnBothIntegratedAndJack | 集成设备的插孔和插槽 |
ePortConnUnknown | 未知 |
IsConnected
如果音频适配器支持对插孔进行插孔存在检测, 则 IsConnected 的值指示终结点设备是否已插入插孔。 如果 IsConnected 为 TRUE,则设备已接通电源。 如果为 FALSE,则插孔为空。 对于不支持插孔存在检测的设备,此成员始终为 TRUE。 有关插孔存在检测的详细信息,请参阅 音频终结点设备。
注解
此结构由 DeviceTopology API 中的 IKsJackDescription::GetJackDescription 方法使用。 它描述了一个音频插孔,该插孔是音频适配器中终结点设备和硬件设备之间连接的一部分。 当用户需要将终结点设备插入插孔或将其从插孔中拔下时,音频应用程序可以使用 结构中的描述性信息来帮助用户查找插孔。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows Vista [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2008 [仅限桌面应用] |
标头 | devicetopology.h |