Previous Next


The KSJACK_DESCRIPTION structure describes an audio jack.

typedef struct {
  EChannelMapping  ChannelMapping;
  COLORREF  Color;
  EPcxConnectionType  ConnectionType;
  EPcxGeoLocation  GeoLocation;
  EPcxGenLocation  GenLocation;
  EPxcPortConnection  PortConnection;
  BOOL  IsConnected;



Specifies the mapping of the two audio channels in a stereo jack to speaker positions. The value of this member is one of the EChannelMapping enumeration values shown in the following table.

Value First channel Second channel
ePcxChanMap_FL_FR Front-left speaker Front-right speaker
ePcxChanMap_FC_LFE Front-center speaker Low-frequency-effects speaker (subwoofer)
ePcxChanMap_BL_BR Back-left speaker Back-right speakers
ePcxChanMap_FLC_FRC Front-left-center speaker Front-right-center speaker
ePcxChanMap_SL_SR Side-left speaker Side-right speaker
ePcxChanMap_Unknown Unknown Unknown

For a physical connector with one, three, or more channels, the value of this member is ePcxChanMap_Unknown.


The jack color. The color is expressed as a 32-bit RGB value that is formed by concatenating the 8-bit red, green, and blue color components. The red component occupies the 8 least-significant bits (bits 0-7), the green component occupies bits 8-15, and the blue component occupies bits 16-23. The 8 most-significant bits are zeros. Use the RGB macro in header file Ksmedia.h to generate this value. If the jack color is unknown or the physical connector has no identifiable color, the value of this member is 0xFFFFFFFF.


The connection type. The value of this member is one of the EPcxConnectionType enumeration values shown in the following table.

Value Connector type
eConnTypeUnknown Unknown
eConnTypeEighth 1/8-inch jack
eConnTypeQuarter 1/4-inch jack
eConnTypeAtapiInternal ATAPI internal connector
eConnTypeRCA RCA jack
eConnTypeOptical Optical connector
eConnTypeOtherDigital Generic digital connector
eConnTypeOtherAnalog Generic analog connector
eConnTypeMultichannelAnalogDIN Multichannel analog DIN connector
eConnTypeXlrProfessional XLR connector
eConnTypeRJ11Modem RJ11 modem connector
eConnTypeCombination Combination of connector types


The geometric location of the jack. The value of this member is one of the EPcxGeoLocation enumeration values shown in the following table.

Value Geometric location
eGeoLocRear Rear-mounted panel
eGeoLocFront Front-mounted panel
eGeoLocLeft Left-mounted panel
eGeoLocRight Right-mounted panel
eGeoLocTop Top-mounted panel
eGeoLocBottom Bottom-mounted panel
eGeoLocRearOPanel Rear slide-open or pull-open panel
eGeoLocRiser Riser card
eGeoLocInsideMobileLid Inside lid of mobile computer
eGeoLocDrivebay Drive bay
eGeoLocHDMI HDMI connector
eGeoLocOutsideMobileLid Outside lid of mobile computer
eGeoLocATAPI ATAPI connector


The general location of the jack. The value of this member is one of the EPcxGenLocation enumeration values shown in the following table.

Value General location
eGenLocPrimaryBox On primary chassis
eGenLocInternal Inside primary chassis
eGenLocSeparate On separate chassis
eGenLocOther Other location


The type of port represented by the jack. The value of this member is one of the EPxcPortConnection enumeration values shown in the following table.

Value Port connection type
ePortConnJack Jack
ePortConnIntegratedDevice Slot for an integrated device
ePortConnBothIntegratedAndJack Both a jack and a slot for an integrated device
ePortConnUnknown Unknown


If the audio adapter supports jack-presence detection on the jack, the value of IsConnected indicates whether an endpoint device is plugged into the jack. If IsConnected is TRUE, a device is plugged in. If it is FALSE, the jack is empty. For devices that do not support jack-presence detection, this member is always TRUE. For more information about jack-presence detection, see Audio Endpoint Devices.


This structure is used by the IKsJackDescription::GetJackDescription method in the DeviceTopology API. It describes an audio jack that is part of a connection between an endpoint device and a hardware device in an audio adapter. When a user needs to plug an endpoint device into a jack or unplug it from a jack, an audio application can use the descriptive information in the structure to help the user to find the jack.


Client: Windows Vista

Header: Include Devicetopology.h.

See Also

Previous Next