把写歌用的和弦进程记成可检索的文本,我踩了三年的坑
三年前我开始写歌,动机库里有 60 多个片段,最早是手机备忘录里录的哼唱,后来慢慢变成 Guitar Pro 导出的 midi 和几段 Logic 工程。问题出在找东西上:我记得「有个 Em 到 C 的进行挺好听」,但记不住它在哪个文件、什么调、多快。翻一遍要半小时,翻完写歌的心情就没了。
我先试的是在文件名里写和弦,结果乱得没法看。后来改成一份纯文本的进程库,一行一段,用固定字段开头:
#id 2023-11-04-a
tempo 92
key Em
prog | Em | Cmaj7 | G | D/F# |
feel 民谣扫弦,第二遍进贝斯
file ~/demos/2023/1104a.m4a
检索就靠 grep:
grep -l "key Em" songs/*.txt
grep -n "Cmaj7" songs/*.txt
再配一个小脚本,把 prog 那行按 | 切开,转成数字级数,这样 C 调里同样的进行也能被搜到。转级数这一步我写得很笨,只处理大小三和弦和 maj7、m7、sus4,其他一律原样保留。
为什么值得这么做:和弦进行本质是相对关系,绝对音名会骗人。同一段 Em-C-G-D 在不同调里我写过四遍,转成 i-VI-III-VII 之后一次就搜出来了。代价是文本要手写,录完得花两分钟整理,不整理就等于没记。我现在的规矩是:录完当次就写,超过一天基本不会补。
失效的地方说几个。转级数对转位和挂留和弦会失真,我搜 sus4 的时候经常漏;文件名和实际工程对不上时,grep 找到的是一段已经不存在的录音;最坑的是早期我用 # 当注释,结果 D/F# 里的 # 被脚本当成注释截断,搜 D 的时候出来一堆怪东西。后来把注释符换成 // 才解决。另外这方法只管和弦,管不了音色和编曲,有次我按进行找回一段,发现当初好听的是那个失真音色,不是和弦。
现在 60 多个片段里有 40 多个能搜到。剩下那 20 个我认了,它们要么太碎,要么没和弦可记。你们写歌的时候怎么记动机?是按调、按速度,还是干脆只靠听感翻文件夹?
0
赞同度 100% · 0 条评论 · 7 阅读

0 条评论
还没有评论,写下第一条。