简短的回答
打开音频剪辑,把录音拖进去,用 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 不需要编码器:它就是那些采样,前面加一小段文件头,所以这一步不可能丢掉任何东西。
实际后果是:出来的比进去的大得多——立体声大约每分钟十兆——而且它并不比它来的那个 MP3 更好,因为已经发生的压缩撤不回来。WAV 什么都打得开,而需要 MP3 的地方,一步就能从它做一个出来。
一次标出好几段
多数在线剪辑工具给你一对把手,问你要留哪一段。对真实的录音来说,这问错了问题。一小时的采访不会只有一个好段落;它有六个,散落在各处,而你是靠通听一遍把它们找出来的。
所以边听边标:段落开始按 I,结束按 O,想标多少次都行。每一对会变成一行,可以改时间、也可以调顺序,同时在波形上画出一条带子。做好的文件,就是这些行按顺序接起来。
同一份标记也回答反过来的问题。要是你想丢掉的是那些「呃」、响起来的电话和说岔了重来的开头,那就标它们,再切到「把标出的剪掉」——这样接起来的是你没标的部分。两种方式用的是同一批标记,所以你可以来回切换,看着成品的长度变化,而不用把任何地方标两遍。
标记是细活儿,不该被一个关掉的标签页赔进去,所以标记可以存成一个纯文本文件,也能读回来。它的格式和视频剪辑写出来的是同一种,也就是说,对着视频标好的标记可以丢到从它里面提出来的音频上,反过来也行。
看波形
靠来回拖着听来标声音是猜;用眼睛标就不是。静音长得像静音,咳嗽长得像咳嗽,而有人开口之前那四秒的房间底噪,是一眼就看见的,用不着去找。
这一点在大家最容易标偏的地方最要紧:一句话的开头,通常该落在换气之前的那点静里,而不是之后;结尾通常想留一拍房间底噪,而不是切在最后一个辅音上。这两件事在图上一目了然,光靠耳朵几乎标不准。把标好那段的两头顺着波形拖一拖,就能挪。
剪不是淡,也不是编辑
三个常被混着用的词。剪,改变的是录音里哪些部分留下来。淡——音乐里那种、以秒计的——是对音量有意做的效果,而上面说的那几毫秒不是那个;那是消除爆音,只是碰巧用了同一套算术。
如果你要的是把录音倒过来、放快、在不变调的前提下放慢,或者因为录得太小声而抬上来,那是音频编辑的活。用的是同一个解码器、同一个 WAV 写入器,只是中间那道算术不一样。
为什么这件事不需要上传
剪就是在一个数组上做算术。解码器浏览器早就有了——就是它在 <audio> 元素里放这个文件用的那一个——而采样一旦解出来,留下一部分、丢掉其余的,不过是一次拷贝。这段描述里没有哪一步是服务器能做得更好的,而跑一趟服务器再回来,会是整件事里最慢的部分。
而且这还是一类上传代价比人们以为的更大的文件。录音就是人的声音:采访、讲座、通话、语音留言、心理咨询,还有孩子说的一句你想留住的话。这里的工具没有任何形式的网络功能,页面的 Content-Security-Policy 里写着它允许联系的每一个地址,没有一个属于本站。
你要是宁可自己查也不愿听我们说,拔掉网线,照样剪一段试试。把文件传给在线转换器安全吗?那一页还列了另外三条这样的检查。