我的理解是,这个X-SAMPA XML样本 ,就像这里的其他样本,甚至在这里 & 这里 ,都应该听起来像是什么东西。
String text = "<speak xml:lang=\"en-US\"> <phoneme alphabet=\"xsampa\" ph=\"faIv\"/>.</speak>"; mTts.speak(text, TextToSpeech.QUEUE_ADD, null);
然而,由于一些奇怪的原因,它并没有说什么(完全沉默)。
我错过了什么?
澄清:我的TTS示例应用程序设置确定:如果我改变.
在此之前, </speak>
标记了任何单词,Android TTS只是说这个词很好。 我唯一的问题是,我无法以任何方式利用<phoneme alphabet=\"xsampa\" ph=\"faIv\"/>
。
我明白了.
应该是沉默的,但根据这些样本的海报,它应该在XML中发出XSAMPA音素。 我错过了什么?
正在尝试执行的正确语法与您在问题中发布的内容完全相同。 如果您的手机设置为使用默认的Pico TTS ,也就是说。
在Settings > Voice input & output > Text-to-speech settings > Default Engine
确保已selectPico TTS
并立即尝试相同的代码。
W3C 语音合成标记语言文档中logging了音素元素的正确语法。
正如在答案中提到堆栈溢出问题3648239并非所有元素都正确parsing。
在这个谷歌组论坛post中有进一步的parsing错误的澄清,但它会出现这些错误可以被忽略。
您可以在Google上的TTS-for-Android网站上find更多信息,方法是在该网站上发布您的问题。
网站closures后,我一直无法阅读样本。 我不确定这是否是一个暂时的问题,我会在稍后检查,看看能否find它们。