ByteScope

Audio Denoise

把人聲錄音丟進來(影片也行,只會用到音軌),前 15 秒馬上就能聽到乾淨的版本。「原始」和「降噪後」可以隨時切換,播放位置不會跑掉;決定要去掉多少雜音之後,下載一個跟原檔一樣長的 WAV。RNNoise 以 WebAssembly 跑在 Web Worker 裡,檔案從頭到尾都在你的電腦上。

檔案不會離開你的瀏覽器 — 全部在本機處理。

把音訊或影片檔拖到這裡,或點一下選檔案

一次一個檔案:MP3、M4A、WAV、OGG、FLAC,影片則取它的聲音

開始之前

  • 它是用人聲訓練的:對冷氣、風扇、街道聲很有效,但音樂會被破壞,不要拿來處理歌曲。
  • 它不會去除回音(殘響)、不會修好破音(削波),也不會把遠處的人聲拉近。
  • 降噪太強時,人聲會有「水聲」或斷斷續續,用強度滑桿調回來。
  • 用瀏覽器錄的音,錄的時候可能已經開了降噪,再處理一次效果有限。
  • 這個版本每個檔案最多處理單聲道 30 分鐘、立體聲 15 分鐘。
  • 檔案只在這個分頁裡處理,不會上傳。
  • 輸出是 48 kHz、16 位元的 WAV,聲道數和原檔一樣。

關於這個工具

在真實房間裡錄的音,會把房間一起錄進去:筆電風扇、冷氣、窗外的車聲、鍵盤或冰箱的嗡嗡聲。這一頁用 RNNoise 把這類「一直在響」的背景雜音從人聲裡去掉。RNNoise 是 Jean-Marc Valin 在 2018 年發表的循環神經網路語音降噪器,這裡把它編譯成 WebAssembly,放在瀏覽器的 Web Worker 裡跑。頁面背後沒有伺服器:解碼、處理、寫檔都在你自己的機器上完成,所以沒有排隊、不用帳號,也沒有按檔案大小收費這回事。接受 MP3、M4A、WAV、OGG、FLAC,也接受 MP4、MOV 這類影片檔,影片只會讀音軌。每個聲道都保留並各自處理,立體聲進去就是立體聲出來。

先聽,不用等

前 15 秒會先處理,幾乎馬上就能播。後面還在跑的時候,你就可以用「原始/降噪後」的開關來回比對,播放位置會保留,所以同一句話可以反覆切換聽。強度滑桿從 0 到 100%,預設 85%:留一點點原本的雜音,比字與字之間完全無聲更自然——降噪過頭的錄音聽起來很假,問題就出在那裡。調整強度只是把兩路訊號混在一起,不是重跑一次,所以立刻生效,永遠不會重新處理檔案。

會拿到什麼

結果是 48 kHz、16 位元的 WAV,長度和聲道數都跟原檔完全一樣。RNNoise 原生就是在 48 kHz、每 10 ms 一個音框下運作,所以輸入會先重新取樣到這個取樣率;44.1 kHz 的 MP3 丟進去,拿回來的是 48 kHz 的 WAV。WAV 沒有壓縮,乾淨的人聲不用再過一次有損編碼——單聲道每分鐘約 5.8 MB,立體聲加倍。處理期間整個檔案都放在記憶體裡,所以目前的上限是單聲道 30 分鐘、立體聲 15 分鐘;更長的錄音請先用音訊編輯軟體切成幾段。

修不了的事

RNNoise 只用語音訓練過,別的都沒有。音樂會被當成雜音處理,然後被弄壞——不要拿歌曲來跑。它去掉的是穩定的雜音,不是房間:回音和殘響會留下來,因為對模型來說那是人聲的一部分。麥克風爆音造成的破音修不回來,離麥克風太遠的聲音也拉不近。開太強的話,聲音會變得水水的、斷斷續續,尤其是輕聲的子音;遇到這種情況,把強度調低,不用換檔案。視訊會議軟體或瀏覽器錄下來的檔案,通常已經做過一輪降噪,再跑一次能去掉的就少很多。

