mimiumを使ってみた 2
前回はmimiumを使うための実行環境を整えただけだったので
今回は実際にコードを叩いて
色々試していきたいと思います!
最初に使用する関数についてです.
標準でターミナルに出力する関数は
関数名 | 実行時の動作 |
---|---|
数値を表示する | |
println | 数値を表示した後に改行 |
となっているみたいです.
そのほかに数式で使える関数として
関数名 | 実行時の動作 |
---|---|
sin | 三角関数 sin |
cos | 三角関数 cos |
tan | 三角関数 tan |
asin | 逆三角関数 arcsin |
acos | 逆三角関数 arccos |
atan | 逆三角関数 arctan |
atan2 | x,y座標の偏角を計算 |
sinh | 双曲線関数 sinh |
cosh | 双曲線関数 cosh |
tanh | 双曲線関数 tanh |
log | 底が2のlog |
log10 | 底が10のlog |
pow | 累乗 |
sqrt | 平方根 |
abs | 絶対値 |
ceil | 天井関数,端数処理 |
floor | 床関数,端数処理 |
trunc | 切り落とし関数,端数処理 |
round | 四捨五入 |
fmod | 実数の剰余 |
remainder | 不動小数点の剰余 |
min | 最小値 |
max | 最大値 |
(2020/02/19現在)
となっているみたいです.
この数式の中にsinがあるので実際にsin波を鳴らしてみたいと思います!
fn dsp(time:float){ return sin(time) }
これでsin波を再生することができるみたいです.
※実際に音が出るので音量に注意してください!
dspという関数の中でreturnしたものを実際に音として再生できます.
次に自分の手持ち音源を再生するプログラムを書いていきます!
ffile = "waveファイルがあるディレクトリのパス" wav = loadwav(file) fn dsp(time:float){ return wav[time] }
ファイルのパスをloadwavに渡してあげるだけで簡単に再生できます.
terminalには
Info: Audio Device : Apple Inc.: External Headphones, Sampling Rate : 48000, Output Channels : 2
と出力されていて,再生デバイスがステレオかモノラルかサンプリングレートはいくつであるかを認識しています.
ちなみにですが,手持ちのmp3音源とflac音源を試しに再生してみたらflacは再生できました!
音楽を再生できるようになったので今度は実際に信号処理をしていきたいと思います.