Skip to content

masahiko-nitanda/8bit-bgm-generator

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

8bit BGM generator

8bit BGM generator は、「作曲スキルがないけど、Pyxel の自作ゲームに BGM を入れたい」という方のための BGM 自動生成ツールです。

Pyxel をお持ちの方でなくても、ブラウザ版で体験いただくことができます。また、自動生成された曲を mp3 などの音声ファイルとして録音すれば、Pyxel 以外のレトロゲーム開発や、動画の BGM 等に使っていただくことも可能です(詳しくは後述)。

問題点を発見したり、要望がある方は、Twitter frenchbread (@frenchbread1222) まで DM 等でお知らせください。

自動生成の仕様

8 小節、3 パートの曲を生成します。3 パートの構成は「メロディ+ベース+ドラム(ノイズドラム)」または「メロディ+リバーブ(ディレイ)+ベース」です。

3 チャンネルしか使用しないため、生成した曲を Pyxel で取り込んだ場合、残りの 1 チャンネルを効果音用に使えます。

テンポ、コード進行、ベースとドラムのリズムなどは登録されているパターンから指定します。メロディは自動生成ですが、パラメータによりある程度調整することもできます。

よくわからないという方は、とりあえず「きほん」タブの「プリセット」を適当に選択してみてください。その後でテンポを変えたり、リズムを差し替えることで、好みの曲調に近づけることができると思います。

ツールの使い方

  • ブラウザ上で動かす場合: https://retro-bgm-generator.web.app/ (スマートフォンでも動きますが、画面が小さく操作しづらいのと、作成した曲をエクスポートするのが困難なので、お試し用途以外は PC からアクセスください。)
  • ローカル環境で動かす場合: このリポジトリをダウンロードして、pyxel play 8bit-bgm-gen を実行してください。

自動生成した曲を使うには?

①Pyxel で使う場合

ツールのエクスポートアイコンをクリックすると説明が表示されますので、その説明を参照してください。

Pyxel のサウンド仕様に沿ったテキストデータを json ファイルとして保存し、これをゲーム本体のスクリプトで読み込んで再生する形になります。(リポジトリ内の play.py 参照。)

②Pyxel 以外で使いたい場合

現時点(ver 1.02)ではサポートが不十分ですが、たとえば Chrome の拡張機能「Chrome Audio Capture」 などを使うことで、ブラウザ上で鳴らしているシステムサウンドを mp3 ファイルなどに録音することができます。(実際にゲームなどで使う場合は、無音部分のトリム編集などが必要になってきます。)

こういった方法で作成した音声ファイルも自由に使っていただいて問題ありません。

チュートリアル動画

こちらをご覧ください(Youtube が開きます)

更新履歴

2023/09/23 Ver1.10 メロディ生成アルゴリズム改善、サブメロディ生成に対応

2023/09/09 Ver1.02 ブラウザ版のエクスポートに対応

2023/06/01 Ver1.01 Windows でローカル実行時にファイル保存できないバグを修正

2023/05/08 Ver1.00 初版リリース

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • HTML 76.5%
  • Python 23.5%