NNS_SndPlayerSetTrackMute*

構文

#include <nnsys/snd.h>
void NNS_SndPlayerSetTrackMute(
        NNSSndHandle* handle,
        u16 trackBitMask,
        BOOL flag );
void NNS_SndPlayerSetTrackMuteEx( NNSSndHandle* handle, u16 trackBitMask, NNSSndSeqMute mute );

引数

handle サウンドハンドルのポインタです。
trackBitMask トラックビットマスクです。
flag ミュートするかやめるかのフラグです。TRUEならミュートし、FALSEならミュートを解除します。
mute ミュート設定です。

返り値

なし。

説明

シーケンストラックをミュートしたり、やめたりします。

サウンドハンドルhandleに、結びつけられたシーケンスのトラックをミュートしたりやめたりします。 サウンドハンドルが無効の場合は、何もしません。

trackBitMaskで、設定するトラックを指定します。 下位ビットから順に、トラック0、トラック1、トラック2、、、を表し、ビットが立っているトラック全てに対して、 ミュートの設定を変更します。 例えば、トラック2とトラック5のミュート設定を変更したい場合は、 (1 << 2) | (1 << 5) すなわち、0x0024 とします。

NNS_SndPlayerSetTrackMute関数で、ミュートを行うと、 発音中の音は即座に停止します。 即座に停止させたくない場合は、NNS_SndPlayerSetTrackMuteEx関数を使います。

ミュート設定muteは、下記の値から選択します。

表 . NNSSndSeqMute

ラベル 説明
NNS_SND_SEQ_MUTE_OFF ミュート解除
NNS_SND_SEQ_MUTE_NO_STOP 発音中の音を止めずにミュート
NNS_SND_SEQ_MUTE_RELEASE 発音中の音をリリースしてミュート
NNS_SND_SEQ_MUTE_STOP 発音中の音を即座に止めてミュート

注意

NNS_SndPlayerSetTrackMuteEx関数は、SDKバージョン3.1以降で使用できます。

NNS_SndPlayerSetTrackMute関数でトラックをミュート、 もしくは、NNS_SndPlayerSetTrackMuteEx関数でNNS_SND_SEQ_MUTE_STOPを 指定した場合、 発音中の音は全て強制的に止められ、それ以降の発音は行われなくなります。 ミュートを解除すると、発音が行われるようになりますが、すぐに音が鳴り出すわけではありません。次のノートオンから鳴り始めることに注意してください。

シーケンスデータ中でも、ミュート設定をしていた場合は、 後から設定した方が有効になります。

参照

なし。

履歴

2006/03/20 NNS_SndPlayerSetTrackMuteEx関数追加
2004/06/01 サウンドハンドルはシーケンスと結びつくように記述修正
2004/04/01 初版