音樂 — 聊音樂、薦歌單、談創作

用一首現場曲目的三軌動態,我把耳機監聽的誤差抓出來

上個月整理一批 2023 年前後的現場錄音,來源多是混音師給的 24bit/48kHz 立體聲母帶,少數幾場是從串流抓下來的 AAC。我想解決的問題很具體:同一首歌在耳機上聽起來「人聲偏後」,但在喇叭上又正常。我先假設是自己耳朵的問題,直到把同一首的三個版本併排看,才發現是動態處理的落差。

把 47 首演唱會曲目的掌聲尾巴裁齊後,我留下一個可重跑的腳本

上個月整理一批 2018–2023 的現場錄音,總共 47 首曲目,都是 44.1kHz/16bit WAV,從三張不同場次的專輯抓出來。問題很一致:每首歌結尾的掌聲沒有乾淨收掉,直接接到下一首開頭,用 foobar2000 連續播放時,情緒會被硬生生切斷。我想要的不是把掌聲全刪掉,而是讓尾巴收在合理的長度,大約 1.2 到 1.8 秒,聽起來像自然收尾。

把 54 場 live 錄音的掌聲段併成可回放的 cue 檔

我手上有一批 54 場現場錄音,全部是 FLAC,單場 45 到 120 分鐘,總共約 68 GB。這些錄音最麻煩的不是音質,而是曲目之間的掌聲尾巴太長,直接切 cue 會讓下一首的開頭被前一首的歡呼聲蓋住。我先用 ffmpeg 的 silencedetect 找出能量低於 -35 dB、持續超過 1.2 秒的區間,當成候選邊界。

把 63 首現場曲目的掌聲尾巴併回下一首,我改的是標記不是音檔

上一輪把掌聲尾巴裁齊之後,我手上有一批現場專輯變成「每首結尾乾淨、下一首開頭突兀」。問題出在裁切點:我當初按能量曲線找靜音邊界,一刀切在掌聲還沒完全散掉的地方,於是下一首的前奏一進來就顯得被削掉一層空氣。這次處理的是 63 首曲目、9 張現場專輯,全部是 16bit/44.1kHz 的 CD 抓軌,格式維持無損,不動取樣率。

林 林昀臻

把 92 首現場曲目的掌聲尾巴裁齊,我留下的一個腳本

手上一批 90 年代的現場靴腿,多數是從 CD 轉出來的 16bit/44.1kHz wav,也有幾張是 128k mp3 轉回來的假無損。問題不在音質,是每首歌結尾的掌聲長短不一:短的 1.2 秒就切掉,長的拖到 6 秒,做成歌單後節奏全亂。量不大,92 首,但手動剪會瘋。

黃 黃彥廷

用一首歌的三版母带,我拆出了現場專輯的動態落差

前陣子整理一批 90 年代的現場專輯,遇到一個很具體的麻煩:同一首歌,錄音室版、現場版、後來重發的 remaster 版擺在一起,音量差到切歌時要一直轉旋鈕。我拿〈大概〉這首當樣本,三個檔案都是 16bit/44.1kHz 的 CD 抓軌,長度 4 分多鐘,用 ffprobe 先確認沒有隱藏的音量標籤,再進 Audacity 看波形。

陳 陳柏宇

把 43 場現場錄音的掌聲剪掉:我用 ffmpeg 靜音偵測的邊界

手上有一批 43 場現場錄音,多是 audience 錄音轉出來的 FLAC,取樣率 44.1kHz、16bit,每場大約 45 到 90 分鐘。問題不在音質,而在曲與曲之間:一段十幾秒的鼓掌、講話、椅子聲,讓整張專輯在隨機播放時聽起來很碎。我想把每首曲子前後的觀眾聲壓到一個固定的短尾巴,保留現場感,但不要每次切歌都先聽五秒拍手。

用 foobar2000 把 90 張演唱會專輯的曲序排回現場

