« SiONを使ってみる。 その2(音色を変えてみる) | トップページ | SiONを使ってみる。 その4(フェードインとフェードアウト) »

2009年8月22日 (土)

SiONを使ってみる。 その3(音色を変えてみる別バージョン)

P_2_2




















絶賛SiONで遊ばせてもらってます。

前回、音色の変更をやってみたんですが、別な方法を見つけました。

というか、多分こっちの方が正規な方法の気がする。




方法としては、

// 音色を変更
var presetVoice:SiONPresetVoice=new SiONPresetVoice();
var voice:SiONVoice=presetVoice["valsound.piano3"];
driver.setVoice(0, voice);

みたいに、setVoiceで音色をセットする。

そのあとMMLのコマンドで、

var str:String="";
str+="%t0,1,1 t100 %6@0cdefedcr %6@0efgagfer %6@0crcrcrcr l8 %6@0ccddeeff l4 %6@0edc;";

みたいに、音を変更したい部分に「%6@0」を追加する。

@0の0が、setVoiceで指定した番号。だから、番号変えて色々な音をセットできる。

%6ってのはモジュール番号らしい。この部分だけよく分かっていない。後で調べる。

あとは、普通にplay()してあげれば音色の変わった音が出る。

sequenceOnメソッド使わなくても音色変更出来た。




一応サンプル(注:音出ます! ソースは右クリック)。

前回のより何かテンポが遅くなった。

やっぱMMLをある程度理解しないといけないっぽいなぁ。



---------------------------------------------------------------------
(追記)

setVoiceの場所ですが、driverに対して行うのではなく、driver.compileメソッドから受け取ったSiONData型の変数に対して行った方がいいみたいです。

今回のサンプルでいうと、

「driver.setVoice(0, voice);」  →     「mainMelody.setVoice(0, voice);」

にした方がいいかもってこと。

このほうが各SiONData型の変数に対して音色の設定ができるのかな。

|

« SiONを使ってみる。 その2(音色を変えてみる) | トップページ | SiONを使ってみる。 その4(フェードインとフェードアウト) »

ActionScript」カテゴリの記事

SiON」カテゴリの記事

Tweener」カテゴリの記事

コメント

コメントを書く



(ウェブ上には掲載しません)




トラックバック

この記事のトラックバックURL:
http://app.f.cocolog-nifty.com/t/trackback/1040194/31063085

この記事へのトラックバック一覧です: SiONを使ってみる。 その3(音色を変えてみる別バージョン):

« SiONを使ってみる。 その2(音色を変えてみる) | トップページ | SiONを使ってみる。 その4(フェードインとフェードアウト) »