Sound Library - PCM Streamモジュールコントロール関数

sdPstmSetVol

PCM Streamポートのボリュームの設定

書式

SDE_ERR sdPstmSetVol( handle, target_slot, vol, fade_time )
SDPSTM handle
const Sint8 target_slot
const Sint8 vol
const Sint32 fade_time

引数

handle   PCM Streamポートのハンドル
target_slot   スロット番号
vol   ボリューム値
fade_time   目的のボリューム値に達するまでの時間

戻り値

SDE_ERR_NOTHING   エラーなし
SDE_ERR_NO_INIT   Sound Library が初期化されていない
SDE_ERR_HANDLE_NULL   ハンドルがNULL
SDE_ERR_HOST_CMD_BUF_NO_ENOUGH   ホストコマンドのバッファが不足

解説

指定したPCM Streamポートのスロット毎のボリューム設定をします。

引数target_slotは設定するスロット番号を指定します。 この引数にSDD_PSTM_PORT_SLOT_ALLを指定した場合は、指定したポートの全てのスロットに対して設定を行います。

ボリューム値を指定する引数 volの値の指定範囲は-0080H(最小)〜0000H(標準)〜007FH(最大)です。

目的のボリューム値に達するまでの時間を指定する引数 fade_time 単位はミリ秒で指定範囲は0000H(最速)〜7FFFH(最遅)です。 目的のボリューム値に達するまでの時間中、VSync毎にsdSysServer()関数が実行されていなければなりません。


備考

引数volに指定する値が小さすぎるとサウンドが聞こえなくなる場合があります。 また値を大きくしても、元データのボリューム値が十分に大きいなどの原因で一定以上大きくならない場合があります。

定期的なタイミングで行うアプリケーションで用意したサーバ関数などで、V同期で変化のない値を毎回設定し続けることは効率的なHost Command Bufferの利用方法でないばかりか、Sound Driverの負荷を増やす原因になります。 なるべく行わないでください。


sdPstmSetVol
COPYRIGHT © SEGA ENTERPRISES, LTD., 1998-2000