LoginSignup
2
1

自動作曲アプリを書く

Last updated at Posted at 2023-07-24

はじめに

卒業研究で自動作曲システムを作ったので、応用してブラウザで動くアプリを作ろうと思いました。

目次

  1. アプリの概要
  2. フロントエンド
  3. バックエンド
  4. ソースコード
  5. 今後の課題

アプリの概要

キーを選択し、ダウンロードボタンをクリックすると、MIDIファイルが入ったZIPファイルがダウンロードされます。
スクリーンショット 2023-07-24 181911.png
image.png

スクリーンショット 2023-07-24 192305.png

ZIPファイルを解凍するといくつかのMIDIファイルが入っています。
この中からchord.midとmelody.midを選んで、DAWソフトで適当なピアノ音源を付けてみます。
URL: https://on.soundcloud.com/reEthioEcfb3i8TR8

ドラムを付けるとこんな感じ
URL: https://on.soundcloud.com/Cc9TzK16oT8qPmH79

フロントエンド

Reactで書きました。
キーを選択してダウンロードボタンを押すと、バックエンドにキー情報のパラメータを持ったリクエストが送られるようになっています。

バックエンド

Goで書きました。
フロントエンドから送られたリクエストのパラメータから、音楽(MIDIファイル)を作ります。
キーに合わせて、コード、メロディ、ドラムのMIDIファイルを生成し、ZIPファイルにしてクライアントに送信します。
コード進行を生成する際は、和音の情報を持つデータベース(SQLite)を使用します。

ソースコード

Dockerを使用してローカル環境で使えるようになっています。
AWSのEC2上にもデプロイしています。
URL: http://35.200.71.243:3000/

今後やりたいこと

・曲調のパラメータを増やす
・ブラウザ上で音楽を流せるようにする
・変更してすぐにデプロイできる環境を構築する

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1