NNS_SndArcStrmMoveVolume

構文

#include <nnsys/snd.h>
void NNS_SndArcStrmMoveVolume(
        NNSSndStrmHandle* handle,
        int volume,
        int frames );

引数

handle ストリームハンドルのポインタです。
volume ボリュームの値です。値の範囲は、0〜127です。
frames 変化するフレーム数です。

返り値

なし。

説明

ストリームハンドルhandleに結びつけられたストリームのボリュームを変更します。 ストリームハンドルが無効の場合は、何もしません。

framesで指定したフレーム数で、徐々に現在のボリューム値から、 volumeで指定したボリューム値へ変化します。

framesが0の時、即座に現在のボリューム値が更新されます。 たとえば、現在のボリューム値とは無関係に、ボリュームをある値から、別の値に時間変化させたい場合は、 まず、framesを0としてこの関数を呼びだして、現在のボリューム値を更新した後、 再び同じ関数で、目標とするボリューム値を指定します。

ストリームスタート直後のボリューム値は0で、次の NNS_SndMain関数で、127 に変化します。 このため、ストリームスタート直後にこの関数を呼びだすと、 ボリューム0から徐々に指定のボリュームへ変化するような、フェードイン効果が得られます。

このボリューム値は、 NNS_SndArcStrmSetVolume関数の値とは、 独立して効果を発揮し、互いに重ね合わされます。 ただし、フェードアウト中は、ここで設定した値は無視されます。

参照

NNS_SndMain, NNS_SndArcStrmSetVolume

履歴

2006/08/18 NNS_SndArcStrmSetVolume関数への参照追加
2004/08/10 初版