ダイナミックサウンドのパフォーマンスとか設計とか

ダイナミックサウンドを用いた作品を作る時、ほとんどの場合複数の音を操る事になると思います。単純なところで言えばサイン波と三角波とノイズを同時に鳴らす、とか。

で、このとき、三つのシグナルに対して、それぞれ三つのSoundインスタンスを生成してゴニョゴニョやるのか、単一のSoundインスタンスに対して、三つの信号を合算してゴニョゴニョするのか、二つの選択肢が生まれます。

一応テストしてみたところ、後者の方がパフォーマンスが良いと思うのですがどうでしょう?
手持ちのMBPで20個のサイン波を処理してみたところ前者81%、後者66%とかでした。

上記の仮説が正しい場合、マスターとなるSoundインスタンスをシングルトン化し、シグナルを生成するクラスのプロパティとして持たせれば良いんじゃないでしょうか。ちょうど、DisplayObjectにstageプロパティがあるように、masterプロパティを持たせるって感じ。

さらにvisibleプロパティよろしくmuteプロパティかlistenプロパティを持たせてtrue/falseでmasterへシグナルを書き込むか否かをコントロールすると、何となくFlashの表示オブジェクト系と似たような流れで処理が可能になると思うんだけど。


個人的にはダイナミックサウンド系のライブラリ設計は如何に表示オブジェクトライクに設計するかがキモなんじゃないかと思いますが、果たしてどうでしょう。春にはSFWSoundがお目見えするって話なのでとても楽しみ。

Trackback

http://memo.kappa-lab.com/mt-tb.cgi/281

Leave your comment :

(いままで、ここでコメントしたことがないときは、コメントを表示する前に承認が必要になることがあります。そのときはしばらくお待ちください。)




RSS + Contuct

  • rss
  • email

Credit

Copyright (C) 2007 kappa-lab.com.
All Rights Reserved.