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 未知 未知
 

对于具有一个、三个或更多通道的物理连接器,此成员的值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 的值指示终结点设备是否已插入插孔。 如果 IsConnectedTRUE,则设备已接通电源。 如果为 FALSE,则插孔为空。 对于不支持插孔存在检测的设备,此成员始终为 TRUE。 有关插孔存在检测的详细信息,请参阅 音频终结点设备

注解

此结构由 DeviceTopology API 中的 IKsJackDescription::GetJackDescription 方法使用。 它描述了一个音频插孔,该插孔是音频适配器中终结点设备和硬件设备之间连接的一部分。 当用户需要将终结点设备插入插孔或将其从插孔中拔下时,音频应用程序可以使用 结构中的描述性信息来帮助用户查找插孔。

要求

要求
最低受支持的客户端 Windows Vista [仅限桌面应用]
最低受支持的服务器 Windows Server 2008 [仅限桌面应用]
标头 devicetopology.h

另请参阅

核心音频结构

IKsJackDescription::GetJackDescription