sc – ステレオ

今までは左側からばっかり聞こえていたので耳が痛い。。
是非両耳から聞こえてほしい。


{[SinOsc.ar(440, 0, 0.2), SinOsc.ar(442, 0, 0.2)] }.play;

OK、きこゆる。

マルチチャンネル(ステレオ含む)で音を鳴らすにはArrayを使う、と。
Arrayには以下のように、いろんな型のオブジェクトを突っ込むことが可能。

a = [1, 2, \num, "a", true, SinOsc];

そして要素の取得はatメソッドもしくはお馴染みの[]を使う。

a.at(0);
a[0];

例えば上記のaは要素が6個。なのでアクセス出来るのは0-5まで。
ここであえて10にアクセスするとどうなるか。
nilが返ってくる。

また、ステレオで鳴らすには、SinOsc自体を別々に配列にするんじゃなく、以下のような方法もある。

{SinOsc.ar([440, 442], 0, 0.2)}.play;

これの方が随分楽だしスッキリしてるし良いですね。

また、Pan2オブジェクトを使用してシームレスに左右に音を振るようなことも可能。

{Pan2.ar(PinkNoise.ar(0.2), SinOsc.kr(0.5))}.play;

Pan2オブジェクトでは-1(左)から1(右)を引数としてとる。
なので、以下の場合、ちょっと左の方が強い音がなる。

{Pan2.ar(PinkNoise.ar(0.2), -0.3)}.play;

ここはそんなに難しくなかったけど、またあとでいろいろ出てきそうなので一応メモ。

コメントを残す

メールアドレスが公開されることはありません。