waveOutGetVolume 関数は指定された波形オーディオ出力デバイスの現在の音量レベルを取得する。
waveOutGetVolume hwo, pdwVolume
hwo : [intptr] オープン済み波形オーディオ出力デバイスへのハンドル。デバイス識別子も指定できる。 pdwVolume : [var] 現在の音量設定が格納される変数へのポインタ。下位ワードに左チャネルの音量設定が、上位ワードに右チャネルの設定が格納される。0xFFFF が最大音量、0x0000 が無音を表す。デバイスが左右両チャネルの音量制御をサポートしていない場合、指定された場所の下位ワードにモノラル音量レベルが格納される。waveOutSetVolume 関数で設定した完全な 16 ビットの値が、デバイスが 16 ビット全ての音量制御をサポートしているかどうかにかかわらず返される。
(プラグイン / モジュール : winmm.dll)
waveOutGetVolume 関数は指定された波形オーディオ出力デバイスの現在の音量レベルを取得する。 [戻り値] 成功時は MMSYSERR_NOERROR を、それ以外の場合はエラーを返す。考えられるエラー値は次のとおり。 (以下省略) [備考] デバイス識別子を使用した場合、waveOutGetVolume 呼び出しの結果と pdwVolume で返される情報はそのデバイスの全インスタンスに適用される。デバイスハンドルを使用した場合、結果と返される情報はそのデバイスハンドルが参照するインスタンスにのみ適用される。全てのデバイスが音量変更をサポートしているわけではない。デバイスが音量制御をサポートしているかを判定するには、WAVECAPS_VOLUME フラグを用いて (waveOutGetDevCaps 関数で取得した) WAVEOUTCAPS 構造体の dwSupport メンバをテストする。デバイスが左右チャネルの音量制御をサポートしているかを判定するには、WAVECAPS_LRVOLUME フラグを用いて WAVEOUTCAPS 構造体の dwSupport メンバをテストする。音量設定は対数的に解釈される。これは音量レベルを 0x5000 から 0x6000 に上げたときと 0x4000 から 0x5000 に上げたときの音量増加が同じように知覚されることを意味する。
| プラグイン / モジュール | winmm.dll |
| バージョン | 1.0 |
| 作成日 | 2026/04/16 |
| 著作者 | IronHSP / CsWin32 bridge |
| URL | https://github.com/inovia/IronHSP |
| 備考 | Win32 API の winmm.dll 関数群。CsWin32 + win32metadata から自動生成。
hsp3net 専用 (intptr / NSTRUCT / wstr を使用)。 |
| タイプ | 拡張命令 |
| グループ | Win32API |
| 対応環境 |
|
| hs ファイル | hsphelp\win32_winmm_gen2.hs |