waveOutSetPlaybackRate

機能
指定されたWave出力デバイスの再生レートを設定する
Declare Function waveOutSetPlaybackRate Lib "winmm.dll"  _
(ByVal hWaveOut As Long, ByVal dwRate As Long) As Long
Declare Function waveOutSetPlaybackRate Lib "winmm.dll"  _
(ByVal hWaveOut As Integer, ByVal dwRate As Integer) As Integer
引数
hWaveOut
Wave出力デバイスのハンドル
dwRate
新しい再生レート(必ず正の値を指定)
最初に制作された設定から再生レートが現在どれだけ変化したかを示す乗数
再生レート乗数は固定小数点値で指定する。
(上位ワード)         符号付き整数部
(下位ワード)         小数部
戻り値
正常終了のとき              MMSYSERR_NOERROR
エラーのとき                エラーを示す定数
備考
dwRateの値は乗数が2なら0x00020000,2.5なら0x00028000となる。(普通の固定小数点表示)
出力するデバイスがサポートしているかどうかを調べるにはwaveOutGetDevCaps()関数で
WAVECAPS_PLAYBACKRATEフラグを使い、WAVEOUTCAPS 構造体の dwSupportを調べれば分かる。
エラーを示す定数
Const MMSYSERR_INVALHANDLE = (MMSYSERR_BASE + 5)    デバイスのハンドルが無効
Const MMSYSERR_NODRIVER = (MMSYSERR_BASE + 6)       デバイスドライバが存在しない
Const MMSYSERR_NOMEM = (MMSYSERR_BASE + 7)          メモリ不足 or ロックできない
Const MMSYSERR_NOTSUPPORTED = (MMSYSERR_BASE + 8)   関数が未サポート