當音訊處理結果看起來有誤時,原因幾乎總是六種可量測狀況之一——數值過高、在 -1 到 +1 的樣本範圍上發生非預期的截波、峰值未移動、殘響超出 3000 萬聲道樣本的輸出預算、檔案解碼失敗,或效果選擇與聆聽者的預期不符——而 Audio Effects Online 會在頁面上印出足夠的數字,讓你知道是哪一種情況發生。修正方式隨診斷結果而定:調整數值、換效果、縮短來源,或改用多個較小階段的鏈式處理,而非一次跑完大量的運算。這個工具是本機且具確定性的,並會回報每一個輸入與輸出的數字,所以一旦讀過這些數字,看起來錯誤的結果很少會成為謎團。關於該操作的資訊,包括其限制以及並無任何上傳步驟,能幫助使用者驗證這六種狀況:數值為介於 0 到 100 之間的整數,截波落在合法浮點範圍內,因此沒有樣本逸出量化,峰值在正規化後移動了預期的幅度,殘響與迴音的尾段符合三千萬聲道樣本的輸出預算,來源檔案在嘗試任何效果之前已透過瀏覽器的 Web Audio 實作成功解碼,所選效果符合音訊實際需求,而非使用者對通用音訊處理工具的預設想像。有了這些檢查步驟,復原作業就會變得有跡可循。
大多數進入本頁的讀者,都已經按過一次 Apply,並感覺結果比原本更響、更小、更單薄,或就是與腦中的聲音不同。各種情況下的復原步驟都一樣:重新開啟原始檔案、檢查數字、選擇更小的數值或不同的效果,然後重新執行。這些步驟都不需要上傳檔案,也都不會修改來源。

