0. 注意

  • 一切只是折腾记录...可能不具备什么参考价值
  • 对这块真的知之甚少,求大佬指点,真心求!

图 Kiritan pid:59452814 by K箱

1. 缘起

这次的起因当然是隔壁@桜庭夜的一篇介绍啦——《让 AI 小姐唱歌 !NEUTRINO 神经歌唱合成器》

还从来没接触过VOCALOID之类歌声合成的我,当时本来就想试试,可惜由于各种鸽鸽鸽(专业30年旧坑不填挖新坑),直到拖到五一假的一个闷热难耐的夜晚,脑中突然响起『夏祭り』的旋律。

“君がいた夏は、遠い夢の中……”咳咳,唱的太难听了..

“不然就用AI调教一首『夏祭り』吧!”

这么想着,便一言不合就开干(……没错,就是那么混乱随意

2. 过程

2.1 扒谱

NEUTRINO 只认musicxml格式的谱,官方推荐的制谱软件是MuseScore,开源免费。

你可以用它打开自己的格式mscz或者更喜闻乐见的mid格式,再导出转换成musicxml供NEUTRINO使用。

因为这首歌比较冷门,虽然在某站搜到了五线谱,但在MuseScore上一个个复刻上去后发现节奏和音高都不对,能想象当时满怀期待的点开生成音频时迎来的却是贯耳的嘶吼吗,当时就吓傻了。

WaveTone

之后。。之后就只能自己扒了,用的是WaveTone,的确神器,根据鼓点缩放调整bpm,再在每个小节里用不同时值的音符将其点亮,便能导出mid给MuseScore用了。当然这时候的mid也不太能用,需要后期在MuseScore里慢慢调。

有些歌背景很杂,可以用RX 7来再平衡,这里我就分离出了鼓点,方便找节奏

RX 7

不用畏惧不会五线谱,这里用到的只有时值,音高,呼吸记号,bpm几个记号(其他的程序也不认

2.2 填词

跟着伴奏走几遍,调整好节奏便能填词了(别在意糟糕的文件名和如此多分段(因为这首歌变速的地方挺难把握的

填词

基本规则便是一个音符对应一个假名,注意读作wa的「は」→「わ」

关于填词的更多请看官方博客——https://n3utrino.work/332/

还有便是连音符和呼吸记号的使用也很重要。不知道怎么断?自己哼几句试试... 呼吸记号不仅会影响整体效果还关系到之后一个迈不过去的坎(雾

2.3 运行前的准备

2.3.1 检查显卡是否为N卡

最主要是显卡的坑。2.0版本的NEUTRINO引进了NSF人声合成引擎,而NSF本身需要N卡的CUDA支持。

所以没有N卡的各位……诶,别走啊,还是有办法的!

  1. NEUTRINO中还有另外一个引擎——WORLD,也是可以用的。
  2. 可以使用利用Google Colaboratory免费GPU来在线训练。由于该操作在Web浏览器上完成,因此不需要GPU,甚至用手机都可以操作,详见博客:https://n3utrino.work/550/

2.3.2 驱动是否为最新

请在使用之前将NVIDIA驱动程序更新为最新版本。

用电脑里啥乱七八糟的助手更新的都不算,得用Nvidia自带的NVIDIA GeForce Experience

一般在C:\Program Files\NVIDIA Corporation\NVIDIA GeForce Experience\NVIDIA GeForce Experience.exe

2.3.3 显存是否充足

官方建议是建议使用3GB或更大的GPU内存,和使用GTX 1050ti / 1060/970

GPU的内存使用情况取决于乐谱中短句的长度。一个短句是一段被呼吸记号或休止符包围的部分,每秒大约需要100MB。例如,如果您的短句为15秒,则将计算为使用约1.5 GB,如果GPU内存为2 GB,则可能无法使用。

只有笔记本独显2GB显存的我瑟瑟发抖,但还好还是撑住了。

2.4 运行

运行步骤真的是相当傻瓜化了,感谢作者把人声合成深度学习那么高大上的程序,封装到只需两步开跑。

改乐谱名,对应score文件夹下欲合成的musicxml文件名

run.bat

命令行下runrunrun!

runrunrun

期间你能感受到CPU和GPU的混合哀嚎....如果数据量特别大或时间特别长的话

gpu

如果NSF运行到一半出错,多半就是显存不够用了,刚刚提到的坎就在这。

  • 换个好显卡(
  • 尝试用呼吸符分隔更细的小节,使得单节声音不会拖的太长。
  • 弃用NSF直接用WORLD生成的乐谱名_syn.wav文件,NSF生成的则是乐谱名_nsf.wav

2.5 试听

WORLD生成的是乐谱名_syn.wav文件,NSF生成的则是乐谱名_nsf.wav

现在就可以听听效果啦!(期待ing

哇,最后上气不接下气的咋回事?!

没辙的我只好去推上请教作者SHACHI様了(结果还打扰了人家五一休假orz

作者答复说的确是bug,由于训练的数据量的关系,出现这些时间误判是难免的,不过好在这些都是可以调整的。之后推荐了tyouseisientool 这款.NET编写的第三方GUI工具,以及原来博客中就提及的WaveSurfer 。(让你不好好看文档,不过也算是反馈bug了嘛(打死

2.6 调整

将musicxml文件拖入就不难发现,这音拖得太离谱,气也断了。

气断了

点击TIMING 即可拖动蓝色纵条,恢复至正常位置

TIMING

然后别忘了再生成一遍,走个过程:

NEUTRINO

点击NEUTRINO才能将刚刚的调整生效反馈过来,如果发现还是老样子请删除output文件夹下所有关于该乐谱名的文件再生成一遍。

另外在PITCH选项还能够可视化调整音高波形,添加平滑和颤音等效果,非常方便了!

2.7 混音

这首歌的曲速变化我实在难以驾驭,所以没能一谱到底。到最后只能在Au里简单混个音和加点玩具音效orz

Au

之后导出,就成了如下所示的渣作(轻喷

3. 还差得远的成品

3.1 渣作轻喷

3.2 原作欣赏

鬱p还是太厉害了...

没有对比就没有伤害,模拟不出前面的空灵的氛围,缺少了中间那段喘息,和声,还有关键的黑嗓。(技术力实在低下,大佬求带,在线等)

宁静与狂躁的碰撞也是令人欲罢不能的。

3.3 其他调教

之后去N站上才发现,NEUTRINO才推出没几天就已经有人调教出来了,至今(05.12)已有将近8万再生,
另外一种风格的也很好听(其实这才是原曲风格吧...

【AIきりたん】夏祭り【NEUTRINOカバー曲】by マーマレード さん
sm36404548

3.4 歌词附

[00:13.27]君がいた夏は(有你在的夏天)
[00:18.95]遠い夢の中(在那遥远的梦里)
[00:26.09]空に消えてった(在空中消散的)
[00:31.73]打ち上げ花火(盛放的烟火)
[00:37.10]
[00:43.36]君の髪の香りはじけた(你的发香残存)
[00:46.78]浴衣姿がまぶしすぎて(身着浴衣姿态婀娜)
[00:50.11]お祭りの夜は胸が騒いだよ(在烟火祭的夜晚我心潮澎湃)
[00:56.91]はぐれそうな人ごみの中(拥挤的人潮之中)
[01:00.20]「はなれないで」出しかけた手を(我们紧紧地牵着手)
[01:03.58]ポケットに入れて握りしめていた(把你的手放进口袋紧紧地握着)
[01:09.92]
[01:10.77]君がいた夏は(有你在的夏天)
[01:13.69]遠い夢の中(在那遥远的梦里)
[01:17.46]空に消えてった(在空中消散的)
[01:20.47]打ち上げ花火(盛放的烟火)
[01:27.63]
[01:29.05]子供みたい金魚すくいに(像孩子似的捞着金鱼)
[01:32.28]夢中になって袖がぬれてる(打湿了衣袖)
[01:35.71]無邪気な横顔がとても可愛いくて(天真无邪的脸颊是那样的可爱)
[01:42.40]君は好きな綿菓子買って(买了你最爱吃的点心)
[01:45.78]ご機嫌だけど 少し向うに(心情愉悦 刚刚想要靠近你)
[01:49.20]友だち見つけて 離れて歩いた(你看到了朋友 就离开了我的身边)
[01:55.59]
[01:56.39]君がいた夏は(有你在的夏天)
[01:59.32]遠い夢の中(在那遥远的梦里)
[02:03.14]空に消えてった(在空中消散的)
[02:06.08]打ち上げ花火(盛放的烟火)
[02:13.27]
[02:42.63]神社の中 石段に座り(我们坐在神社前的石阶上)
[02:47.65]ボヤーッとした闇の中で(坐在模糊的阴影里)
[02:52.73]ざわめきが少し遠く聞こえた(可以隐隐听到远处的嘈杂)
[03:02.75]線香花火マッチをつけて(手中拿着仙女棒)
[03:07.85]色んな事話したけれど(聊着各种各样的事情)
[03:12.89]好きだって事が言えなかった(却没有告诉你我喜欢你这件事情)
[03:22.38]
[03:23.69]君がいた夏は(有你在的夏天)
[03:28.05]遠い夢の中(在那遥远的梦里)
[03:33.71]空に消えてった(在空中消散的)
[03:38.15]打ち上げ花火(盛放的烟火)
[03:43.93]
[03:48.06]君がいた夏は(有你在的夏天)
[03:50.96]遠い夢の中(在那遥远的梦里)
[03:54.76]空に消えてった(在空中消散的)
[03:57.75]打ち上げ花火(盛放的烟火)
[04:04.89]

4. 后记

感谢SHACHI様开发出如此有趣的、能大大降低歌声合成门槛的NEUTRINO,以及杂活铺子(雾)和其他网上众多教程帮助

还有因为每天只搞一点又懒得关机防止进度搞混,而持续高烧卡到崩溃的笔记本

在AI能够作词谱曲演奏演唱一条龙的时代,究竟谁又会变得更机械木讷呢(笑

另外 きりたんちゃん真萌!(虽然这哪里是小学5年级生的声音啦