我在应用程序中使用@ ionic-native / text-to-speech进行文本语音转换。 Ionic使用此插件:https://github.com/vilic/cordova-plugin-tts
我想在文本中使用ssml标记:
const options: any = {
text: '<speak>I like <sub alias="pizza">rotten eggs</sub></speak>',
locale: 'en-US',
rate: 1.0
};
this.tts.speak(options)
.then(() => {
// do anything
})
.catch((error: any) => {
// do anything
});
。
问题:
使用 Google的文字进行语音转换时,它会忽略ssml标签。所以,它说:
我喜欢烂鸡蛋。
在 iOS 上的文字转语音功能可读取所有内容:
<说话>我喜欢烂鸡蛋
有人知道我需要更改以获得正确的发音吗?
答案 0 :(得分:1)
因为...
1)Cordova插件仅使用设备碰巧具有的任何文本到语音引擎,然后...
2)文本到语音的发音因引擎而异,并且无法通过代码进行修改...至少在Android上不是...
除了基于运行的平台(不现实或不实际)自己解析和“预校正”字符串之外,我看不到如何以其他方式控制发音。
除非...使用基于云的语音是可以的,并且还有其他一些基于云/平台独立的插件可以按照您想要的方式发音。