放在哪個環節

這一頁是為了發布或轉文字之前的那一步而做的:在咖啡廳錄的訪談、投影機風扇一直轉的課堂、火車上錄的語音備忘。先在這裡把聲音弄乾淨,再拿去 Video Subtitles 轉成文字;影片的話可以先用 Extract Audio from Video 把聲音抽出來。音樂檔——想知道一首歌的速度和調性——該去的是 BPM & Key Finder,不是這裡。

常見問題

我的錄音會被上傳到哪裡嗎?

不會。檔案由你的瀏覽器解碼,交給編譯成 WebAssembly 的 RNNoise 在 Web Worker 裡處理,再在同一個分頁裡寫成 WAV。什麼都不會送到伺服器——頁面背後根本沒有伺服器——不管是公開的 Podcast 還是機密的訪談,這一頁的做法都一樣。檔名、長度、內容,都不會離開你的瀏覽器。

為什麼人聲聽起來水水的、像機器人?

因為對這段錄音來說強度開太高了。RNNoise 會估每個頻帶裡有多少是語音,把其餘的壓下去;當雜音和人聲重疊——輕聲的子音、帶氣音的母音、非常吵的房間——強的設定會連人聲的一部分一起削掉,聽起來就像在水裡講話,或是有細碎的斷音。從預設的 85% 往下拉,拉到那些怪聲消失為止。留一點雜音,比把人聲弄壞自然多了。

可以用在音樂或歌曲上嗎?

可以跑,但你不會喜歡結果。這個模型被訓練成「留下語音、其餘全部去掉」,所以樂器、殘響的尾巴、和聲都會被當成雜音切得支離破碎。它是為講話的錄音設計的:訪談、課堂、Podcast、語音備忘、會議錄音。如果你想分析的是一首歌——它的 BPM 和調性——請用 BPM & Key Finder。

回音或殘響去得掉嗎?

去不掉。回音和殘響是人聲本身的反射,對模型來說那是語音的一部分,不是雜音。錄的時候離麥克風太遠也一樣,這一頁沒辦法把聲音拉近。它能去掉的是穩定的背景雜音——風扇、冷氣、車聲、電流的嗡聲、鍵盤的敲擊聲——那跟房間的聲學是兩回事。

為什麼輸出是 48 kHz 的 WAV,不是 MP3?

48 kHz 是因為 RNNoise 就是在這個取樣率下運作——它以 48 kHz 處理 10 ms 的音框,所以輸入會先重新取樣再降噪。WAV 是因為它沒有壓縮:乾淨的人聲不用再過一次有損編碼器,而且任何剪輯軟體、轉錄工具、影片程式都打得開。檔案會比 MP3 大,單聲道每分鐘約 5.8 MB;需要小一點的檔,事後再把 WAV 轉檔就好。

為什麼有 30 分鐘的上限?

因為處理期間整段解碼後的錄音都放在瀏覽器的記憶體裡,而 48 kHz 的音訊很快就會變大:單聲道 30 分鐘、立體聲 15 分鐘,大概就是一般筆電或手機還撐得住的範圍。更長的錄音請先切成幾段。這個上限是記憶體的問題,不是時間的問題——更長的檔案不會慢很多,而是有可能讓分頁記憶體不足而當掉。

我的錄音是會議軟體錄的,這還有用嗎?

沒有你想的那麼有用。視訊會議軟體和瀏覽器裡的錄音功能在存檔前就做過自己的降噪,RNNoise 擅長的那種穩定雜音大多已經不在了,剩下的通常是第一輪處理留下的痕跡,再跑一次也救不回來。用 15 秒的預覽試試看:如果「原始」和「降噪後」聽起來幾乎一樣,就表示這段錄音本來就不需要。