MIXERLINEW 结构 (mmeapi.h)
MIXERLINE 结构描述音频线路的状态和指标。
语法
typedef struct tagMIXERLINEW {
DWORD cbStruct;
DWORD dwDestination;
DWORD dwSource;
DWORD dwLineID;
DWORD fdwLine;
DWORD_PTR dwUser;
DWORD dwComponentType;
DWORD cChannels;
DWORD cConnections;
DWORD cControls;
WCHAR szShortName[MIXER_SHORT_NAME_CHARS];
WCHAR szName[MIXER_LONG_NAME_CHARS];
struct {
DWORD dwType;
DWORD dwDeviceID;
WORD wMid;
WORD wPid;
MMVERSION vDriverVersion;
WCHAR szPname[MAXPNAMELEN];
} Target;
} MIXERLINEW, *PMIXERLINEW, *LPMIXERLINEW;
成员
cbStruct
MIXERLINE 结构的大小(以字节为单位)。 在调用 mixerGetLineInfo 函数之前,必须先初始化此成员。 此成员中指定的大小必须足够大,才能包含 MIXERLINE 结构。 当 mixerGetLineInfo 返回时,此成员包含返回的信息的实际大小。 返回的信息不会超过请求的大小。
dwDestination
目标行索引。 此成员的范围从零到一个小于 cDestinations 中指定的值, 由 mixerGetDevCaps 函数检索的 MIXERCAPS 结构的成员。 使用MIXER_GETLINEINFOF_DESTINATION标志调用 mixerGetLineInfo 函数时,将返回目标行的属性。 (在这种情况下,dwSource 成员必须设置为零。使用 MIXER_GETLINEINFOF_SOURCE 标志调用时,将返回与 dwDestination 成员关联的 dwSource 成员提供源的属性。
dwSource
与 dwDestination 成员关联的音频源行的索引。 也就是说,此成员指定与指定音频目标行关联的 n音频源行。 此成员不用于目标行,必须在 mixerGetLineInfo 函数中指定MIXER_GETLINEINFOF_DESTINATION时设置为零。 指定MIXER_GETLINEINFOF_SOURCE标志时,此成员的范围从零到一个小于在 cConnections 成员中指定的 dwDestination 成员中指定的音频目标行的值。
dwLineID
由混音器设备定义的标识符,该标识符唯一引用 MIXERLINE 结构描述的音频行。 此标识符对于每个混音器设备都是唯一的,可以采用任何格式。 应用程序应仅将此标识符用作抽象句柄。
fdwLine
音频线路的状态和支持标志。 此成员始终返回到应用程序,无需初始化。
如果应用程序未使用波形音频输出设备,则与该设备关联的音频线路不会处于活动状态(也就是说,不会设置MIXERLINE_LINEF_ACTIVE标志)。
如果打开波形音频输出设备,则音频线路被视为处于活动状态,并且将设置MIXERLINE_LINEF_ACTIVE标志。
暂停或饥饿的波形音频输出设备仍被视为处于活动状态。 换句话说,如果应用程序打开波形音频输出设备,而不考虑是否正在播放数据,则关联的音频行被视为处于活动状态。
如果无法严格定义为活动行,混音器设备将始终设置MIXERLINE_LINEF_ACTIVE标志。
dwUser
音频设备为该行定义的实例数据。 此成员适用于专为返回此信息的混音器设备设计的自定义混音器应用程序。 其他应用程序应忽略此数据。
dwComponentType
此音频线路的组件类型。 应用程序可以使用此信息显示定制的图形或搜索特定组件。 如果应用程序不使用组件类型,则应忽略此成员。 此成员可以是以下值之一:
cChannels
可为音频线路独立操作的独立通道的最大数目。 此字段的最小值为 1,因为一行必须至少有一个通道。
个人计算机的大多数新式音频卡都是立体声设备;对于它们,此成员的值为 2。
通道 1 假定为左通道;通道 2 假定为正确的通道。
多通道行可能具有一个或多个统一控件(控件,这些控件统一地影响一条线的所有通道)与之关联。
cConnections
与音频行关联的连接数。 此成员仅用于音频目标行,并指定与其关联的音频源行数。 对于源行和没有与之关联的任何音频源行的目标行,此成员始终为零。
cControls
与音频行关联的控件数。 此值可以为零。 如果没有与该行关联的控件,则该行可能是在MIXERCONTROL_CONTROLTYPE_MUX或MIXERCONTROL_CONTROLTYPE_MIXER中选择的源,但不能操作信号。
szShortName[MIXER_SHORT_NAME_CHARS]
描述在 dwLineID 成员中指定的音频混音器线的短字符串。 此说明应适合用作行的简明标签。
szName[MIXER_LONG_NAME_CHARS]
描述在 dwLineID 成员中指定的音频混音器行的字符串。 此说明应适合作为行的完整说明。
Target
目标媒体信息。
Target.dwType
目标媒体设备类型与 MIXERLINE 结构中所述的音频行相关联。 应用程序必须忽略它不使用的媒体设备类型的目标信息。 定义了以下值:
名字 | 描述 |
---|---|
|
MIXERLINE 结构描述的音频线路严格绑定到 MIXERLINE 结构的 目标 结构成员的其余成员中详述的辅助设备。 |
|
MIXERLINE 结构描述的音频线路严格绑定到 MIXERLINE 结构的 Target 结构成员中详述的 MIDI 输入设备。 |
|
MIXERLINE 结构描述的音频线路严格绑定到 MIXERLINE 结构的 目标 结构成员的其余成员中详述的 MIDI 输出设备。 |
|
MIXERLINE 结构描述的音频行不严格绑定到定义的媒体类型。 应忽略 MIXERLINE 结构的所有剩余 目标 结构成员。 应用程序在使用MIXER_GETLINEINFOF_TARGETTYPE标志调用 mixerGetLineInfo 函数时,无法使用MIXERLINE_TARGETTYPE_UNDEFINED目标类型。 |
|
MIXERLINE 结构描述的音频线严格绑定到 MIXERLINE 结构中 目标 结构成员中详述的波形音频输入设备。 |
|
MIXERLINE 结构描述的音频线严格绑定到 MIXERLINE 结构的 目标 结构成员的其余成员中详述的波形-音频输出设备。 |
Target.dwDeviceID
当 dwType 成员不是MIXERLINE_TARGETTYPE_UNDEFINED的目标类型时,目标媒体设备的当前设备标识符。 此标识符与关联媒体设备的当前媒体设备索引相同。 使用MIXER_GETLINEINFOF_TARGETTYPE标志调用 mixerGetLineInfo 函数时,此成员在输入时将被忽略,音频混音器管理器将返回到调用方。
Target.wMid
当 dwType 成员不是MIXERLINE_TARGETTYPE_UNDEFINED的目标类型时,目标媒体设备的制造商标识符。 此标识符与关联媒体的设备功能结构的 wMid 成员相同。 制造商标识符在 制造商和产品标识符中定义。
Target.wPid
当 dwType 成员不是MIXERLINE_TARGETTYPE_UNDEFINED的目标类型时,目标媒体设备的产品标识符。 此标识符与关联媒体的设备功能结构的 wPid 成员相同。 产品标识符在 制造商和产品标识符中定义。
Target.vDriverVersion
当 dwType 成员不是MIXERLINE_TARGETTYPE_UNDEFINED的目标类型时,目标媒体设备的驱动程序版本。 此版本与关联媒体的设备功能结构的 vDriverVersion 成员相同。
Target.szPname[MAXPNAMELEN]
当 dwType 成员不是MIXERLINE_TARGETTYPE_UNDEFINED的目标类型时,目标媒体设备的产品名称。 此名称与关联媒体的设备功能结构的 szPname 成员相同。
言论
注意
mmeapi.h 标头将 MIXERLINE 定义为一个别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将中性编码别名与不中性编码的代码混合使用可能会导致编译或运行时错误不匹配。 有关详细信息,请参阅函数原型的
要求
要求 | 价值 |
---|---|
最低支持的客户端 | Windows 2000 Professional [仅限桌面应用] |
支持的最低服务器 | Windows 2000 Server [仅限桌面应用] |
标头 | mmeapi.h |
另请参阅
音频混音器