簡短的回答
開啟音訊剪輯,把錄音拖進去,用 I 和 O 標出你要留的每一段——想標多少段都行——然後匯出。每一刀都落在你標的那個取樣點上,留下的取樣怎麼進來就怎麼出去,接縫處會加上五毫秒的淡變,讓它響不出來。
工作就這些。這一頁剩下的部分,講的是這份準確為什麼是真的、而不是一句廣告詞,以及把兩段聲音接到一起時,確實會出差錯的那一件事。
為什麼音訊能剪得準,而影片不能
影片並不是按一張張完整畫面存下來的——那會大得離譜。多數幀存的是它和鄰居差在哪裡,所以它們沒法單獨解出來。只有關鍵幀能自己站住,而關鍵幀通常隔著一到十秒。所以一個靠搬幀來剪的工具沒法從你想要的地方起頭:它只能從關鍵幀開始,這也是剪出來的影片有時比你的標記早一兩秒的原因。影片那篇指南講的多半就是這件事。
聲音沒有對應的東西。錄音一旦解碼,就是一串數字——每個聲道每秒幾萬個——而其中每一個都完全自己站得住。第 1,234,567 個取樣不需要第 1,234,566 個才有意義。所以刀可以落在任何一個取樣上,「正好落在你標的地方」就是字面意思:你標的秒數乘以取樣率,再取到最近的整取樣。48 kHz 下,這一步取整最多是十微秒。
也不用擔心播放器各行其是。剪過的影片靠的是一個編輯標記,多數播放器認,有些不認;而剪過的 WAV 就是那些取樣本身,壓根沒剩下什麼可供播放器有分歧的東西。
那個坑:接縫就是一處斷裂
下面是剪音訊時真正會出問題的地方,也是一個像樣的工具會為它留個設定的原因。
聲音是波。你從一個詞的中間一刀切到另一個詞的中間,前一段最後那個取樣和後一段第一個取樣之間毫無關係:波形可能在一個取樣之內,從接近上限跳到接近下限。被要求做這一跳的喇叭紙盆,會發出它能發出的最尖銳的聲音,你聽到的就是接縫處的那一聲「咔」。
這和音質損失無關,和格式也無關。哪怕是一段毫無損失的剪輯、一段乾淨得挑不出毛病的錄音,照樣會有。斷裂聽起來就是這樣。一個只按取樣精確下刀、別的什麼都不做的工具,會在某些接縫上響、在另一些上不響,全看兩個端頭正好落在波形的什麼位置。
五毫秒的淡變到底在做什麼
解法是在下刀之前把音量降到靜音,刀過之後再抬回來,這樣就沒有段差可跳了。這裡說的「淡變」只是這麼回事:在每一頭的幾百個取樣上加一道斜坡。
有意思的是長度。五毫秒在 48 kHz 下大約是二百四十個取樣。這足夠紙盆走完那段路——「咔」聲徹底沒了——又遠遠短到不會被當成淡入淡出聽出來:五毫秒差不多是發一個子音所需時間的五分之一。你不會察覺音量在動,你只會察覺接縫乾淨。
之所以還給了更長的淡變,是因為有些素材需要。接音樂的時候,二十或者五十毫秒值得一試:那裡被打斷的是一個延續的音,而不是一個音節,最短的那道斜坡仍可能留下聽得見的一聲「噗」。說話的素材幾乎從來不需要超過五毫秒。
淡變只該出現在真的是刀口的那一頭。要是某一段就從錄音的最開頭起,它前面並沒有東西被拿走——在你剪任何東西之前,檔案本來就從那裡開始——那麼給它加個淡入就是沒人要求過的改動。這裡的工具只在真有接縫的地方放淡變,所以什麼都不剪的時候,每一個取樣都原封未動。
剪一個 MP3,以及為什麼出來的是 WAV
你可以開啟 MP3、M4A、Ogg 或者 Opus 檔案來剪。回來的是一個 WAV,而這是個取捨,與其把它說成功能,不如把話講清楚。
剪壓縮音訊有兩條路。一條是直接切壓縮資料,把整塊整塊編好的幀搬進新檔案而不去解碼。這樣檔案小,也不掉音質——只是一個 MP3 幀大約二十六毫秒,所以每一刀都會被取整到最近的幀邊界,這就是關鍵幀問題的音訊版。而且這工作綁死在格式上:會讀 MP3 的讀不了 Opus。
另一條是解碼、按取樣精確下刀、再把取樣寫出去。什麼都不取整,瀏覽器能播的每一種格式都是同一套走法,而淡變也才談得上可能——你沒法給一段沒解出來的音量加斜坡。代價是取樣得用某種格式寫回去,而沒有哪個瀏覽器內建一個這裡能用的 MP3 或 AAC 編碼器。WAV 不需要編碼器:它就是那些取樣,前面加一小段檔案頭,所以這一步不可能丟掉任何東西。
實際後果是:出來的比進去的大得多——立體聲大約每分鐘 10 MB——而且它並不比它來的那個 MP3 更好,因為已經發生的壓縮撤不回來。WAV 什麼都打得開,而需要 MP3 的地方,一步就能從它做一個出來。
一次標出好幾段
多數線上剪輯工具給你一對把手,問你要留哪一段。對真實的錄音來說,這問錯了問題。一小時的採訪不會只有一個好段落;它有六個,散落在各處,而你是靠通聽一遍把它們找出來的。
所以邊聽邊標:段落開始按 I,結束按 O,想標多少次都行。每一對會變成一行,可以改時間、也可以調順序,同時在波形上畫出一條帶子。做好的檔案,就是這些行按順序接起來。
同一份標記也回答反過來的問題。要是你想丟掉的是那些「呃」、響起來的電話和說岔了重來的開頭,那就標它們,再切到「把標出的剪掉」——這樣接起來的是你沒標的部分。兩種方式用的是同一批標記,所以你可以來回切換,看著成品的長度變化,而不用把任何地方標兩遍。
標記是細工作,不該被一個關掉的分頁賠進去,所以標記可以存成一個純文字檔案,也能讀回來。它的格式和影片剪輯寫出來的是同一種,也就是說,對著影片標好的標記可以丟到從它裡面提出來的音訊上,反過來也行。
看波形
靠來回拖著聽來標聲音是猜;用眼睛標就不是。靜音長得像靜音,咳嗽長得像咳嗽,而有人開口之前那四秒的房間底噪,是一眼就看見的,用不著去找。
這一點在大家最容易標偏的地方最要緊:一句話的開頭,通常該落在換氣之前的那點靜裡,而不是之後;結尾通常想留一拍房間底噪,而不是切在最後一個子音上。這兩件事在圖上一目瞭然,光靠耳朵幾乎標不準。把標好那段的兩頭順著波形拖一拖,就能挪。
剪不是淡,也不是編輯
三個常被混著用的詞。剪,改變的是錄音裡哪些部分留下來。淡——音樂裡那種、以秒計的——是對音量有意做的效果,而上面說的那幾毫秒不是那個;那是消除爆音,只是碰巧用了同一套算術。
如果你要的是把錄音倒過來、放快、在不變調的前提下放慢,或者因為錄得太小聲而抬上來,那是音訊編輯的工作。用的是同一個解碼器、同一個 WAV 寫入器,只是中間那道算術不一樣。
為什麼這件事不需要上傳
剪就是在一個陣列上做算術。解碼器瀏覽器早就有了——就是它在 <audio> 元素裡放這個檔案用的那一個——而取樣一旦解出來,留下一部分、丟掉其餘的,不過是一次複製。這段描述裡沒有哪一步是伺服器能做得更好的,而跑一趟伺服器再回來,會是整件事裡最慢的部分。
而且這還是一類上傳代價比人們以為的更大的檔案。錄音就是人的聲音:採訪、講座、通話、語音留言、心理諮詢,還有孩子說的一句你想留住的話。這裡的工具沒有任何形式的網路功能,頁面的 Content-Security-Policy 裡寫著它允許聯絡的每一個地址,沒有一個屬於本站。
你要是寧可自己查也不願聽我們說,拔掉網線,照樣剪一段試試。把檔案傳給線上轉換器安全嗎?那一頁還列了另外三條這樣的檢查。