1. espeak-ng-1.52(1.53-dev) Windows版在命令行下无法正确读中文:
https://www.bilibili.com/read/cv9970630
不过不知道什么时候开始,粤语竟然可以把123读成1百2十3了。有空看看是什么规则的效果。
2. espeak-ng默认Chinese (Mandarin, latin as English)无法读中文
https://github.com/espeak-ng/espeak-ng/issues/1163/
上面两个问题有相关性。粤语的情况要好一点,只是在命令行下直接读不能读,属于编码问题。普通话是全部都不能读。它会把“我同意”都城wo tong two yi four",第一个字有时不读声调(我同意、中国),有时读(你们、美国)。
- https://github.com/espeak-ng/espeak-ng/issues/1236 (我回复了这个issue,意外地帮提问者解决了一个问题)
- https://github.com/espeak-ng/espeak-ng/issues/1028
- https://github.com/espeak-ng/espeak-ng/issues/1163
- https://github.com/espeak-ng/espeak-ng/issues/1044(这个issue解释了技术根源,应该在这里跟进)
1044已修复。Eureka做了这个pull request请求合并修改到NVDA:https://github.com/nvaccess/nvda/pull/14118
2022-9-13,我很可能犯了一系列错误,问题并没有修复。反而把很多东西搞混乱了。
据说,这个改动引入了问题:
https://github.com/espeak-ng/espeak-ng/commit/48259058358d6d04b3155b1265b2c875489bd301
然后我推动提交了这个改动,但并没有很好地解决问题:
https://github.com/espeak-ng/espeak-ng/commit/1443c970cdffe258276e1a6442316268c1d380be
我想我要认真对比一下普通话和粤语的差异,找一个完美的解决方案。测试文本:
- 此电脑 means this computer
- 你好马 ma is a horse
继续跟进:https://github.com/espeak-ng/espeak-ng/issues/1370
$ espeak-ng -x -vcmn '此电脑 means this computer'
c'i3_| di11'a4n_| na11'o3_| (en)mi:11nz_| DI11s_| k@11mpju:11t311(cmn)_|
$ grep 此 cmn_list
此 ci3
$ grep 电 cmn_list
电 dian4
$ grep 脑 cmn_list
脑 nao3
$ espeak-ng -x -vyue '此电脑 means this computer'
c'i2_| d'i6n_| n'ou5_| (en)m'i:1nz_| DI1s_| k@1mpj'u:1t31(yue)_|
$ grep 此 yue_list
此 ci2
$ grep 电 yue_list
电 din6
$ grep 脑 yue_list
脑 nou5
$ espeak-ng -X -vcmn '此电脑 means this computer 你好吗 ma is a horse'
Found: '此' [ci3] $text
Found: '电' [dian4] $text
Found: '脑' [nao3] $text
Translate 'means'
2 ?1 m [_^_]
Translate 'means'
1 m [m]
36 ea [i:]
1 e [E]
1 n [n]
42 @) s (_NS1 [z]
43 n) s (_S1 [z]
23 s (_N [z]
1 s [s]
22 s (_ [s]
Translate 'mean'
1 m [m]
36 ea [i:]
94 XC) ea (n_ [i:]
78 ean (_ [i@n]
1 e [E]
1 n [n]
Translate 'this'
2 ?1 t [_^_]
Translate 'computer'
2 ?1 c [_^_]
Translate 'computer'
84 co (mput [k0#]
74 _) co (m@ [k0#]
1 c [k]
1 m [m]
1 p [p]
34 u (CA [ju:]
1 u [V]
1 t [t]
76 &) er (_ [3]
55 &) er [3]
36 er [3:]
57 er (_ [3:]
1 e [E]
Found: '你' [ni3] $text
Found: '好' [hao3] $text
Found: '吗' [ma5] $text
Translate 'ma'
2 ?1 m [_^_]
Translate 'ma'
1 m [m]
1 a [a]
44 XC) a (_ [A:]
Translate 'is'
2 ?1 i [_^_]
Found: 'a' [ei51] $text
Translate 'horse'
2 ?1 h [_^_]
Translate 'horse'
1 h [h]
89 _) horse [hO@s]
c'i3_| di11'a4n_| na11'o3_| (en)mi:11nz_| DI11s_| k@11mpju:11t311(cmn)_| n'i3_| ha11'o3_| m'a5_| (en)mA:11_| I11z(cmn)_| 'ei51_| (en)hO@11s(cmn)_|
$ espeak-ng -X -vyue '此电脑 means this computer 你好吗 ma is a horse'
Found: '此' [ci2] $text
Found: '电' [din6] $text
Found: '脑' [nou5] $text
Translate 'means'
2 ?1 m [_^_]
Translate 'means'
1 m [m]
36 ea [i:]
1 e [E]
1 n [n]
42 @) s (_NS1 [z]
43 n) s (_S1 [z]
23 s (_N [z]
1 s [s]
22 s (_ [s]
Translate 'mean'
1 m [m]
36 ea [i:]
94 XC) ea (n_ [i:]
78 ean (_ [i@n]
1 e [E]
1 n [n]
Translate 'this'
2 ?1 t [_^_]
Translate 'computer'
2 ?1 c [_^_]
Translate 'computer'
84 co (mput [k0#]
74 _) co (m@ [k0#]
1 c [k]
1 m [m]
1 p [p]
34 u (CA [ju:]
1 u [V]
1 t [t]
76 &) er (_ [3]
55 &) er [3]
36 er [3:]
57 er (_ [3:]
1 e [E]
Found: '你' [nei5] $text
Found: '好' [hou2] $text
Found: '吗' [maa1] $text
Translate 'ma'
2 ?1 m [_^_]
Translate 'ma'
1 m [m]
1 a [a]
44 XC) a (_ [A:]
Translate 'is'
2 ?1 i [_^_]
Translate 'a'
2 ?1 a [_^_]
Flags: a $nounf
Translate 'a'
1 a [a]
26 _) a (_ [a#]
Translate 'horse'
2 ?1 h [_^_]
Translate 'horse'
1 h [h]
89 _) horse [hO@s]
c'i2_| d'i6n_| n'ou5_| (en)m'i:1nz_| DI1s_| k@1mpj'u:1t31(yue)_| n'ei5_| h'ou2_| m'aa1_| (en)m'A:1_| I1z_| a#1_| h'O@1s(yue)_|
评论