WAVSET

プチコン3号 プチコンBIG 

ユーザー定義楽器音(GM)を直接設定

WAVSET gm,a,d,s,r,wavStr[,tone]

パラメーター

gmユーザー定義楽器音番号(224~255)
a,d,s,r音形(アタック、ディケイ、サスティン、リリース)
wavStr波形を示す16進数文字列
tone基本音程(省略時:69)

解説

ユーザー定義楽器音(単音)を作成し、定義します。

gmで、定義する楽器音番号(224~255)を指定。
a,d,s,rで音の形を指定。
a:アタック
音量が0から大きくなり最大になるまでに掛かる時間(0~127)
a=127が最短、a=21で0.5秒、a=10で1秒、a=6で2秒、a=0で13秒ほど。
d:ディケイ
音量が最大値から小さくなり、一定になるまでに掛かる時間(0~127)
d=127が最短、d=120で0.5秒、d=110で1秒、d=95で2秒程度。
d=0だと無限(最大で音符の長さ分)で、s:サスティンの意味がなくなる。
s:サスティン
音を伸ばしている時の音量(0~127)
最大音量の127に設定するとd:ディケイに意味がなくなる。
r:リリース
演奏が終わったあと、音量が小さくなって0になるのに掛かる時間(0~127)
指定値と秒数はd:ディケイと同じ。
ただし、r=0を指定すると演奏終了後も音がずっと消えなくなってしまうので注意(BGMSTOP -1で強制的に止めるしかない)

wavStrで音の波形を設定。波形は、"00"~"FF"を1つのサンプル波形として、16,32,64,128,256,512サンプルで指定。
結果、wavStrの文字数はサンプル数の倍、32,64,128,256,512,1024文字のいずれかになり、これら以外だとエラーになります。

toneで基本音程を指定。省略時は69("O4A":オクターブ4のラ)で、+1で半音下がり、-1で半音上がる。

サンプルコード

WAVSET 224,80,120,64,110,FF00"*8
BGMPLAY "@224CDEFG"

参照

BEEP BEEP(通知・警告音)や楽器の単音を鳴らす
BGMCHK BGMトラックの演奏状態を取得
BGMCLEAR BGMのユーザー定義曲を消去
BGMPLAY BGMを演奏
BGMSET BGM定義にユーザーBGMをMMLで定義
BGMSETD BGM定義にユーザーBGMをDATAからMMLで定義
BGMVAR BGMトラック用内部変数の値を設定・取得
BGMSTOP BGMの演奏を停止
BGMVOL BGMの音量を指定
WAVSET ユーザー定義楽器音(GM)を直接設定
WAVSETA ユーザー定義楽器音(GM)を数値配列から設定
EFCOFF BEEP,BGM,TALKのエコーを止める
EFCON BEEP,BGM,TALKのエコーを再開
EFCSET BEEP,BGM,TALKにエコーをかける
EFCWET BEEP,BGM,TALKそれぞれのエコー量を設定
TALK 音声合成を再生
TALKCHK 音声合成が再生中か調べる
TALKSTOP 音声合成を停止
BGMPAUSE BGMの演奏を一時停止・状態取得
BGMCONT BGMの演奏を再開
SNDSTOP 全ての音を停止

Facebookコメント