2024-01-21
を深掘り、JavaScriptで効率良く並列実行を実現するAudioWorkletを使って、ウェブアプリづくりとIchigoJam webの改善を実施。


「Beeps Sound Test with AudioWorkletProcessor」
単音のみだったビープ音(0か1かで奏でる矩形波)を複数対応するAudioWorkletと3和音奏でるサンプルアプリ。

スタートして、ランダムボタンを押すと、1秒おきにどれかが変わるランダム和音音声モードになります。IchigoJamが3台並べて鳴らしている感じになりますよ。


「MML Beep Sound Test with AudioWorkletProcessor」

IchigoJam MMLを奏でるAudioWorklet。ほぼ同じ音が鳴ります。


「IchigoJam web」

音の処理に、非推奨となっているScriptProcessorNodeを使っていたので、AudioWorkletに換装しました。まずはこちらのアドレスの IchigoJam web のみ更新。

環境によってブツブツ言っていた現象が直るかも。動作がおかしいようであれば、こちら「IchigoJam web」をお使いください。

BEEP BEEP 3 BEEP 20 PLAY "CDE" PLAY "T800$CDE" PLAY "C>C>C" PLAY "C<C<C" PLAY "N3N20"

(参考、PLAY - IchigoJam BASIC 1.4 コマンド一覧


「Sine Wave Sound Test with AudioWorkletProcessor」

こちらは、音の基本、正弦波、サインウェーブです。なめらかに変わる周波数と音量がポイントです。倍音を加えたり、エンベロープに対応したり、楽器作りの元となります。

音をプログラミングしよう!

Tweet
クリエイティブ・コモンズ・ライセンス
本ブログの記事や写真は「Creative Commons — CC BY 4.0」の下に提供します。記事内で紹介するプログラムや作品は、それぞれに記載されたライセンスを参照ください。
CC BY / @taisukef / アイコン画像 / プロフィール画像 / 「一日一創」画像 / RSS