このプロジェクトについて
Basic Pitchは、SpotifyのAudio Intelligence Labが開発した自動音楽採譜(AMT)用のPythonライブラリです。軽量なニューラルネットワークを使用して、オーディオファイルをピッチベンド情報を含むMIDIに変換します。このプロジェクトは楽器非依存で、ポリフォニック採譜に対応していますが、一度に1つの楽器に対して最も良い結果が得られます。
このライブラリはpip(`pip install basic-pitch`)でインストール可能で、npmインストール用のTypeScript版リポジトリも併設されています。macOS、Windows、Ubuntuをサポートし、Pythonバージョンは3.7から3.11に対応しています。Mac M1ハードウェアでは、現在Python 3.10のみがサポートされています。
Basic Pitchには複数のモデルランタイムオプションが同梱されています:元のTensorFlowモデルに加え、CoreML、TensorFlowLite、ONNXへの変換版があります。デフォルトでは、プラットフォームに基づいてランタイムを選択します(macOSではCoreML、LinuxではTensorFlowLite、WindowsではONNX)。Python 3.11+を使用しない限りTensorFlowはインストールされません。ユーザーは`pip install basic-pitch[tf]`でTensorFlowを明示的にインストールできます。
このライブラリはコマンドラインインターフェースとプログラムAPIの両方を提供します。CLIは出力ディレクトリと1つ以上の入力オーディオパスを受け取り、オプションでソニファイドMIDIをWAVとして、生のモデル出力をNPZとして、ノートイベントをCSVとして保存できます。プログラムAPIには、モデル出力、MIDIデータ、ノートイベントを返す`predict()`と、出力生成を調整する`predict_and_save()`が含まれます。繰り返し予測を行う場合、ユーザーはモデルを一度ロードして`predict()`に渡すことで、冗長なロードを回避できます。
サポートされるオーディオ形式は、mp3、ogg、wav、flac、m4aです。ステレオ入力はモノラルにダウンミックスされ、すべてのオーディオは22050 Hzにリサンプリングされます。モデルは任意の長さのオーディオを処理できますが、非常に大きなファイルは利用可能なディスク容量によって制限される場合があります。
Basic Pitchは、ICASSP 2022で発表された研究論文「A Lightweight Instrument-Agnostic Model for Polyphonic Note Transcription and Multipitch Estimation」とともにリリースされました。デモはbasicpitch.ioで利用可能で、コミュニティメンバーによって開発されたVSTバージョンのNeuralNoteもあります。このプロジェクトはApache 2.0ライセンスで提供され、貢献を歓迎しています。
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.