mixerGetLineInfoW 函数 (mmeapi.h)

mixerGetLineInfo 函数检索有关混音器设备特定行的信息。

语法

MMRESULT mixerGetLineInfoW(
  HMIXEROBJ    hmxobj,
  LPMIXERLINEW pmxl,
  DWORD        fdwInfo
);

参数

hmxobj

控制特定音频线的混音器设备对象的句柄。

pmxl

指向 MIXERLINE 结构的指针。 此结构填充了有关混音器设备的音频线的信息。 cbStruct 成员必须始终初始化为 MIXERLINE 结构的大小(以字节为单位)。

fdwInfo

用于检索有关音频行的信息的标志。 定义了以下值。

价值 意义
MIXER_GETLINEINFOF_COMPONENTTYPE pmxl 参数将接收有关 MIXERLINE 结构 dwComponentType 中指定的类型的第一个音频行的信息。 此标志用于检索有关特定组件类型的音频行的信息。 除 cbStruct 以外的剩余结构成员无需进一步初始化。
MIXER_GETLINEINFOF_DESTINATION pmxl 参数将接收有关 MIXERLINE 结构 dwDestination 成员指定的目标音频行的信息。 此索引的范围从零到一个小于 cDestinationsMIXERCAPS 结构的成员的值。 除 cbStruct 之外的所有剩余结构成员无需进一步初始化。
MIXER_GETLINEINFOF_LINEID pmxl 参数将接收 MIXERLINE 结构 dwLineID 成员指定的音频行的相关信息。 这通常用于检索有关音频线路状态的更新信息。 除 cbStruct 之外的所有剩余结构成员无需进一步初始化。
MIXER_GETLINEINFOF_SOURCE pmxl 参数将接收有关 dwDestination 指定的源音频行的信息,以及 dwSourceMIXERLINE 结构的成员。 dwDestination 指定的索引范围从零到一个小于 cDestinationsMIXERCAPS 结构的成员中的值。 dwSource 指定的索引范围从零到一个小于 为存储在 dwDestination 成员中的音频行返回的 MIXER LINE 成员 cConnections 中的值。 除 cbStruct 之外的所有剩余结构成员无需进一步初始化。
MIXER_GETLINEINFOF_TARGETTYPE pmxl 参数将接收 dwType Target 结构成员的音频行的相关信息,该结构是 MIXERLINE 结构的成员。 此标志用于检索处理目标类型的音频行的相关信息(例如,MIXERLINE_TARGETTYPE_WAVEOUT)。 应用程序必须先初始化 dwTypewMidwPidvDriverVersionszPname MIXERLINE 结构的成员,然后再调用 mixerGetLineInfo。 可以从所有媒体设备的设备功能结构中检索所有这些值。 除 cbStruct 以外的剩余结构成员无需进一步初始化。
注意 此函数的 ANSI 版本(mixerGetLineInfoA),不能使用从 mixerGetLineInfo 返回的 ANSI 字符串 或 在使用 MIXER_GETLINEINFOF_TARGETTYPE 标志调用 mixerGetLineInfo 时,waveOutGetDevCapspsPname 字符串的值。 原因是执行到 Unicode 和从 Unicode 进行内部转换,这可能会导致数据丢失。
 
MIXER_OBJECTF_AUX hmxobj 参数是零到一个小于 auxGetNumDevs 函数返回的设备数的辅助设备标识符。
MIXER_OBJECTF_HMIDIIN hmxobj 参数是 MIDI 输入设备的句柄。 此句柄必须由 midiInOpen 函数返回。
MIXER_OBJECTF_HMIDIOUT hmxobj 参数是 MIDI 输出设备的句柄。 此句柄必须由 midiOutOpen 函数返回。
MIXER_OBJECTF_HMIXER hmxobj 参数是由 mixerOpen 函数返回的混音器设备句柄。 此标志是可选的。
MIXER_OBJECTF_HWAVEIN hmxobj 参数是由 waveInOpen 函数返回的波形音频输入句柄。
MIXER_OBJECTF_HWAVEOUT hmxobj 参数是由 waveOutOpen 函数返回的波形音频输出句柄。
MIXER_OBJECTF_MIDIIN hmxobj 参数是 MIDI 输入设备的标识符。 此标识符的范围必须小于 midiInGetNumDevs 函数返回的设备数。
MIXER_OBJECTF_MIDIOUT hmxobj 参数是 MIDI 输出设备的标识符。 此标识符的范围必须小于 midiOutGetNumDevs 函数返回的设备数。
MIXER_OBJECTF_MIXER hmxobj 参数是一个混音器设备标识符,其范围为 0 到 1,小于 mixerGetNumDevs 函数返回的设备数。 此标志是可选的。
MIXER_OBJECTF_WAVEIN hmxobj 参数是波形音频输入设备的标识符,其范围为零到一个小于 waveInGetNumDevs 函数返回的设备数。
MIXER_OBJECTF_WAVEOUT hmxobj 参数是波形音频输出设备的标识符,其范围为零到一个小于 waveOutGetNumDevs 函数返回的设备数。

返回值

如果成功或错误,则返回MMSYSERR_NOERROR。 可能的错误值包括以下内容。

返回代码 描述
MIXERR_INVALLINE
音频线路引用无效。
MMSYSERR_BADDEVICEID
hmxobj 参数指定了无效的设备标识符。
MMSYSERR_INVALFLAG
一个或多个标志无效。
MMSYSERR_INVALHANDLE
hmxobj 参数指定无效句柄。
MMSYSERR_INVALPARAM
一个或多个参数无效。
MMSYSERR_NODRIVER
hmxobj指定的对象没有混音器设备。

言论

注意

mmeapi.h 标头将 mixerGetLineInfo 定义为一个别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将中性编码别名与不中性编码的代码混合使用可能会导致编译或运行时错误不匹配。 有关详细信息,请参阅函数原型的 约定。

要求

要求 价值
最低支持的客户端 Windows 2000 Professional [仅限桌面应用]
支持的最低服务器 Windows 2000 Server [仅限桌面应用]
目标平台 窗户
标头 mmeapi.h (包括 Windows.h)
Winmm.lib
DLL Winmm.dll

另请参阅

音频混音器函数

音频混音器