WinAPI: midiOutCachePatches - 预装音色
生活随笔
收集整理的這篇文章主要介紹了
WinAPI: midiOutCachePatches - 预装音色
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
提示:
參數(shù)三數(shù)組中的每一個元素代表 128 種音色中的一種;
MIDI 通道用 0..15 表示, 譬如通道 0 和 8 使用了 0 號音色, 數(shù)組的第 0 個元素就是 $0101.
//聲明: midiOutCachePatches(hMidiOut: HMIDIOUT; {設備句柄; 這個設備應該是內(nèi)部合成器}uBank: UINT; {指定音色組; 缺省設置為 0}lpwPatchArray: PWord; {TPatchArray 數(shù)組的指針; 在這個數(shù)組中指出要裝入或載卸的音色}uFlags: UINT {選項} ): MMRESULT; {成功返回 0; 可能的錯誤值如下:}MMSYSERR_INVALHANDLE = 5; {設備句柄無效} MMSYSERR_NOMEM = 7; {沒有足夠的空間裝入音色} MMSYSERR_NOTSUPPORTED = 8; {設備不支持}//lpwPatchArray 相關: PPatchArray = ^TPatchArray; TPatchArray = array[0..MIDIPATCHSIZE-1] of Word; {MIDIPATCHSIZE 是個常量:} MIDIPATCHSIZE = 128;//uFlags: MIDI_CACHE_ALL = 1; {裝入所有指定音色, 如果不能全裝入就全放棄, 并清除音色數(shù)組, 并返回 MMSYSERR_NOMEM} MIDI_CACHE_BESTFIT = 2; {裝入所有指定音色, 如果不能全裝入就盡量裝, 并修改音色數(shù)組說明裝了那些, 也返回 MMSYSERR_NOMEM} MIDI_CACHE_QUERY = 3; {修改音色數(shù)組表示正在裝入哪個音色} MIDI_UNCACHE = 4; {載卸指定的音色, 并清除音色數(shù)組}//舉例:
參數(shù)三數(shù)組中的每一個元素代表 128 種音色中的一種;
MIDI 通道用 0..15 表示, 譬如通道 0 和 8 使用了 0 號音色, 數(shù)組的第 0 個元素就是 $0101.
//聲明: midiOutCachePatches(hMidiOut: HMIDIOUT; {設備句柄; 這個設備應該是內(nèi)部合成器}uBank: UINT; {指定音色組; 缺省設置為 0}lpwPatchArray: PWord; {TPatchArray 數(shù)組的指針; 在這個數(shù)組中指出要裝入或載卸的音色}uFlags: UINT {選項} ): MMRESULT; {成功返回 0; 可能的錯誤值如下:}MMSYSERR_INVALHANDLE = 5; {設備句柄無效} MMSYSERR_NOMEM = 7; {沒有足夠的空間裝入音色} MMSYSERR_NOTSUPPORTED = 8; {設備不支持}//lpwPatchArray 相關: PPatchArray = ^TPatchArray; TPatchArray = array[0..MIDIPATCHSIZE-1] of Word; {MIDIPATCHSIZE 是個常量:} MIDIPATCHSIZE = 128;//uFlags: MIDI_CACHE_ALL = 1; {裝入所有指定音色, 如果不能全裝入就全放棄, 并清除音色數(shù)組, 并返回 MMSYSERR_NOMEM} MIDI_CACHE_BESTFIT = 2; {裝入所有指定音色, 如果不能全裝入就盡量裝, 并修改音色數(shù)組說明裝了那些, 也返回 MMSYSERR_NOMEM} MIDI_CACHE_QUERY = 3; {修改音色數(shù)組表示正在裝入哪個音色} MIDI_UNCACHE = 4; {載卸指定的音色, 并清除音色數(shù)組}//舉例:
總結
以上是生活随笔為你收集整理的WinAPI: midiOutCachePatches - 预装音色的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。