すべてのプロジェクト

Beat Analyser

音声を入力すると、タイミング付きのリズムとノートのイベントを出力

公開済み

ライセンス
MIT
技術スタック
PythonRustFlaskDocker

MP3、WAV、FLAC、OGG、M4A のファイル、または YouTube のリンクを渡します。キック、スネア、ハイハット、ビート、ベース、コード、メロディのトラックごとに1つの CSV をまとめた ZIP と、検出されたテンポとキーが返ります。生の音声ではなく個別のイベントをゲームエンジンや手続き型音楽に渡すために作られています。

仕組み

  • リズムは Rust 拡張が担当します。オンセット、ドラムの種類、テンポ、ビートグリッドを求めます。
  • ノートは ONNX Runtime 上で動く basic-pitch モデルから得ます。
  • CSV の各行は秒単位の時刻とラベルで、そのままゲームやシーケンサーに読み込めます。

例

$ docker pull levialabs/beat-analyser
docker run --rm -p 127.0.0.1:80:8000 levialabs/beat-analyser
# Web UI on http://localhost