mirror of
https://github.com/RVC-Boss/GPT-SoVITS.git
synced 2025-04-05 19:41:56 +08:00
798 lines
9.6 KiB
Python
798 lines
9.6 KiB
Python
# punctuation = ['!', '?', '…', ",", ".","@"]#@是SP停顿
|
||
punctuation = ["!", "?", "…", ",", "."] # @是SP停顿
|
||
punctuation.append("-")
|
||
pu_symbols = punctuation + ["SP", "SP2", "SP3", "UNK"]
|
||
# pu_symbols = punctuation + ["SP", 'SP2', 'SP3','SP4', "UNK"]
|
||
pad = "_"
|
||
|
||
c = [
|
||
"AA",
|
||
"EE",
|
||
"OO",
|
||
"b",
|
||
"c",
|
||
"ch",
|
||
"d",
|
||
"f",
|
||
"g",
|
||
"h",
|
||
"j",
|
||
"k",
|
||
"l",
|
||
"m",
|
||
"n",
|
||
"p",
|
||
"q",
|
||
"r",
|
||
"s",
|
||
"sh",
|
||
"t",
|
||
"w",
|
||
"x",
|
||
"y",
|
||
"z",
|
||
"zh",
|
||
]
|
||
v = [
|
||
"E1",
|
||
"En1",
|
||
"a1",
|
||
"ai1",
|
||
"an1",
|
||
"ang1",
|
||
"ao1",
|
||
"e1",
|
||
"ei1",
|
||
"en1",
|
||
"eng1",
|
||
"er1",
|
||
"i1",
|
||
"i01",
|
||
"ia1",
|
||
"ian1",
|
||
"iang1",
|
||
"iao1",
|
||
"ie1",
|
||
"in1",
|
||
"ing1",
|
||
"iong1",
|
||
"ir1",
|
||
"iu1",
|
||
"o1",
|
||
"ong1",
|
||
"ou1",
|
||
"u1",
|
||
"ua1",
|
||
"uai1",
|
||
"uan1",
|
||
"uang1",
|
||
"ui1",
|
||
"un1",
|
||
"uo1",
|
||
"v1",
|
||
"van1",
|
||
"ve1",
|
||
"vn1",
|
||
"E2",
|
||
"En2",
|
||
"a2",
|
||
"ai2",
|
||
"an2",
|
||
"ang2",
|
||
"ao2",
|
||
"e2",
|
||
"ei2",
|
||
"en2",
|
||
"eng2",
|
||
"er2",
|
||
"i2",
|
||
"i02",
|
||
"ia2",
|
||
"ian2",
|
||
"iang2",
|
||
"iao2",
|
||
"ie2",
|
||
"in2",
|
||
"ing2",
|
||
"iong2",
|
||
"ir2",
|
||
"iu2",
|
||
"o2",
|
||
"ong2",
|
||
"ou2",
|
||
"u2",
|
||
"ua2",
|
||
"uai2",
|
||
"uan2",
|
||
"uang2",
|
||
"ui2",
|
||
"un2",
|
||
"uo2",
|
||
"v2",
|
||
"van2",
|
||
"ve2",
|
||
"vn2",
|
||
"E3",
|
||
"En3",
|
||
"a3",
|
||
"ai3",
|
||
"an3",
|
||
"ang3",
|
||
"ao3",
|
||
"e3",
|
||
"ei3",
|
||
"en3",
|
||
"eng3",
|
||
"er3",
|
||
"i3",
|
||
"i03",
|
||
"ia3",
|
||
"ian3",
|
||
"iang3",
|
||
"iao3",
|
||
"ie3",
|
||
"in3",
|
||
"ing3",
|
||
"iong3",
|
||
"ir3",
|
||
"iu3",
|
||
"o3",
|
||
"ong3",
|
||
"ou3",
|
||
"u3",
|
||
"ua3",
|
||
"uai3",
|
||
"uan3",
|
||
"uang3",
|
||
"ui3",
|
||
"un3",
|
||
"uo3",
|
||
"v3",
|
||
"van3",
|
||
"ve3",
|
||
"vn3",
|
||
"E4",
|
||
"En4",
|
||
"a4",
|
||
"ai4",
|
||
"an4",
|
||
"ang4",
|
||
"ao4",
|
||
"e4",
|
||
"ei4",
|
||
"en4",
|
||
"eng4",
|
||
"er4",
|
||
"i4",
|
||
"i04",
|
||
"ia4",
|
||
"ian4",
|
||
"iang4",
|
||
"iao4",
|
||
"ie4",
|
||
"in4",
|
||
"ing4",
|
||
"iong4",
|
||
"ir4",
|
||
"iu4",
|
||
"o4",
|
||
"ong4",
|
||
"ou4",
|
||
"u4",
|
||
"ua4",
|
||
"uai4",
|
||
"uan4",
|
||
"uang4",
|
||
"ui4",
|
||
"un4",
|
||
"uo4",
|
||
"v4",
|
||
"van4",
|
||
"ve4",
|
||
"vn4",
|
||
"E5",
|
||
"En5",
|
||
"a5",
|
||
"ai5",
|
||
"an5",
|
||
"ang5",
|
||
"ao5",
|
||
"e5",
|
||
"ei5",
|
||
"en5",
|
||
"eng5",
|
||
"er5",
|
||
"i5",
|
||
"i05",
|
||
"ia5",
|
||
"ian5",
|
||
"iang5",
|
||
"iao5",
|
||
"ie5",
|
||
"in5",
|
||
"ing5",
|
||
"iong5",
|
||
"ir5",
|
||
"iu5",
|
||
"o5",
|
||
"ong5",
|
||
"ou5",
|
||
"u5",
|
||
"ua5",
|
||
"uai5",
|
||
"uan5",
|
||
"uang5",
|
||
"ui5",
|
||
"un5",
|
||
"uo5",
|
||
"v5",
|
||
"van5",
|
||
"ve5",
|
||
"vn5",
|
||
]
|
||
|
||
v_without_tone = [
|
||
"E",
|
||
"En",
|
||
"a",
|
||
"ai",
|
||
"an",
|
||
"ang",
|
||
"ao",
|
||
"e",
|
||
"ei",
|
||
"en",
|
||
"eng",
|
||
"er",
|
||
"i",
|
||
"i0",
|
||
"ia",
|
||
"ian",
|
||
"iang",
|
||
"iao",
|
||
"ie",
|
||
"in",
|
||
"ing",
|
||
"iong",
|
||
"ir",
|
||
"iu",
|
||
"o",
|
||
"ong",
|
||
"ou",
|
||
"u",
|
||
"ua",
|
||
"uai",
|
||
"uan",
|
||
"uang",
|
||
"ui",
|
||
"un",
|
||
"uo",
|
||
"v",
|
||
"van",
|
||
"ve",
|
||
"vn",
|
||
]
|
||
|
||
# japanese
|
||
ja_symbols = [
|
||
"I",
|
||
"N",
|
||
"U",
|
||
"a",
|
||
"b",
|
||
"by",
|
||
"ch",
|
||
"cl",
|
||
"d",
|
||
"dy",
|
||
"e",
|
||
"f",
|
||
"g",
|
||
"gy",
|
||
"h",
|
||
"hy",
|
||
"i",
|
||
"j",
|
||
"k",
|
||
"ky",
|
||
"m",
|
||
"my",
|
||
"n",
|
||
"ny",
|
||
"o",
|
||
"p",
|
||
"py",
|
||
"r",
|
||
"ry",
|
||
"s",
|
||
"sh",
|
||
"t",
|
||
"ts",
|
||
"u",
|
||
"v",
|
||
"w",
|
||
"y",
|
||
"z",
|
||
###楼下2个留到后面加
|
||
# "[", #上升调型
|
||
# "]", #下降调型
|
||
# "$", #结束符
|
||
# "^", #开始符
|
||
]
|
||
|
||
arpa = {
|
||
"AH0",
|
||
"S",
|
||
"AH1",
|
||
"EY2",
|
||
"AE2",
|
||
"EH0",
|
||
"OW2",
|
||
"UH0",
|
||
"NG",
|
||
"B",
|
||
"G",
|
||
"AY0",
|
||
"M",
|
||
"AA0",
|
||
"F",
|
||
"AO0",
|
||
"ER2",
|
||
"UH1",
|
||
"IY1",
|
||
"AH2",
|
||
"DH",
|
||
"IY0",
|
||
"EY1",
|
||
"IH0",
|
||
"K",
|
||
"N",
|
||
"W",
|
||
"IY2",
|
||
"T",
|
||
"AA1",
|
||
"ER1",
|
||
"EH2",
|
||
"OY0",
|
||
"UH2",
|
||
"UW1",
|
||
"Z",
|
||
"AW2",
|
||
"AW1",
|
||
"V",
|
||
"UW2",
|
||
"AA2",
|
||
"ER",
|
||
"AW0",
|
||
"UW0",
|
||
"R",
|
||
"OW1",
|
||
"EH1",
|
||
"ZH",
|
||
"AE0",
|
||
"IH2",
|
||
"IH",
|
||
"Y",
|
||
"JH",
|
||
"P",
|
||
"AY1",
|
||
"EY0",
|
||
"OY2",
|
||
"TH",
|
||
"HH",
|
||
"D",
|
||
"ER0",
|
||
"CH",
|
||
"AO1",
|
||
"AE1",
|
||
"AO2",
|
||
"OY1",
|
||
"AY2",
|
||
"IH1",
|
||
"OW0",
|
||
"L",
|
||
"SH",
|
||
}
|
||
|
||
ko_symbols = "ㄱㄴㄷㄹㅁㅂㅅㅇㅈㅊㅋㅌㅍㅎㄲㄸㅃㅆㅉㅏㅓㅗㅜㅡㅣㅐㅔ空停"
|
||
# ko_symbols='ㄱㄴㄷㄹㅁㅂㅅㅇㅈㅊㅋㅌㅍㅎㄲㄸㅃㅆㅉㅏㅓㅗㅜㅡㅣㅐㅔ '
|
||
|
||
yue_symbols = {
|
||
"Yeot3",
|
||
"Yip1",
|
||
"Yyu3",
|
||
"Yeng4",
|
||
"Yut5",
|
||
"Yaan5",
|
||
"Ym5",
|
||
"Yaan6",
|
||
"Yang1",
|
||
"Yun4",
|
||
"Yon2",
|
||
"Yui5",
|
||
"Yun2",
|
||
"Yat3",
|
||
"Ye",
|
||
"Yeot1",
|
||
"Yoeng5",
|
||
"Yoek2",
|
||
"Yam2",
|
||
"Yeon6",
|
||
"Yu6",
|
||
"Yiu3",
|
||
"Yaang6",
|
||
"Yp5",
|
||
"Yai4",
|
||
"Yoek4",
|
||
"Yit6",
|
||
"Yam5",
|
||
"Yoeng6",
|
||
"Yg1",
|
||
"Yk3",
|
||
"Yoe4",
|
||
"Yam3",
|
||
"Yc",
|
||
"Yyu4",
|
||
"Yyut1",
|
||
"Yiu4",
|
||
"Ying3",
|
||
"Yip3",
|
||
"Yaap3",
|
||
"Yau3",
|
||
"Yan4",
|
||
"Yau1",
|
||
"Yap4",
|
||
"Yk6",
|
||
"Yok3",
|
||
"Yai1",
|
||
"Yeot6",
|
||
"Yan2",
|
||
"Yoek6",
|
||
"Yt1",
|
||
"Yoi1",
|
||
"Yit5",
|
||
"Yn4",
|
||
"Yaau3",
|
||
"Yau4",
|
||
"Yuk6",
|
||
"Ys",
|
||
"Yuk",
|
||
"Yin6",
|
||
"Yung6",
|
||
"Ya",
|
||
"You",
|
||
"Yaai5",
|
||
"Yau5",
|
||
"Yoi3",
|
||
"Yaak3",
|
||
"Yaat3",
|
||
"Ying2",
|
||
"Yok5",
|
||
"Yeng2",
|
||
"Yyut3",
|
||
"Yam1",
|
||
"Yip5",
|
||
"You1",
|
||
"Yam6",
|
||
"Yaa5",
|
||
"Yi6",
|
||
"Yek4",
|
||
"Yyu2",
|
||
"Yuk5",
|
||
"Yaam1",
|
||
"Yang2",
|
||
"Yai",
|
||
"Yiu6",
|
||
"Yin4",
|
||
"Yok4",
|
||
"Yot3",
|
||
"Yui2",
|
||
"Yeoi5",
|
||
"Yyun6",
|
||
"Yyu5",
|
||
"Yoi5",
|
||
"Yeot2",
|
||
"Yim4",
|
||
"Yeoi2",
|
||
"Yaan1",
|
||
"Yang6",
|
||
"Yong1",
|
||
"Yaang4",
|
||
"Yung5",
|
||
"Yeon1",
|
||
"Yin2",
|
||
"Ya3",
|
||
"Yaang3",
|
||
"Yg",
|
||
"Yk2",
|
||
"Yaau5",
|
||
"Yut1",
|
||
"Yt5",
|
||
"Yip4",
|
||
"Yung4",
|
||
"Yj",
|
||
"Yong3",
|
||
"Ya1",
|
||
"Yg6",
|
||
"Yaau6",
|
||
"Yit3",
|
||
"Yun3",
|
||
"Ying1",
|
||
"Yn2",
|
||
"Yg4",
|
||
"Yl",
|
||
"Yp3",
|
||
"Yn3",
|
||
"Yak1",
|
||
"Yang5",
|
||
"Yoe6",
|
||
"You2",
|
||
"Yap2",
|
||
"Yak2",
|
||
"Yt3",
|
||
"Yot5",
|
||
"Yim2",
|
||
"Yi1",
|
||
"Yn6",
|
||
"Yaat5",
|
||
"Yaam3",
|
||
"Yoek5",
|
||
"Ye3",
|
||
"Yeon4",
|
||
"Yaa2",
|
||
"Yu3",
|
||
"Yim6",
|
||
"Ym",
|
||
"Yoe3",
|
||
"Yaai2",
|
||
"Ym2",
|
||
"Ya6",
|
||
"Yeng6",
|
||
"Yik4",
|
||
"Yot4",
|
||
"Yaai4",
|
||
"Yyun3",
|
||
"Yu1",
|
||
"Yoeng1",
|
||
"Yaap2",
|
||
"Yuk3",
|
||
"Yoek3",
|
||
"Yeng5",
|
||
"Yeoi1",
|
||
"Yiu2",
|
||
"Yok1",
|
||
"Yo1",
|
||
"Yoek1",
|
||
"Yoeng2",
|
||
"Yeon5",
|
||
"Yiu1",
|
||
"Yoeng4",
|
||
"Yuk2",
|
||
"Yat4",
|
||
"Yg5",
|
||
"Yut4",
|
||
"Yan6",
|
||
"Yin3",
|
||
"Yaa6",
|
||
"Yap1",
|
||
"Yg2",
|
||
"Yoe5",
|
||
"Yt4",
|
||
"Ya5",
|
||
"Yo4",
|
||
"Yyu1",
|
||
"Yak3",
|
||
"Yeon2",
|
||
"Yong4",
|
||
"Ym1",
|
||
"Ye2",
|
||
"Yaang5",
|
||
"Yoi2",
|
||
"Yeng3",
|
||
"Yn",
|
||
"Yyut4",
|
||
"Yau",
|
||
"Yaak2",
|
||
"Yaan4",
|
||
"Yek2",
|
||
"Yin1",
|
||
"Yi5",
|
||
"Yoe2",
|
||
"Yei5",
|
||
"Yaat6",
|
||
"Yak5",
|
||
"Yp6",
|
||
"Yok6",
|
||
"Yei2",
|
||
"Yaap1",
|
||
"Yyut5",
|
||
"Yi4",
|
||
"Yim1",
|
||
"Yk5",
|
||
"Ye4",
|
||
"Yok2",
|
||
"Yaam6",
|
||
"Yat2",
|
||
"Yon6",
|
||
"Yei3",
|
||
"Yyu6",
|
||
"Yeot5",
|
||
"Yk4",
|
||
"Yai6",
|
||
"Yd",
|
||
"Yg3",
|
||
"Yei6",
|
||
"Yau2",
|
||
"Yok",
|
||
"Yau6",
|
||
"Yung3",
|
||
"Yim5",
|
||
"Yut6",
|
||
"Yit1",
|
||
"Yon3",
|
||
"Yat1",
|
||
"Yaam2",
|
||
"Yyut2",
|
||
"Yui6",
|
||
"Yt2",
|
||
"Yek6",
|
||
"Yt",
|
||
"Ye6",
|
||
"Yang3",
|
||
"Ying6",
|
||
"Yaau1",
|
||
"Yeon3",
|
||
"Yng",
|
||
"Yh",
|
||
"Yang4",
|
||
"Ying5",
|
||
"Yaap6",
|
||
"Yoeng3",
|
||
"Yyun4",
|
||
"You3",
|
||
"Yan5",
|
||
"Yat5",
|
||
"Yot1",
|
||
"Yun1",
|
||
"Yi3",
|
||
"Yaa1",
|
||
"Yaap4",
|
||
"You6",
|
||
"Yaang2",
|
||
"Yaap5",
|
||
"Yaa3",
|
||
"Yaak6",
|
||
"Yeng1",
|
||
"Yaak1",
|
||
"Yo5",
|
||
"Yoi4",
|
||
"Yam4",
|
||
"Yik1",
|
||
"Ye1",
|
||
"Yai5",
|
||
"Yung1",
|
||
"Yp2",
|
||
"Yui4",
|
||
"Yaak4",
|
||
"Yung2",
|
||
"Yak4",
|
||
"Yaat4",
|
||
"Yeoi4",
|
||
"Yut2",
|
||
"Yin5",
|
||
"Yaau4",
|
||
"Yap6",
|
||
"Yb",
|
||
"Yaam4",
|
||
"Yw",
|
||
"Yut3",
|
||
"Yong2",
|
||
"Yt6",
|
||
"Yaai6",
|
||
"Yap5",
|
||
"Yik5",
|
||
"Yun6",
|
||
"Yaam5",
|
||
"Yun5",
|
||
"Yik3",
|
||
"Ya2",
|
||
"Yyut6",
|
||
"Yon4",
|
||
"Yk1",
|
||
"Yit4",
|
||
"Yak6",
|
||
"Yaan2",
|
||
"Yuk1",
|
||
"Yai2",
|
||
"Yik2",
|
||
"Yaat2",
|
||
"Yo3",
|
||
"Ykw",
|
||
"Yn5",
|
||
"Yaa",
|
||
"Ye5",
|
||
"Yu4",
|
||
"Yei1",
|
||
"Yai3",
|
||
"Yyun5",
|
||
"Yip2",
|
||
"Yaau2",
|
||
"Yiu5",
|
||
"Ym4",
|
||
"Yeoi6",
|
||
"Yk",
|
||
"Ym6",
|
||
"Yoe1",
|
||
"Yeoi3",
|
||
"Yon",
|
||
"Yuk4",
|
||
"Yaai3",
|
||
"Yaa4",
|
||
"Yot6",
|
||
"Yaang1",
|
||
"Yei4",
|
||
"Yek1",
|
||
"Yo",
|
||
"Yp",
|
||
"Yo6",
|
||
"Yp4",
|
||
"Yan3",
|
||
"Yoi",
|
||
"Yap3",
|
||
"Yek3",
|
||
"Yim3",
|
||
"Yz",
|
||
"Yot2",
|
||
"Yoi6",
|
||
"Yit2",
|
||
"Yu5",
|
||
"Yaan3",
|
||
"Yan1",
|
||
"Yon5",
|
||
"Yp1",
|
||
"Yong5",
|
||
"Ygw",
|
||
"Yak",
|
||
"Yat6",
|
||
"Ying4",
|
||
"Yu2",
|
||
"Yf",
|
||
"Ya4",
|
||
"Yon1",
|
||
"You4",
|
||
"Yik6",
|
||
"Yui1",
|
||
"Yaat1",
|
||
"Yeot4",
|
||
"Yi2",
|
||
"Yaai1",
|
||
"Yek5",
|
||
"Ym3",
|
||
"Yong6",
|
||
"You5",
|
||
"Yyun1",
|
||
"Yn1",
|
||
"Yo2",
|
||
"Yip6",
|
||
"Yui3",
|
||
"Yaak5",
|
||
"Yyun2",
|
||
}
|
||
|
||
# symbols = [pad] + c + v + ja_symbols + pu_symbols + list(arpa)+list(ko_symbols)#+list(yue_symbols)###直接这么加yue顺序乱了
|
||
symbols = [pad] + c + v + ja_symbols + pu_symbols + list(arpa)
|
||
symbols = sorted(set(symbols))
|
||
# print(len(symbols))
|
||
symbols += ["[", "]"] ##日文新增上升下降调型
|
||
symbols += sorted(list(ko_symbols))
|
||
symbols += sorted(list(yue_symbols)) ##新加的yue统一摆在后头#已查过开头加Y后没有重复,韩文显然不会重复
|
||
# print(len(symbols))
|
||
if __name__ == "__main__":
|
||
print(len(symbols))
|
||
"""
|
||
粤语:
|
||
732-353=379
|
||
韩文+粤语:
|
||
732-322=410
|
||
"""
|