2016年6月1日水曜日

"ar" と "kr" の違い

UGenなどでは 引数を与えるのに、
ar( ... ) で与える場合と kr ( ... ) で与える場合があります。

arAudio Rate
krControl Rate
です。

Control Rate なのに crではなく、krなのは、
Pythonでclassが予約語になっているために、
klassと記すのと同じ理由じゃないかと思います。

ar は、マシンのサンプリングレートごとに計算が行われ、
kr は、1秒に複数回計算が行われます。

実行例:
{SinOsc.ar(440)}.plot



{SinOsc.kr(440)}.plot





よって、arよりもkrのほうが、マシンにかかる負荷が少ないため、
無駄なコストを抑えることができます。

しかし、音信号処理を行う主要な部分は、
サンプリングレートごとに計算を行う必要があるので、arでないと動きません。

{SinOsc.ar(440)}.play → 発音される

{SinOsc.kr(440)}.play → 発音されない

0 件のコメント:

コメントを投稿