パーリンノイズを聞いてみる
https://github.com/javel555/PerlinNoiseAudio
WebAudioの分かりやすい資料があったのでチャレンジ。一回音にしたらどうなるのか気になってた。
https://ics.media/entry/200427/
普通のノイズと決定的に違うのは、周波数(音の高さ)の制御が出来るって所。
地鳴りから砂嵐までなんでもござれ
逆に言うと、Math.random()でノイズ作ると周波数制御が出来ない(フィルター掛ければ出来るかもしれんが
あと、バンドラとしてRollupにチャレンジ。めちゃ良い。
感想色々
配列で音を作る場合はcontext.createBuffer(ch, length, sampleRate)を使用する
context.createBufferSource()で取得出来るのはAudioBufferSourceNode
なので.loopが使える
とはいえシームレスパーリンノイズにしないとループ時に「プツッ」って音がする
それはそう
Rollupの導入でSimplexNoiseをconst SimplexNoise = require('simplex-noise')で使えるようになった。
とても良い!!!!!!
厳密にはCommonsJSによるもの
RollUpはCommonsJS方式でもESModules方式でも対応できるのでめちゃ良い
ブラウザ向け出力フォーマットのumdってのが良く分からん
https://github.com/umdjs/umd
資料はあるけど・・・理解できん・・・
umdにすれば良いって話はここから仕入れた
http://webdesign-dackel.com/2015/11/17/rollup-module/
ただ、構成ファイルの書き方が陳腐化していて辛い
iifeでも良いらしい
何の事やら
https://qiita.com/frogcat/items/b32fff34ea2a194a2a0a
Rollupに紐づいたバンドラ全般の解説にここが参考になった
https://hadashia.hatenablog.com/entry/2016/08/08/131046
Rollupの構成ファイルrollup.config.jsの解説が分かりにくくて苦戦
資料はこれなんだが・・・
https://rollupjs.org/guide/en/#configuration-files
rollup検索して2つ目にくるQiita記事が陳腐化していて、参考にならない。くわばら。
https://qiita.com/cognitom/items/e3ac0da00241f427dad6
ノイズの出力値を丸めれば矩形波みたいな音色に出来るか
もしかして%演算で周期性を作れば、ノイズじゃない音色が作れる? のか?
やってみたら出来た
https://github.com/javel555/PerlinNoiseAudio/commit/0d28d3d77007209474654a5df24afa6e896e65d3