在音訊處理後,「看起來錯誤」通常代表什麼
當結果「看起來錯誤」時,使用者通常是指以下六種具體狀況之一:輸出聽起來失真、輸出突然比原始檔更安靜、殘響缺失或被截斷、效果套用到了錯誤的檔案、選錯了效果,或是根本沒有產生任何檔案。這些情況各自有不同的原因與不同的首要修正方式。確認是哪一種情況很重要,因為復原步驟各有不同——降低數值是處理截波的正確回應,但對處理殘響缺失來說卻是錯誤的回應。
預期與實際聽到之間的落差越小,修正方式就越可能只是小幅調整數值,而非更換工具。落差越大——例如要求「錄音室空間」的殘響,卻得到一段輕微的早期反射音——修正方式就越可能是降低對單一輕量效果的期待,並改用一連串較輕的處理階段,而非單次重度執行。這個工具不會隱藏它實際做的事情;但它也不會假裝自己是 convolutional reverb、impulse-response loader,或是硬體 plate reverb。
套用後閱讀頁面所回報的數字
Audio Effects Online 在處理完檔案後會印出六個數字:聲道數、取樣率、輸入框數、輸出框數、輸出峰值,以及下載檔案的精確 WAV 位元組大小。這些數值是確認實際發生情況的最快方式,並且與 W3C Web Audio 規範中解碼 AudioBuffer 長度(以 sample frames 為單位)的定義一致(W3C Web Audio API)。如果輸入框數低於輸出框數,表示工具加入了殘響(殘響或迴音)。如果兩者相等,表示效果是樣本對齊的(反向混音、淡入或淡出,或正規化)。如果輸出峰值落在 0.95 附近或剛好低於 0.95,表示正規化已執行並將最響的樣本封頂。如果輸出峰值固定在 1.000,但結果聽起來是乾淨的,則表示音訊已觸及合法浮點上限,並在被寫成十六位元 PCM 之前先被截斷在 -1 到 +1 的範圍內,這就是波形在邊緣處整齊截止的原因。
以正規化為例的快速計算示範:如果解碼緩衝區中最響的絕對樣本為 0.4,且使用者選擇了正規化效果,則縮放係數為 0.95 除以 0.4,等於 2.375。接著每個解碼後的樣本都會乘以 2.375,因此原本為 0.3 的樣本會變成 0.7125,原本為 -0.2 的樣本會變成 -0.475。在乘法之後,任何高於 1.0 或低於 -1.0 的樣本都會被截斷到合法範圍內,結果會被量化為帶正負號的十六位元 PCM。如果使用者在稽核某次執行,比較效果前後的峰值就能立刻判斷正規化是否實際生效。在每次執行後檢查結果這個步驟,能將復原循環變成一個可靠的習慣。
從看起來錯誤的結果中復原
- 重新開啟原始、未經修改的檔案。不要對先前的輸出再執行一次,因為迴音、殘響與正規化都會改變動態,第二輪執行會讓這些改變更為複雜。
- 記下頁面上的聲道數、取樣率與輸入框數。確認檔案確實已解碼——如果沒有出現任何數字,則表示檔案解碼失敗,也未產生任何結果。
- 查看輸出峰值。如果在殘響或迴音處理後,它與輸入峰值大致相同,則表示數值小到聽不見;應該提高。如果恰好在 1.0,則表示結果已被截波;請降低數值並重新執行。
- 比較輸入與輸出框數。對於 100 percent 的迴音而言,輸出應該大約等於輸入加上以樣本計算的延遲時間。如果輸出比這個還短,則代表殘響超出了三千萬聲道樣本的輸出預算,且不會產生檔案——請縮短來源。
- 針對「選錯效果」的情況,依目標從殘響切換到迴音、從反向切換到淡入淡出,或從正規化切換到淡出。該工具每次執行只套用一種效果。
- 以更小的數值重新套用、下載新的 PCM16 WAV,並再次檢視相同的六個數字。重複這個循環,直到輸出符合預期。
將症狀對應到正確的效果與數值
| 症狀 | 可能原因 | 首要修正方式 |
|---|---|---|
| 輸出失真或刺耳 | 原始與延遲的樣本在 1.0 以上重疊並截波到上限 | 將數值降低 20 至 30 percent |
| 輸出遠小於輸入音量 | 數值偏低,因此加入的延遲複本較小,而原始訊號始終保留 | 提高數值,或接著執行正規化 |
| 正規化後輸出無聲 | 解碼後的來源本身就沒有可縮放的可聞樣本 | 使用其他播放器驗證原始檔 |
| 殘響缺失或短於預期 | 超出三千萬聲道樣本的輸出預算;不會產生檔案 | 在重新執行前先縮短來源長度 |
| 完全沒有出現檔案 | 檔案大於 50 MiB、無法識別的編解碼格式,或超出輸出預算 | 使用更小的檔案、更輕的效果,或縮短輸入 |
| 殘響聽起來帶有金屬感或單薄 | 該殘響是固定的三點反射設計,並非空間或 convolutional reverb | 使用多個較小殘響與淡入淡出的鏈式處理 |
| 反向聽起來雜亂或混濁 | 高數值的反向混音使原始樣本以錯誤順序重疊 | 降低數值,或在 100 percent 下單獨使用反向 |
這個表格涵蓋了最常出現的情況。截波的殘響是最常見的單一症狀,因為原始與延遲樣本會在同一瞬間重疊,並立刻觸及合法樣本上限;降低數值是唯一安全的修正方式,因為工具在量化之前已將有限的樣本截斷在 -1 到 +1 之內。正規化後的「無聲輸出」代表來源本身就是無聲的,因為正規化會以實際存在且最響的樣本為基準進行縮放,並以相同的係數乘以所有樣本。迴音的殘響短於預期代表的是預算已達上限,而非效果計算錯誤,而該工具刻意不會截斷以提供一個不完整的檔案。
讓結果完全無法出現的限制
三項明確的限制會使工具無法產生任何檔案,且這些情況都會表現為「什麼事都沒發生」,而不是「聲音錯誤」。大於 50 MiB 的檔案會在解碼前被拒絕。檔名可被辨識(MP3、WAV、M4A、AAC、Ogg、WebM、FLAC),但瀏覽器無法解碼其編解碼格式或設定檔時,頁面上不會顯示任何數字;可辨識的檔名並不保證該編碼後的檔案一定能解碼,若解碼失敗則工具不會產生結果。當輸入長度加上迴音或殘響的尾段超過三千萬聲道樣本時,也會在不截斷的情況下遭到拒絕——工具不會默默地截斷尾段,因為被截斷的迴音或殘響比起完全沒有檔案,更難以解讀。
面對每一項限制,復原方式都遵循相同的模式:縮短來源、選擇更輕的效果,或降低數值,使計算後的輸出保持在預算之內。頁面只會在成功時顯示預算,因此按下 Apply 後出現空白結果,就是這三項限制之一被觸發的訊號。以原始編解碼格式重新載入檔案,通常能釐清失敗原因是來自檔案大小還是解碼,因為無法識別的設定檔所產生的錯誤路徑,會與過大的檔案不同。
建立安全鏈,而非堆疊所有效果
由於 Audio Effects Online 每次執行僅套用一項轉換,自然的復原工作流程就是鏈式處理:下載結果、檢查回報的數字,然後將該 WAV 當作下一輪的輸入。這也是在不喪失 headroom 的前提下,結合正規化與殘響、或反向與淡入淡放唯一安全的方式。重複的有損解碼接著 PCM16 量化,可能會使 MP3 或 AAC 壓縮的來源瑕疵變得明顯,而重複的截波或正規化會在每一輪中改變動態,因此記錄一個可重複、且對每一步使用的數值與效果留下記錄的工作流程是值得的(Audio Effects Online:記錄可重複的工作流程)。當鏈式處理本身就是重點時,每次執行後檢查結果,才能避免鏈條失準。
隨時保留一份未經修改的原始檔案。這份合約是明確的:僅會匯出新的交錯 little-endian PCM16 RIFF/WAVE,原始的編解碼格式、位元率、標籤、封面、章節、cue 點與循環標記都不會被保留。浮點樣本會被量化為帶正負號的十六位元 PCM,這就是為什麼結果看起來「固定」在 1.000 仍是有效的下載——截波發生在量化之前。Audio Effects Online在每次執行時都會回報相同的六個數字,因此一連串的數值就能提供完整的稽核紀錄,無需上傳任何檔案,也不需帳號。如果復原鏈出錯,原始檔就是重置按鈕。