mixerGetLineControlsA 函数 (mmeapi.h)

mixerGetLineControls 函数检索与音频行关联的一个或多个控件。

语法

MMRESULT mixerGetLineControlsA(
  HMIXEROBJ            hmxobj,
  LPMIXERLINECONTROLSA pmxlc,
  DWORD                fdwControls
);

参数

hmxobj

正在查询的混音器设备对象的句柄。

pmxlc

指向 MIXERLINECONTROLS 结构的指针。 此结构用于引用一个或多个 MIXERCONTROL 结构,以填充与音频线关联的控件的相关信息。 MIXERLINECONTROLS 结构的 cbStruct 成员必须始终初始化为 MIXERLINECONTROLS 结构的大小(以字节为单位)。

fdwControls

用于检索与音频行关联的一个或多个控件的信息的标志。 定义了以下值。

价值 意义
MIXER_GETLINECONTROLSF_ALL pmxlc 参数引用 MIXERCONTROL 结构的列表,该列表将接收与 MIXERLINECONTROLS 结构 dwLineID 成员标识的音频行相关的所有控件的信息。 必须将 cControls 成员初始化为与行关联的控件数。 从 mixerGetLineInfo 函数返回的 MIXERLINE 结构的 cControls 成员中检索此数字。 cbmxctrl 成员必须初始化为单个 MIXERCONTROL 结构的大小(以字节为单位)。 pamxctrl 成员必须指向要填充的第一个 MIXERCONTROL 结构。 此查询将忽略 dwControlIDdwControlType 成员。
MIXER_GETLINECONTROLSF_ONEBYID pmxlc 参数引用单个 MIXERCONTROL 结构,该结构将接收由 MIXERLINECONTROLS 结构 dwControlID 成员标识的控件的信息。 cControls 成员必须初始化为 1。 cbmxctrl 成员必须初始化为单个 MIXERCONTROL 结构的大小(以字节为单位)。 pamxctrl 成员必须指向要填充的 MIXERCONTROL 结构。 此查询将忽略 dwLineIDdwControlType 成员。 此查询通常用于在用户定义回调收到 MM_MIXM_CONTROL_CHANGE 控件更改通知消息后刷新控件(请参阅 mixerOpen)。
MIXER_GETLINECONTROLSF_ONEBYTYPE mixerGetLineControls 函数检索有关要查询的音频行的特定类的第一个控件的信息。 pmxlc 参数引用单个 MIXERCONTROL 结构,该结构将接收有关特定控件的信息。 音频行由 dwLineID 成员标识。 控件类是在 MIXERLINECONTROLS 结构的 dwControlType 成员中指定的。此查询忽略 dwControlID 成员。 应用程序可以使用此查询来获取与行关联的单个控件的信息。 例如,你可能希望应用程序仅使用波形音频输出行中的峰值计量。
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_INVALCONTROL
控件引用无效。
MIXERR_INVALLINE
音频线路引用无效。
MMSYSERR_BADDEVICEID
hmxobj 参数指定了无效的设备标识符。
MMSYSERR_INVALFLAG
一个或多个标志无效。
MMSYSERR_INVALHANDLE
hmxobj 参数指定无效句柄。
MMSYSERR_INVALPARAM
一个或多个参数无效。
MMSYSERR_NODRIVER
hmxobj指定的对象没有混音器设备。

言论

注意

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

要求

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

另请参阅

音频混音器函数

音频混音器