手邊有一批 90 張左右的演唱會專輯,多是自己從 CD 抓的 FLAC,少數是朋友傳來的整軌檔。痛點很一致:專輯裡曲目順序和現場演出順序對不上,尤其是組曲(medley),抓軌後被拆成十幾個小檔,檔名全是 Track01、Track02,播放時整場節奏被打斷。我想要的不是「按 BPM 重排」,而是把曲序還原成當晚演出的順序,讓 medley 能連續聽完。

把 11 場現場錄音壓成手機歌單:我用 opus 轉檔的取捨

上個月在整理一批現場錄音,來源是 11 場演出、總共 143 首曲目,多數是 24bit/48kHz 的 WAV,加起來約 38GB。我想把它們塞進手機的離線歌單,通勤時聽。直接同步原始檔不現實,所以做了轉檔,但這次的目標不是「越小越好」,而是「在手機上聽不出差別」。

把 180 首現場曲目做成 cue 後,我又手動補了 26 個分軌點

上個月整理一批 2016 到 2019 年的現場錄音,來源是同一位朋友的 Tascam DR-05,總共 23 場、180 首曲目。檔案是 44.1kHz/16bit 的 WAV,一場一個檔,長度從 48 分鐘到 1 小時 52 分不等。問題是:每場只有一個大檔,播放器只能從頭放到尾,想聽第 7 首就得自己拖時間軸。

把 120 首現場曲目做成可離線播放清單:我留的腳本與失效邊界

上個月整理一批 2016–2019 的現場錄音,來源主要是自己錄的 WAV 和幾場官方直播的音軌。全部丟進同一個資料夾後大約 30 GB、120 首左右,檔名長這樣:`20170812_encore_take2.wav`、`live_2019-03-05_02.flac`。問題不是聽不到,是每次想找「那場唱了什麼」都要重新翻資料夾,而且現場演出常有同一首歌在不同場次重複出現,光靠檔名根本分不出來。

把 200 首現場曲目按 BPM 排成歌單後,我手動改了 47 首

上個月整理一批 2018 到 2023 的現場錄音,總共 214 首,大部分是觀眾席錄的,少數是 soundboard 流出。我想把它們排成一份能連續聽的歌單,第一步就是用 BPM 自動排序:快歌開場,中段鋪陳,最後收在慢歌。我用 aubio 的 `aubio tempo` 掃過一輪,把結果寫進 CSV,再依 BPM 分箱。指令大概長這樣:

用 ReplayGain 掃 600 張專輯後,我把音量歸一化退回專輯內

串流帳號裡的歌單一直有個問題:從一張 1994 年的老搖滾跳到去年發的電子專輯,前奏一出來我得先去摸音量旋鈕。我手邊的本地庫大概 600 張專輯、約 8000 個檔案,主要是 FLAC,少數是十幾年前留下來的 320k MP3。播放端是 foobar2000 加一個客廳用的樹莓派串流,兩邊都想解決,於是決定跑一次 ReplayGain。

把 120 首現場錄音的歌單時長算準:我用 ffprobe 對拍的笨辦法

上個月整理一批現場錄音,來源是 2019 到 2023 年間自己錄的 120 個片段,格式有 WAV 也有從影片抽出來的 AAC,取樣率從 44.1kHz 到 48kHz 混在一起。問題出在歌單:我想把這些片段接成一份可以連續播放的順序,但每一首的實際長度跟播放器顯示的不一樣,導出的 m3u 放進 foobar2000 後,總時長誤差累積到快 40 秒,尾段整段對不上我原本排的節奏。

把 300 張黑膠的播放紀錄寫進試算表,再倒回 foobar2000

客廳那台唱盤接上 USB 錄音介面之後,我開始想記錄每一張黑膠到底聽了幾次。起點很土:一個 Google Sheet,四個欄位——專輯、廠牌、首次播放日期、累計次數。累積到 300 張、大約 1,800 筆播放紀錄時,我發現自己根本查不動了,篩選廠牌要等好幾秒,而且 foobar2000 那邊的歌單完全不知道這些黑膠的存在。於是我把整份表倒出來,做成 foobar2000 讀得懂的格式。