標準ライブラリ #
core.mmm
#
mix(gain,a,b)->floatswitch(gate,a,b)->float
単位変換 #
midi_to_hz(note:float)->floathz_to_midi(hz:float)->floatdbtolinear(db:float)->floatlinear2db(a:float)->float
math.mmm
#
PIlog10(x:float)->floatlog2(x:float)->float
env.mmm
#
adsr(attack,decay,sustain,release,input)->float
filter.mmm
#
onepole(x,ratio)->floatsmooth(x)->floatbiquad(x,coeffs:(float,float,float,float,float))->floatlowpass(x,fc,q)->floathighpass(x,fc,q)->float
noise.mmm
#
gen_noise(seed)->floatnoise()->floatunoise()->`float
noise()はgen_noise(1)と同じです。seedが同じnoiseは毎回同じ数列を返します。
unoiseマクロは、ノイズのseedを自動的に割り振るための仕組みです。unoise!()で実行するたびに、gen_noise(1)、gen_noise(2)、、、という別のシードのノイズが埋め込まれます。しかし、毎回全てのノイズは決定的に同じ無相関のノイズを出力することになります。
任意のシードでノイズソースを使用する場合はgen_noiseを直接使用してください。
osc.mmm
#
phasor(freq)->floatphasor_shift(freq,phase_shift)->floatsaw(freq,phase_shift)->floattriangle(freq,phase_shift)->floatsinwave(freq,phase_shift)->float