Android的TTS XML中音素属性的正确语法是什么?

我的理解是,这个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音素。 我错过了什么?

Solutions Collecting From Web of "Android的TTS XML中音素属性的正确语法是什么?"

正在尝试执行的正确语法与您在问题中发布的内容完全相同。 如果您的手机设置为使用默认的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它们。