一句话定义:歌声合成(Singing Voice Synthesis,SVS)是让机器按乐谱把歌词"唱"出来的技术——输入歌词、音高和时值,输出一段有人声质感的演唱,可以粗略理解为"按谱子执行的 TTS"。
它比语音合成多背了两条硬约束
语音合成(Text-to-Speech,TTS)只需要把文字念对,音高和节奏由模型自己找感觉。SVS 不行:每个字挂在哪条音高线上、要拖多长,都是乐谱规定的。就像同样一句"你好",说和唱的区别在于唱必须踩准格子。偏半个音、差半拍,听众立刻觉得"跑调"。所以 TTS 的错误是"不像真人",SVS 的错误是"不像在唱歌"。
长音、气息、咬字为什么最容易穿帮
- 长音:一个字拖三拍以上,这种样本在普通语音数据里几乎不存在。模型容易把音高拉成一条直线,听感像电子琴按住不放。真人长音有颤音(vibrato)和微小的音高漂移,缺了这层起伏,"电音味"就出来了。
- 气息:真人唱长句会提前规划换气点,换气不只是静音,还带着声门开合的过程音,气量还会影响音量和音色明暗。模型如果只是在字与字之间切一刀做静音,听起来像句子被人掐断;反过来呼吸声加得太重,又喧宾夺主。
- 咬字:唱歌时元音被拉长、辅音被压缩,为了音色统一还会调整共鸣位置。字正腔圆反而不像唱,含糊过头就成了呜噜呜噜。中文还多一层麻烦——旋律和声调打架:保留声调会跟旋律冲突,丢掉声调又听不出是哪个字,通常只能折中。
- 对齐(alignment):一个字对多个音、一个音对多个字(拖腔、转音)都会出现,边界切错,节奏就散了。
和相邻概念的区别
| 概念 | 输入 | 输出 |
|---|---|---|
| TTS 语音合成 | 文本 | 说话 |
| SVS 歌声合成 | 歌词 + 乐谱 | 演唱 |
| 歌声转换(SVC) | 一段清唱 + 目标音色 | 换成别人声音的演唱 |
| 声音克隆 | 参考音频 | 同音色的朗读 |
| 音乐生成 | 文本提示 | 整首编曲 |
对从业者和普通人的意义
做工程的,评估不能只看歌词识别对不对,要拆开看音高曲线是否自然、频谱是否稳定、换气位置是否合理。常见做法是把"唱什么"和"怎么唱"解耦:内容、音高、音色分别建模,最后交给声码器(vocoder)还原波形。
对普通人,SVS 已经出现在虚拟歌手、翻唱工具和辅助表达场景里。声音的授权与权属问题比技术本身更容易踩坑,涉及商用请以各平台的官方页面为准。
