svsdval/video2midi
youtube synthesia video to midi
解決する課題
Synthesiaのピアノチュートリアル動画は仮想キーボード上に落ちてくる音符を表示しますが、それらは編集や音楽としての共有が可能な形式ではありません。このツールは、そのような動画からキーボードの動きを自動的に抽出し、MIDIファイルを作成します。これにより、演奏の再生、再編曲、学習や共有のための音楽活用が可能になります。
仕組み
プログラムは動画をフレームごとにスキャンします。ダウンロードしたSynthesia動画(720p推奨)を読み込み、グラフィカルインターフェース上で画面上のキーボード位置とキーの色を動画に合わせて調整します。Qキーを押すと自動認識が開始され、どの瞬間にどのキーが押されたかを追跡し、ノートオン/オフイベントを記録してMIDIファイルに書き出します。また、開始フレームと終了フレームの設定、キー位置に基づいた2チャンネルへの強制分割、重なり合う音符の処理も可能です。処理後、内蔵のノートエディタを使用して、保存前に個々の音符を微調整(移動、サイズ変更、削除、分割)できます。
対象ユーザー
ミュージシャン、ピアノ学習者、またはSynthesiaスタイルの動画を実用的なMIDIファイルに変換したい人を対象としています。Pythonスクリプトを実行し、依存関係(OpenCV, Pygame, MIDIUtil)をインストールする必要があるため、ある程度の技術的な知識が必要です。趣味のプロジェクトですが、基本的な使用方法については十分にドキュメント化されています。
ハイライト
- 仮想キーボードのフレーム単位のスキャンによるキー押下の検出
- キー位置、色、認識オプションを調整するためのグラフィカルインターフェース
- キーの色に基づいたマルチチャンネルMIDI出力(例:左右の手や楽器ごとに別々のチャンネルを設定可能)
- 内蔵ノートエディタ:音符の移動、サイズ変更、削除、分割、手動追加が可能
- すべての設定はINIファイルに保存され、繰り返し利用が容易
- Linux、Windows(Anaconda使用)、Web版、Androidアプリで利用可能
- GitHub discussionsおよびリンクされたビデオチュートリアルによるコミュニティサポート
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト