目前 DiffSinger 的文本前端,通过 pinyin_to_phone.txt 文件(opencpop 数据集获取)得到 pinyin 到音素的映射关系,参考: - https://github.com/PaddlePaddle/PaddleSpeech/pull/3062 可以通过不带 tone 的 pypinyin 输出加一些简单的规则移除掉对这个文件的依赖 **需要注意的点:** 1. 除了 zh ch sh 其他声母都是一个,或者无声母,zh ch sh 和 z c s 需要分类讨论 2. 单纯拆的话应该比生成简单一点点,有一些细节需要考虑,比如 u v 变换, u 开头的韵母的变换等, 是生成字典的逆过程,字典生成过程可以参考 - https://github.com/PaddlePaddle/PaddleSpeech/blob/develop/examples/other/mfa/local/generate_lexicon.py - https://github.com/PaddlePaddle/PaddleSpeech/blob/develop/docs/topic/frontend/g2p.md