パッヘルベルのカノンが終わらないツール「無限カノン」

元記事を読んで思いついた

「無限音楽機関」という記事を読みました。
生成AIに曲を作らせるのではなく、音楽理論そのものをアルゴリズムとして書き、ブラウザ内の計算だけで無限に音楽を作りつづけるという試みです。
ビートルズ様式、ユーミン様式、無限サティ機関、バッハ手法による無限生成装置と、作曲家の癖を規則に落としこんだツールが並んでいます。
推論を一切使わず、すべてブラウザの中の計算で完結しているところが面白いところです。

読みながら思ったのは「パッヘルベルのカノンはどうか」ということでした。
8つの和音が延々と循環し、その上を3つの声部が2小節ずつ遅れて追いかけるだけの構造です。

Claude Codeで書いてみた

Claude Codeを使ってツールを作ってみました。
できあがったのが「無限カノン」です。

無限カノン

再生ボタンを押すと、パッヘルベルのカノンのコード進行の上で、二度と同じにならない旋律が延々と鳴りつづけます。
HTMLファイル1枚で、録音した音源も外部ライブラリも使っていません。
音はすべてWeb Audio APIで合成しています。

仕組み

項目 内容
コード進行 D–A–Bm–F♯m–G–D–G–A の8小節循環
声部数 2〜4(第2声部が2小節遅れ、第3声部が4小節遅れ)
テンポ 46〜132 BPM
調 D、C、G、A、F、B♭
音色 弦楽、撥弦、パイプオルガン
音源 Web Audio APIによる合成のみ

2小節ぶんの旋律を作ってそれを保持しておき、第2声部が2小節後、第3声部が4小節後にまったく同じ旋律をなぞります。
似た旋律を別々に作るのではなく、完全に同じものを遅らせて重ねます。
カノンの定義そのものです。

肝心なのは和音の照合でした。
1音を選ぶたびに「いま鳴る和音」「2小節後の和音」「4小節後の和音」の三つを同時に見て、強拍にはそのすべてに属する音を置きます。
だから2小節遅れて重なっても濁りません。

音の細かさは8小節を一巡するごとに変わります。
2分音符から4分、8分、16分へと密度が上がっていき、頂点を過ぎるとまた緩みます。
原曲の変奏の流れを、そのまま規則にしたものです。

旋律は毎回その場で作られるので、同じものは二度と鳴りません。
仕事中でも寝るときでも、何時間でも鳴らしっぱなしにできます。

画面の左にある円は8つの和音の循環で、3本の針がそれぞれの声部が今どの小節の素材を鳴らしているかを指しています。
右側では、同じ形の旋律が色を変えて遅れて重なっていくのが見えます。

あとで知ったこと

公開してから気づいたのですが、9月1日はパッヘルベルの誕生日でした。
正確には生年月日の記録が残っておらず、1653年9月1日に洗礼を受けた記録から、この日が誕生日として扱われています。

コメント

タイトルとURLをコピーしました