查看: 1235|回复: 6
打印 上一主题 下一主题

[求助] 多个汉字都发 1个拼音。链接已经成功

[复制链接]

该用户从未签到

7

主题

36

回帖

600

积分

举人

Rank: 4

积分
600
跳转到指定楼层
1
发表于 2012-4-18 14:15:35 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 YGYL 于 2012-4-21 09:26 编辑

我做中文发音库 ,问题是 多个汉字都发 1个拼音。那怎么连接省空间。
比如有个 语音文件 ai1.spx  测试可以在词典里正常发音    按现在的提法  如果哎字要发ai1音 就要建立一个 哎.spx 空文件   里面写上 @@@LINK=\ai1.spx
我试了,不行啊,选哎字 发音出错 电脑上提示 Playsound Failed: 0    手机上提示Playsound Failed 13
@@@LINK=ai1.spx之类也试了……都不行

=========
rayman  大大的光辉指引下终于测试成功。(包括手机和PC上)

提2个建议:
1.现在的方法是存成UNICODE格式文本再删除文件头的最前2个字节。这个太麻烦了。改改代码吧,也支持普通文本直接读吧。或者搞个名叫 @@语音List.txt  的文件 把所有连接都写进去,省空间啊,免得多几万个文件
2.能不能支持“连读”因为词语的发音远比单字发音多,不可能每个单词都给它做个音。占用空间太大,效率也慢。 -----就是有词条“安全第一” 我想发音,这么写“ @@@LINK=\an1.spx>@@@LINK=\quan2.spx>@@@LINK=\di4.spx>@@@LINK=\yi1.spx”  或者简写成  @@@LINK=\an1.spx>quan2>di4>yi1 就是分别读4个单字      再支持中间加个“*” 当停顿1秒符号   这样就相当于简单的TTS引擎了。对我们做词语发音,做多音字非常的好(比如说1个字有2个读音,那么先读1个音,过一秒再读一个音,写的话就这么写"@@@LINK=\an1.spx*an4.spx")

该用户从未签到

45

主题

1420

回帖

1万

积分

管理员

Rank: 13Rank: 13Rank: 13Rank: 13

积分
10971

管理组专用章

2
发表于 2012-4-18 17:52:28 | 只看该作者
应该是 @@@LINK=\ai1.spx

该用户从未签到

7

主题

36

回帖

600

积分

举人

Rank: 4

积分
600
3
 楼主| 发表于 2012-4-18 20:58:39 | 只看该作者
本帖最后由 YGYL 于 2012-4-18 21:05 编辑

2# rayman

就是@@@LINK=\ai1.spx     几种可能我都试了,都不行,文件我也存了几种格式
,你说要utf-16    虽然没有找到哪个程序能直接保存成UTF-16  我也存了好几种UNICODE格式 ,都不行

有没有现成成功的原材料

该用户从未签到

45

主题

1420

回帖

1万

积分

管理员

Rank: 13Rank: 13Rank: 13Rank: 13

积分
10971

管理组专用章

4
发表于 2012-4-19 00:12:15 | 只看该作者
用ultraedit吧,注意要切换到16进制模式后将文件头的FE FF删掉(这个是utf-16的编码标记)你可以看看附件里的demo_data\test2.spx

demo.rar

157.77 KB, 下载次数: 3, 下载积分: 米 -5 粒

该用户从未签到

7

主题

36

回帖

600

积分

举人

Rank: 4

积分
600
5
 楼主| 发表于 2012-4-19 09:26:30 | 只看该作者
本帖最后由 YGYL 于 2012-4-19 09:54 编辑

4# rayman
rayman  大大的光辉指引下终于测试成功。(包括手机和PC上)

提2个建议:
1.现在的方法是存成UNICODE格式文本再删除文件头的最前2个字节。这个太麻烦了。改改代码吧,也支持普通文本直接读吧。或者搞个名叫 @@语音List.txt  的文件 把所有连接都写进去,省空间啊,免得多几万个文件
2.能不能支持“连读”因为词语的发音远比单字发音多,不可能每个单词都给它做个音。占用空间太大,效率也慢。 -----就是有词条“安全第一” 我想发音,这么写“ @@@LINK=\an1.spx>@@@LINK=\quan2.spx>@@@LINK=\di4.spx>@@@LINK=\yi1.spx”  或者简写成  @@@LINK=\an1.spx>quan2>di4>yi1 就是分别读4个单字      再支持中间加个“*” 当停顿1秒符号   这样就相当于简单的TTS引擎了。对我们做词语发音,做多音字非常的好(比如说1个字有2个读音,那么先读1个音,过一秒再读一个音,写的话就这么写"@@@LINK=\an1.spx*an4.spx")

还有我发现 PC版和WM手机版在处理
@@@LINK=\ai1.spx
@@@LINK=\ai2.spx
的时候反应不一样,PC版直接不发音,WM手机版会读出第1行的音

该用户从未签到

7

主题

36

回帖

600

积分

举人

Rank: 4

积分
600
6
 楼主| 发表于 2012-4-19 10:10:24 | 只看该作者
刚才想到一个搞笑的:如果rayman大大搞出连读 我到时候把日文的你好 こんにちは(kong ni ji wa)   链接到中文“锅你洗了哇”

该用户从未签到

7

主题

18

回帖

152

积分

被盗用户

积分
152
7
发表于 2012-4-21 12:25:10 | 只看该作者
本帖最后由 dindog 于 2012-4-21 12:28 编辑

删除头2个字节?听上去是删掉了UTF的BOM,你用什么编辑器的?

****看过上面回帖,确认是bom,应该各大流行文本编辑器都支持存为没签名模式的,楼主试试。比如Emeditor: