線上音訊變調測試是一種在瀏覽器中,透過選擇 -12 到 +12 半音之間的整數位移,來提高或降低單一音訊檔案感知音高的方式,其中 +12 正好將音高提高一個八度,-12 則將其降低一個八度。整個測試完全在當前的瀏覽器分頁中執行:檔案讀取、解碼、重取樣與 WAV 編碼都不會離開您的電腦,因此原始錄音不會上傳至任何伺服器。由於此工具採用播放速率重取樣而非專屬的時間伸縮演算法,提高音高也會縮短並加快音訊;降低音高則會延長並減慢音訊——這個關係正好由公式 2^(n/12) 描述,適用於任何整數半音值 n。因此,當您想在匯出之前預覽一首歌、語音備忘或音效升高一個八度、降低一個八度或介於兩者之間的聽感時,測試就是正確的做法。每次成功測試的輸出都是一個新編碼的未壓縮 PCM16 RIFF/WAVE 檔案,您可在任何標準音訊播放器中下載並播放。

audio pitch changer test online
線上音訊變調測試:在本地端改變音高

線上音訊變調測試實際上做了什麼

「音訊變調測試線上」這個詞描述了一個包含三個變動部分的快速工作流程:一個上傳的音訊檔案、一個選定的半音值,以及一個可在本地播放器中試聽的下載 WAV。這個路徑刻意設計得很短,讓您能快速反覆運算——選一個值、算繪、聆聽、調整、再算繪。每次輸入或半音變更都會在另一次算繪開始前使先前的結果失效,因此下載的檔案始終反映最近的選擇。陳舊的算繪資料不可能滲入下一次測試,因為進行中的解碼與離線算繪工作會透過一個忽略較舊完成狀態的身分識別來追蹤。

變調測試的結果不僅僅是更高或更低的音符。由於實作是以非單位播放速率重新算繪音訊,檔案的持續時間也會以該速率的倒數改變。+12 半音的測試(升高一個八度)以 2 倍速度播放,耗時約為原始時間的一半。-12 半音的測試(降低一個八度)以 0.5 倍速度播放,耗時約為原始時間的兩倍。Web Audio 規範將 AudioBufferSourceNode 的音分與速率關係定義為 2^(detune/1200);由於每個半音為 100 音分,該公式可化簡為 2^(semitones/12)。MDN 文件說明,低於 1 的 playbackRate 會減慢音訊,高於 1 則會加快音訊,而非單位速率會導致來源被重取樣——這正是本測試中發生的事情。

半音範圍以及持續時間為何隨音高改變

音訊變調器接受 -12 到 +12 半音之間的整數音高位移。在該範圍內,每個數值都遵循十二平均律,這是 McGill 大學關於 MIDI/頻率轉換的課程教材所描述的同一個調音系統:一個八度包含十二個等分半音,每個半音的頻率比為 2^(1/12)。由於播放速率使用相同的指數關係,任何半音值 n 的速率正好是 2^(n/12)。下表列出您在線上測試音訊音高時最重要的速率。

半音位移播放速率感知音高變化大約持續時間
-120.5x降低一個八度約為 2 倍長
-7~ 0.749x降低完全五度約為 1.33 倍長
-5~ 0.840x降低完全四度約為 1.19 倍長
01x無變化不變
+5~ 1.189x升高完全四度約為 0.84 倍短
+7~ 1.498x升高完全五度約為 0.67 倍短
+122x升高一個八度約為 0.5 倍短

由於上表每個項目都是 2^(n/12) 的封閉形式計算結果,這些速率正是該公式的精確輸出,而非由工具結果計算得出的數字。持續時間一欄以方向與大致幅度定性描述,因為精確的持續時間取決於輸入檔案的幀數,而非某個算術平均值。

要看公式如何應用於實際測試,假設一個 180 秒的輸入檔案採用 -5 半音位移。播放速率為 2^(-5/12) ~ 0.840,因此算繪後的長度大約為 180 / 0.840 ~ 214 秒,即約 3 分 34 秒。這種代入讓十二平均律的數學更具體,而不需依賴任何逐樣本的計算。

如果您的測試目標是在確認音高變化後再進行處理,那麼一個半音是最小的可聽步進;完全五度(+7 或 -7)是未受訓練聽眾最熟悉的音樂音程;而八度端點(+12 和 -12)則是在極端範圍驗證結果是否正確的最簡單方式。

如何在本地端線上測試音訊音高

完整的測試迴圈只需要幾次點擊,因為每個階段都在瀏覽器分頁中執行。要使用 音訊變調器進行線上音訊變調測試,請依照下列步驟:

  1. 在瀏覽器中開啟音訊變調器,並選擇一個瀏覽器能原生解碼的音訊檔案。此工具接受常見且瀏覽器可解碼的 MP3、WAV、M4A、AAC、Ogg、WebM 與 FLAC 輸入,且編碼後的檔案不得大於 50 MiB。
  2. 將半音位移設定為 -12 到 +12 之間的整數。請記住,正值越高,結果越短且越快;負值越低,則越長且越慢。將其保留為 0 以確認原始音高算繪後不變。
  3. 觸發本地算繪。瀏覽器會解碼檔案,將輸出幀數計算為輸入幀數除以播放速率 2^(n/12) 的上限,然後透過 OfflineAudioContext 以解碼後的取樣率算繪完整結果。
  4. 檢視結果旁所顯示的持續時間變化,以便準確知道檔案變長或縮短了多少。
  5. 下載產生的 PCM16 WAV。下載的檔案是 RIFF/WAVE 容器中未壓縮、交錯、小端序的 PCM16,由剛算繪的音訊編碼而成。

如果工具回報錯誤而未產生下載檔案,最常見的原因包括:輸入超過 50 MiB 的編碼限制、解碼後的樣本預算超過 3000 萬通道樣本,或是降低音高的測試會使輸出超過其自身的 3000 萬通道樣本上限。在每種錯誤情況下,工具都不會產生下載——檔案不會被靜默截斷。

影響測試的輸入與輸出限制

音訊變調器在決定進行算繪前會套用多項限制。編碼後的輸入檔案上限為 50 MiB。解碼後,音訊的長度上限為五分鐘、通道數上限為八個、取樣率介於 8,000 至 192,000 Hz 之間。輸入解碼步驟的上限為 3000 萬通道樣本,而變調後的輸出則另有 3000 萬通道樣本的上限。

這兩項上限以對測試至關重要的方式互相影響。降低音高會延長檔案,因為播放速率低於 1,所以符合 3000 萬解碼上限的輸入,仍可能產生超過 3000 萬上限的輸出。發生這種情況時,工具會回報所要求的位移超出預算,且不會產生任何檔案——沒有會寫出縮短檔案的靜默後備機制。每次輸入或半音變更都會使先前的結果失效,因此您可以用較小的位移或較短的輸入重新測試,新的下載檔案將只反映最新的設定。

空檔案、不支援的類型、無效的解碼維度以及解碼失敗都會在最前端、離線算繪開始之前被拒絕。失敗的測試幾乎不會花費時間,也不會留下需要清理的殘留工件。當工作失效時,解碼情境會被關閉,離線來源會被停止或斷開;下載的 Object URL 在被取代或元件卸載時會被撤銷,因此長時間的測試工作階段不會洩漏記憶體。若想更深入了解這些限制與十二平均律公式的關聯,音訊變調器的準確度、數學、限制與結果指南會更詳細地說明相同的數字。

何時播放速率重取樣是合適的選擇

當音高與速度應一起變動時,變調測試就是合適的工具,因為播放速率重取樣正好是該操作。練習較高音調的歌曲、以低一個八度試聽語音備忘、聆聽極端音高的音效,或進行快速的創意實驗,都是持續時間變化可接受甚至理想的情境。

當您需要音高變動但持續時間保持固定時,變調測試就不適合。產品的合約明確指出,此工具不會保留速度、語音節奏、拍點位置或原始持續時間;因此,如果製作需求要求音高改變但長度不變,您需要改用專用的相位聲碼器或其他時間伸縮工作流程。

瀏覽器重取樣的品質由實作定義,強烈的向上位移可能會暴露出原本較不明顯的失真或編碼器瑕疵。輸出適用於快速的創意實驗、練習曲目、音效以及粗略的剪輯——它並不被定位為透明的母帶處理流程。

檔案輸出與下載的 WAV 內容

每次測試都會產生一個新編碼的檔案,而非輸入的重新封裝副本。輸出是標準 RIFF/WAVE 容器中未壓縮、交錯、小端序的 PCM16。浮點樣本在轉換前會被裁剪至合法的 -1 到 +1 區間,這代表非常大的峰值可免於繞回失真,但檔案不會保留原始的編解碼器、壓縮品質、位元率、標籤、封面、章節、提示點、循環詮釋資料或容器詮釋資料。PCM16 的量化也可能與解碼後的浮點來源有所不同。

此頁面刻意不在瀏覽器中產生音訊預覽,因此試聽結果的唯一方式是下載 WAV 並在信任的本地播放器中播放。處理與樣本資料保留在當前的瀏覽器分頁中;不會上傳任何來源音訊或算繪後的音訊。如果您還需要在匯出前將測試結果修剪為特定段落,像 音訊剪輯工具這樣的工具可在同一類型的解碼音訊上於本地運作,並寫出另一個 PCM16 WAV。

如果您在權衡各種選項,如何挑選合適的音訊速度變更方式對此有詳細說明。