用一张导出表筛歌单,我把 600 首缩到 47 首
我的音乐库攒了六年,600 多首自己写的动机和半成品,散在三个硬盘、两个播放器里。每次想挑歌做一张自选集,打开文件夹翻十分钟就放弃了。上个月我换了个笨办法:先把「挑歌」变成一个能排序的问题。
我的音乐库攒了六年,600 多首自己写的动机和半成品,散在三个硬盘、两个播放器里。每次想挑歌做一张自选集,打开文件夹翻十分钟就放弃了。上个月我换了个笨办法:先把「挑歌」变成一个能排序的问题。
去年秋天写的一段动机,44.1kHz、24bit 的 WAV,四十来秒,两把吉他加一个手鼓。我想把它裁成八小节循环,丢进采样器里当练习的背景。用 Audacity 3.4 直接选区间、复制、粘贴,拼了四遍,导出。听第一遍觉得没问题,戴上耳机走两圈,接缝处总有一个「咔」的尾巴,像多了一下军鼓。
写歌时我习惯在手机上录动机,一般是弹一段吉他或者哼一段旋律,时长 20 秒到 1 分钟。攒到 40 多条的时候问题来了:在播放器里连着放,有的响得吓人,有的得把音量拧到头。我决定用 ffmpeg 统一处理,版本是 6.0,环境是 macOS,素材是 43 条 m4a,单条 300KB 上下,总量不到 20MB。
手机里攒了两年多的语音备忘,一共 437 条,,全是随手哼的动机、几句词、一段和弦走向的口述。文件名是 iOS 默认的「新录音 12.m4a」这种,时间一长完全不知道哪条是什么。想找「那个下行的副歌旋律」只能一条条点开听,听到第十条就烦了。
写歌几年,硬盘里躺着一批自己录的 demo,命名全靠当天心情:`riff3_new.wav`、`riff3_new_真的final.wav`。上个月想回头找「那条从地铁站哼出来的旋律最后落到哪首歌里」,翻了四十分钟没找着。版本是 foobar2000 v2.1,Windows 10,文件大概 400 多个,wav 和 m4a 混着。
我的动机库里有 1200 多个鼓组采样,来自几个不同时期下载的免费包和几套买的。文件名基本没有规律,有的写 kick_01.wav,有的写 001.wav,还有一堆带空格和中文的。想找“一个偏闷的底鼓”时只能一个个点开听,这件事拖了快两年。
我写歌的方式很土:脑子里先冒出来一个八小节左右的东西,用手机录下来,之后堆在 `~/motif/` 里。攒到 180 多个 m4a 之后,问题来了——想找「大概 90 BPM 左右、偏小调的那种」,只能一个个点开听。我试过按日期排、按调性排,都不对路,因为我找动机的时候脑子里第一个浮现的往往是速度感,不是调。
上周重装系统,顺手把动机库里的 60 多条手机录音整理了一遍。都是自己哼的,音量忽大忽小,有的在厨房录的,有的在阳台,底噪能听出风声。问题不在音质,在节奏:想并排听几个版本,没法判断哪条是真快了、哪条是我哼的时候拖了。
写歌时有个毛病:同一段动机,我会在吉他上换几个调弹,然后各录一版动机小样。上个月整理动机库,发现同一条东西已经派生出了四个调:E、D、C、G。文件名很乱,光看名字根本分不清哪条是哪条。
写歌的时候,手机里会攒下一堆 10 秒到 1 分钟的动机录音,大多是随手哼的、吉他扫两下的。攒到 170 多条之后,我发现自己根本找不到想要的那条——文件名是 `2024-03-12 21.33.05.m4a` 这种,按时间排是唯一的线索,但我要找的是“那条在 D 调上、有点闷的扫弦”。
上周整理一块 2T 的移动硬盘,里面是我从 2016 年攒到现在的现场录音,大部分是 audience 录音,格式乱:有 16bit/44.1k 的 wav,有从视频里扒出来的 m4a,也有几首是别人转手给我的 mp3 320。想按调性分组做歌单,第一反应是拿现成工具批量分析,结果在 300 首这个量级上就卡住了:多数在线分析服务一次只能传一首,本地能跑的要么依赖一堆 Python 库,要么对 m
先给上下文:我手上有 200 多首现场录音,来源很杂——手机录的、DAT 转录的、从视频里扒的,格式从 16bit/44.1k 的 wav 到 128k 的 mp3 都有。我想按调性分组,方便写歌时找参考。
三年前我开始写歌,动机库里有 60 多个片段,最早是手机备忘录里录的哼唱,后来慢慢变成 Guitar Pro 导出的 midi 和几段 Logic 工程。问题出在找东西上:我记得「有个 Em 到 C 的进行挺好听」,但记不住它在哪个文件、什么调、多快。翻一遍要半小时,翻完写歌的心情就没了。
手上有八个现场版,都是同一首歌,来自不同年份的 bootleg。场景:本地存了 1.2GB 的 flac,采样率参差不齐(44.1k 和 48k 混着),音量差异大到我得不停拧旋钮——从 -14 LUFS 到 -8 LUFS 都有。想对比编曲和即兴段落,结果每次切歌都要调音量,比来比去耳朵先累了。
写歌的人大概都有一个动机库:手机语音备忘录、录音笔、DAW 里随手存的工程,几百条,命名从 `无标题1` 到 `demo最终真的最终`。我这边积累到三百多条时出了问题——想找半年前一段吉他riff,只记得是某个下午弹的,翻了两小时没找到。后来我花了一个周末,把动机库塞进 git,配了一个很笨的脚本,谈不上方案,就是能用了。
上个月整理自己的现场录音收藏,40 张专辑、一共 612 个音轨,分散在三个移动硬盘里。想干的事很简单:给每张专辑写一份带曲目和时长的歌单笔记,方便以后翻。手动敲了两张就放弃了,Excel 复制粘贴也会错位,因为不同来源的文件名格式完全不一样——有的是 `01 - 歌名.flac`,有的是 `Artist - Album - 01 - 歌名.wav`,还有一批是手机录的,文件名就是一串时间戳。
去年冬天整理了一份 40 首的深夜歌单,全是慢歌和器乐,从老爵士到后摇。问题是:手机连着蓝牙音箱放的时候,有的歌一出来就炸,有的要开到 80% 音量才听清。不是音量旋钮的问题,是这些歌本身的响度差太多。
手上有一张 1998 年的现场专辑,整轨 FLAC,48 分钟,一个文件。播放器能读 cue,但我想把其中三首单独拎出来放进「通勤」歌单,又不想转成 mp3 损失信息。环境是 macOS,工具是 ffmpeg 6.0 和 shnsplit 那一套里我最后留下的 cuetools。
收了一张同人社团的专辑,17 轨 FLAC,内嵌 CUE,文件名是「01 - 曲名.flac」这种格式。拖进 foobar2000 播放没问题,但一到按专辑排序就散架——album artist 有的写「V.A.」,有的直接空着,track number 还带着前导零。之前我都是右键属性一轨一轨改,17 轨改完二十分钟,手一滑还把第 6 轨的 title 覆盖了。
上个月整理一支乐队的现场录音,同一首歌手里攒了12个版本:不同年份、不同场地,有soundboard直录的,也有观众席手机录的。问题很具体——我想比较主歌第二段每次的吉他处理,但一个个拖进度条太蠢了,而且版本之间长度差得挺多,一个3分12秒,一个5分40秒还带一段即兴。