您的位置:首页 > 其它

WinAPI: midiOutGetDevCaps - 查询输出设备性能

2008-02-22 21:56 399 查看
//声明:
midiOutGetDevCaps(
uDeviceID: UINT;      {设备 ID}
lpCaps: PMidiOutCaps; {TMidiOutCaps 结构的指针}
uSize: UINT           {TMidiOutCaps 结构的大小}
): MMRESULT;       {成功返回 0; 可能的错误值见下:}

MMSYSERR_BADDEVICEID = 2;  {设备ID超界}
MMSYSERR_NODRIVER    = 6;  {没有安装驱动程序}

//TMidiOutCaps 是 tagMIDIOUTCAPSA 结构的重定义:
tagMIDIOUTCAPSA = record
wMid: Word;                  {商家 ID}
wPid: Word;                  {产品 ID}
vDriverVersion: MMVERSION;   {版本号; 高位字节是主版本号、低位字节是次版本号}
szPname: array[0..MAXPNAMELEN-1] of AnsiChar; {产品名称}
wTechnology: Word;           {设备类型}
wVoices: Word;               {音色数(仅对合成器, 否则为0)}
wNotes: Word;                {最大发音数(仅对合成器, 否则为0)}
wChannelMask: Word;          {通道数(仅对合成器, 否则为0)}
dwSupport: DWORD;            {设备支持的其他功能}
end;

//设备类型 wTechnology 可选值:
MOD_MIDIPORT = 1; {MIDI 硬件端口}
MOD_SYNTH    = 2; {普通合成器}
MOD_SQSYNTH  = 3; {方波合成器}
MOD_FMSYNTH  = 4; {FM 合成器}
MOD_MAPPER   = 5; {Microsoft MIDI 映射器}

//设备支持的其他功能 dwSupport:
MIDICAPS_VOLUME   = $0001; {支持音量控制}
MIDICAPS_LRVOLUME = $0002; {支持左右声道音量控制}
MIDICAPS_CACHE    = $0004; {支持音色高速缓存}
MIDICAPS_STREAM   = $0008; {设备直接支持 midiStreamOut}

//举例:
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: