MIDI 工具

開啟 .mid 檔案即可檢視其結構、在鋼琴捲簾上觀察音符,並用內建的即時合成器試聽。可以移調、改變速度、靜音音軌或換樂器,然後匯出編輯後的 .mid。接上 MIDI 鍵盤(或用螢幕琴鍵)也能即時彈奏。一切都在本地執行 — 不上傳任何資料。
未載入 MIDI 檔案。
就緒。
鋼琴捲簾
Web MIDI 在 Chrome/Edge 中可用。Safari 與 iOS 不支援 — 請改用下方的螢幕鍵盤。
用滑鼠或電腦鍵盤彈奏螢幕鍵盤(A S D F G H J K L ; — 白鍵,W E T Y U O P — 黑鍵)。
什麼是 MIDI?

MIDI(樂器數字介面,1983 年標準化)不是音訊。它是一種線路協議和檔案格式,用來傳遞演奏指令:哪個鍵按下、何時按下、力度多大、該由哪種樂器發聲。MIDI 檔案更接近自動鋼琴的打孔紙卷,而不是錄音 — 它存的是動作手勢,任何收到這些指令的合成器都能據此發聲。這一區別解釋了本頁所做的一切:檢視、移調、變速和換樂器之所以可行,正是因為 .mid 檔案裡是可編輯的指令,而不是固定的波形。

五個事實,幫你理解本頁其餘內容:
• MIDI 檔案不含任何音訊 — 只有音符、時值和樂器編號
• 每個音符都是一個數字:60 = 中央 C(C4),69 = A4 = 440 Hz,一個八度 = 12 個半音 = 頻率正好翻倍
• 力度(擊鍵的輕重)範圍是 0–127
• 檔案的內部時鐘以 tick 計,不是秒;速度以“每四分音符多少微秒”儲存(120 BPM = 500,000)
• General MIDI 規定了 128 種標準樂器,所以同一個 .mid 檔案在任何合成器上聽起來都差不多
MIDI 是指令,不是音訊

一個 .mid 檔案是一串短事件。Note On 表示“通道 1,按鍵 64,力度 100”;之後對應的 Note Off 把它釋放。控制變更事件控制踏板與旋鈕;程式變更事件選擇樂器。由於這些事件只說演奏什麼而不說聽起來如何,同一份檔案經 1990 年代音效卡晶片、本頁的 WebAudio 合成器和專業取樣音源播放,會呈現出三種差異極大的演繹 — 就像同一份樂譜用三臺不同的鋼琴演奏。若你需要固定、可移植的音訊,那是 MIDI 轉 WAV 渲染器的工作:它把某個合成器的演繹固化成波形。

音符、編號與鋼琴捲簾

MIDI 用編號命名音符,並內建十二平均律:頻率 = 440 × 2(n−69)/12。所以 69 號音符正好是 440 Hz,60 號是中央 C(261.63 Hz),任何 12 個半音的跳躍都會讓頻率翻倍(或減半)— 這正是把上面的移調滑桿推到 +12 或 −12 時所發生的。上方的鋼琴捲簾就是把這些數字畫成圖:音高縱向排列(低音在下),時間橫向展開,每個音符畫成一根橫條,長度即其時長,顏色深淺則來自力度。

Tick、PPQ,以及速度為何可自由改變

在標準 MIDI 檔案內部,時間以檔案的 PPQ(每四分音符的脈衝數 — 常見為 480,即一個四分音符持續 480 個 tick)為單位計為 tick。速度則單獨存在一個事件裡,單位是“每四分音符多少微秒”:120 BPM 是 500,000,60 BPM 是 1,000,000。由於音符位置以音樂單位而非秒來儲存,改變速度只會重新縮放一切發生的時間,而不會挪動任何一個音符 — 上面的速度滑桿正是利用了這一點,匯出按鈕則會重寫事件,讓其它播放器也能重現你的編輯。

常見誤解
  • MIDI 檔案錄下了音樂。不對。它錄的是演奏指令。一首三分鐘的流行歌只佔幾十 KB,因為沒有儲存任何波形 — 這也正是同一個檔案在每臺合成器上聽起來都不一樣的原因。
  • MIDI 天生音色廉價。不對。“廉價”的名聲來自 1990 年代音效卡晶片的簡陋波形。同樣的 MIDI 資料經專業 SoundFont 或管絃樂取樣音源播放,與製作完成的成品曲並無區別 — 指令是完整的,差別在渲染器。
  • 力度就是音量。不止如此。在真實的鋼琴上,擊鍵越重,聲音不僅更響而且更亮;優秀的合成器會模擬這一點,把力度同時對映到音色和音量上。MIDI 的 0–127 區間正是為合成器保留了演奏者的觸鍵細節。

相關工具:MIDI 轉 WAV 可把 MIDI 渲染成固定波形,音訊頻譜 可分析渲染結果,而當你需要在真實音訊上獲得同樣的伸縮自由時,可用 音訊變速 / 變調。