非専門的シンギュラリティー研究所

無限に動き続けるシステムを表す方法を AI なども使って考えていきます。

AI による音楽生成(3)

ユーザーの「感情」によって音楽を生成するシステムを考えます。ユーザーにはいくつかの「感情」があるとします(たとえば10本の指に割り当てられているとします)。「感情」には「キー」が割り当てられているとします。システムは、「キー」が押されるとその時までのユーザーのすべての入力から音楽を生成します。ユーザーはそれを受け入れるか取り消すことができます。これを繰り返すことによって音楽を生成します。これをリアルタイムで行うシステムはありますか

と ChatGPT で入力すると以下のような結果が返されました。

すごく面白いアイデアですね!!
しかも、その発想、かなり先鋭的です。
「感情キーを押すことで、それまでの身体的・感情的履歴から音楽を生成する」という考え方は、即興演奏(インプロビゼーション)と作曲の中間にあたります。

まず最初にお答えしますね:

🛎 回答:

あなたが言ったような形でリアルタイムに「感情履歴+ユーザー承認付き」で音楽を生成するシステムは、現状、一般には存在していません。

ただし、似た方向性の研究・プロトタイプはあります。
また、技術的には十分実現可能です。(少し工夫は必要です)

🔍 現在存在する「近いもの」

システム 似ている点 違う点
Magenta's Performance RNN 人間の入力(MIDI演奏)をリアルタイムでAIが拡張する 感情キー+承認プロセスはない
AIVA, Amper, Soundful などのAI作曲システム 感情やテーマから音楽を生成 リアルタイム性なし、履歴参照なし
Wekinatorを使った即興演奏システム 動作や感情に応じた音をリアルタイム生成 承認/取消のメカニズムはない
Adaptive Music Systems(ゲーム向け) プレイヤーの状態に応じた音楽変化 完全に自動、ユーザー承認はない

🛠 では、あなたのシステムを要素分解すると?

構成要素

1. 感情検出/選択(10本指=10感情キー)
2. 入力の記録(動作、顔、身体、履歴)
3. 感情キー押下時にデータを取り込む
4. その履歴から音楽を生成する(AIモデル or 手続き生成)
5. ユーザーが「受け入れ/取り消し」を選べる
6. 次のサイクルへつなげる

💡 技術的に必要なもの

パーツ できる技術・ライブラリ
感情検出・ボタン入力 MediaPipe Hands, 外付けMIDIコントローラー, 自作GUI
入力履歴保持 時系列データ保存(手・顔・体の動きログ)
音楽生成 LSTM / Transformer系モデル(例:Music Transformer, RNN-based improvisation)
リアルタイム承認UI 小さなタッチパネル/キーボード、または音声指示
システム連携 Max/MSP, PureData, TouchDesigner, Processing + TensorFlow.js

🎼 イメージ図

[ユーザー動作] ---記録---> (履歴データ) ---感情キー押下---> (音楽生成AI) 
           ↓                                              ↓
      (リアルタイム監視)                        (生成された音楽)
                                                        ↓
                                        [受け入れる] or [取り消す]
                                                        ↓
                                            [次のサイクル]

🧠 まとめ:あなたの発想を言葉にすると

「ユーザーの身体と心の動きを素材に、リアルタイムで試行錯誤しながら音楽を共創するAI」

という、完全新しい楽器・作曲体験のアイデアになっています。

✨ もし次に進むなら

たとえば、

  • 「どうやってユーザーの入力を記録するか?」
  • 「どういうモデルで履歴から音楽を生み出すか?」
  • 「どんな簡単なプロトタイプから試せるか?」

みたいなところを一緒に設計していけます!

👀 どうします?
たとえば、簡単なプロトタイプ(指キー+履歴保存+感情別即興)を考えてみますか?
それとも、さらにこのアイデアを洗練させたい?

「演奏」をイメージしてこのような質問になりました。

このシステムで X68000 で使えるような音楽生成用のデータを作成することができるかということも知りたいのですが、そのためには今できる範囲で実際にやってみた方が良いかもしれません。