# オーディオをMIDIに変換（MP3・WAV対応）

録音のメロディ、コード、ベースラインをMIDIノートにして、編集したり好きな音色で鳴らし直したりできます。処理はすべてお使いのパソコンやスマホの中で行い、ファイルはどこにも送信しません。

## 要点

MP3やWAVを上のツールにドロップして「MIDIをダウンロード」を押すだけです。ブラウザが音声をモノラル・22,050Hzに変換し、Spotifyのオープンソースモデル「Basic Pitch」で1秒あたり約86フレームを解析して（[Basic Pitchのソースコード](https://github.com/spotify/basic-pitch/blob/main/basic_pitch/constants.py)）、4分音符＝480ティックのスタンダードMIDIファイルを曲のテンポ入りで書き出します。BPM96の曲で0.625秒の位置にあるノートは、ちょうど2拍目のティック480に置かれます。変換するのは最初の10分までで、音声は端末の外に出ません。

## しくみ：Basic Pitchとティックの計算

採譜モデルは、SpotifyのAudio Intelligence Labが公開している[Basic Pitch](https://github.com/spotify/basic-pitch)（Apache 2.0ライセンス）です。TensorFlow.jsでブラウザのバックグラウンドスレッドに読み込み、GPUが使えればGPU、使えなければCPUで動かします。音声をモノラル・22,050Hzにまとめ、256サンプルずつずらして解析するので、1秒あたり約86フレーム。フレームごとに鳴っている音高とノートの始まりを推定し、最後の後処理でそれを開始・終了・音高・強さをもつノートにまとめます。スライダーが動かしているのはこの後処理なので、調整は一瞬で反映されます。

スタンダードMIDIファイルは時間をティックで数え（ここでは4分音符＝480）、テンポを4分音符1つあたりのマイクロ秒で記録します（[SMF 1.1](https://midimusic.github.io/tech/midispec.html)）。BPM *B* の録音で *t* 秒目に始まるノートは `tick = round(t × B × 480 ÷ 60)` に置かれ、テンポイベントには `60,000,000 ÷ B` が入ります。その前に、最初に検出した拍がファイルの拍線に重なるよう、全ノートを同じ量だけずらしています。

## 計算例：BPM96の3つのノート

BPM96では1拍が60 ÷ 96 = 0.625秒で480ティック、テンポイベントは60,000,000 ÷ 96 = 625,000マイクロ秒です。曲の1拍目がファイルの先頭にあるとき：

| ノートの開始 | ティック | 置かれる位置 |
| --- | --- | --- |
| 0.000秒 | 0 | 1小節目の1拍目 |
| 0.625秒 | 480 | 1小節目の2拍目 |
| 1.406秒 | 1,080 | 1小節目の3拍目、2つ目の16分音符 |

エレキベース入りのBPM96のループから、シティポップ風のベースラインをシンセで弾き直すなら、検出テンポが96なのを確かめ、「最高音」をC3あたりにして上の音を除き、16分音符でスナップしてダウンロード。BPM96のプロジェクトに置けば、1小節目の頭から元のグルーヴのまま並びます。

## 対応範囲と制限

書き起こすのは音程のあるノートだけです。楽器の分離、ドラムの採譜（モデルがドラムを学習していないので、[ドラムマシン](https://xx808.com/ja/drum-machine/)で打ち込んでください）、楽譜の作成はしません。ビブラートやスライドはファイルに書かず、ノートは最も近い半音に丸めます。変換は最初の10分までで、メモリ不足を防ぐため（特にスマホ）それ以降は切り捨てます。200MBを超えるファイルと、30分を超えるとブラウザが事前に分かるファイルは、デコード前にお断りしています。

## 出典

- [Bittner, Bosch, Rubinstein, Meseguer-Brocal and Ewert, “A Lightweight Instrument-Agnostic Model for Polyphonic Note Transcription and Multipitch Estimation”, arXiv:2203.09893, 2022](https://arxiv.org/abs/2203.09893) — 変換に使っている採譜モデル。 2026年10月10日に確認。
- [Spotify, basic-pitch ソースコード, `constants.py`](https://github.com/spotify/basic-pitch/blob/main/basic_pitch/constants.py) — 22,050Hzの解析レートと256サンプルのホップ（1秒あたり約86フレーム）。 2026年10月10日に確認。
- [Standard MIDI-File Format Spec. 1.1, updated (midimusic.github.io)](https://midimusic.github.io/tech/midispec.html) — 4分音符あたりのティック数と、4分音符1つあたりのマイクロ秒で表すSet Tempoイベント。 2026年10月10日に確認。
- [Peter Kabal, “Wave File Specifications”, MMSP Lab, McGill University](https://www.mmsp.ece.mcgill.ca/Documents/AudioFormats/WAVE/WAVE.html) — PCM WAVファイルが1秒あたりに使うバイト数。 2026年10月10日に確認。

## MP3をMIDIに変換する手順

1. **ファイルを選ぶ。**MP3、WAV、M4A、FLAC、OGGのどれかを、上の枠へドラッグ＆ドロップします。スマホなら枠をタップして選択できます。
2. **解析を待つ。**初回だけ小さな採譜モデルをダウンロードし、2回目からはキャッシュを使います。
3. **ピアノロールを確認する。**「MIDIを試聴」と「原音を再生」で聴き比べます。
4. **整える。**「整理とクオンタイズ」のスライダーを動かします。重い解析はやり直さないので、すぐに反映されます。
5. **ダウンロードする。**「MIDIをダウンロード」で標準の`.mid`を保存し、CubaseやStudio One、Logic Pro、Dominoなどで開きます。

## WAVファイルを変換するとき

DAWからパラ出ししたWAVは、MP3で削られがちな倍音や小さな音が残っているので採譜に最適です。16bit、24bit、32bit floatのどれでも、サンプルレートを問わず22,050Hzのモノラルにして解析するので、下準備は要りません。気にするのはサイズだけで、PCM WAVの1秒あたりのバイト数は「サンプルレート × 1サンプルのバイト数 × チャンネル数」です（[WAVEフォーマット仕様](https://www.mmsp.ece.mcgill.ca/Documents/AudioFormats/WAVE/WAVE.html)）。上限と同じく1MB＝1,048,576バイトで数えると：

| 形式（ステレオ） | 1秒あたりのバイト数 | 1分あたり | 200MBに収まる長さ |
| --- | --- | --- | --- |
| 44.1kHz・16bit | 176,400 | 10.1MB | 約19.8分 |
| 48kHz・24bit | 288,000 | 16.5MB | 約12.1分 |
| 96kHz・24bit | 576,000 | 33.0MB | 約6.1分 |

3分の曲を48kHz・24bitでバウンスすると約49MBで、まるごと変換できます。AIFFはデコードできるブラウザ（Safari）でしか開けないので、ほかではWAVで書き出してください。

## 設定項目の意味

- **グリッドにスナップ**：開始と終了を4分・8分・16分音符か8分3連に寄せます。「スナップの強さ」を100%未満にすると、人間らしい揺れを少し残せます。
- **ノートの分割**：伸ばした音が細切れになるなら上げ、連打が1つにまとまるなら下げます。
- **信頼度**：上げると、かすかなゴーストノートや倍音、リバーブの残りが消えます。
- **最短ノート／最低音・最高音**：短すぎるノートを捨て、音域を絞ります。ベースだけなら最高音をC3前後に。
- **MIDIファイルの音色**：記録するGeneral MIDIのプログラム番号を決めるだけで、DAWではいつでも差し替えられます。

## テンポを書き込む理由

一律BPM120で書き出すツールだと、BPM96の曲ではノートがDAWの小節線からずれていき、クオンタイズでかえって崩れます。xx808は測ったテンポを書き込み、実際の拍に合わせたグリッドへノートを寄せます。検出値が半分や倍なら、テンポ欄を直すだけでグリッドが作り直されます。

## きれいに変換するコツ

楽器は1つずつ、エフェクトは控えめに、区間は必要な部分だけ。完成曲しかなければ先にステム分離ツールでパートを取り出し、数か所の手直しは前提で、耳コピの下書きとして使うのがおすすめです。

## よくあるご質問

### このMP3→MIDI変換は無料ですか？

はい、無料です。会員登録も、書き出したファイルへの透かしも、変換回数の上限もありません。処理はすべてあなたのデバイスで行うので、音声を扱うサーバーを用意する必要がないためです。

### 曲がサーバーへ送られることはありますか？

送られません。読み込みも解析もブラウザ上の処理です。確かめたいときは、開発者向け機能で通信の一覧を見るか、一度変換したあとで機内モードに切り替え、同じタブのまま別の曲を変換して試せます。

### ボーカルやドラム入りの完成曲もMIDIにできますか？

できますが、全楽器の音を同時に拾うので、混み合った使いにくいMIDIになります。楽器1つの録音か、分離したステムがおすすめです。

### WAVやM4A、FLAC、動画ファイルにも対応していますか？

ブラウザがデコードできれば使えます。MP3、WAV、AAC/M4A、FLACはどのブラウザでも、OGGとOpusはほとんどのブラウザで、WebMやMP4も多くは音声トラックを変換できます。

### ノートが1オクターブずれたり、重なったりするのはなぜですか？

強い倍音が、1オクターブ上や5度上の別のノートに見えることがあります。「信頼度」を少し上げるか、「最低音」「最高音」で音域を絞ってください。

### 書き出した.midはどのDAWで開けますか？

テンポ情報入りの標準MIDIファイル（フォーマット1、4分音符＝480ティック）です。主要なDAW、楽譜作成ソフト、.midを読み込めるハードウェアシーケンサーで扱えます。

結果は自動で推定したもので、間違ったノートや抜けが含まれることがあります。変換するのは、使う権利のある録音だけにしてください。Basic Pitchは© Spotify AB、Apache 2.0ライセンスです。xx808はSpotifyとは関係ありません。

更新日：2026年10月15日

ウェブページ：https://xx808.com/ja/mp3-to-midi/
