наилучшая практика для определения произношения для Android TTS двигателя?

В целом, меня очень впечатлил текстовый речевой движок Android по умолчанию (т.е. com.svox.pico). Как и ожидалось, он неправильно произносит некоторые слова (как и я) и поэтому иногда нуждается в руководстве по произношению. Поэтому я задаюсь вопросом о лучших методах фонетического написания тех слов, которые неправильно использует движок pico TTS.

Например, правильное произношение птицы Чачалака это ЧАХ-ЧАХ-ЛАХ-КАХ. Вот что производит двигатель TTS:

mTts.speak("Chachalaca", TextToSpeech.QUEUE_ADD, null); // output: chuh-KAL-uh-KUH
mTts.speak("CHAH-chah-LAH-kah", TextToSpeech.QUEUE_ADD, null); // output: CHAH-chah-EL-AY-AYCH-dash-kuh
mTts.speak("CHAHchahLAHkah", TextToSpeech.QUEUE_ADD, null); // output: CHA-chah-LAH-ka
mTts.speak("CHAH chah LOCKah", TextToSpeech.QUEUE_ADD, null); // output: CHAH-chah-LAH-kah

Вот мои вопросы.

Существует ли стандартное фонетическое написание, распознаваемое движком Android TTS?Если нет, то существуют ли какие-либо общие правила для написания пользовательских произношений, которые повышают вероятность написания этих слов в будущих движках / версиях TTS?Похоже, что движок Android TTS игнорирует регистр текста. Как лучше всего указать акцент?

Кстати, вот что пишет движок TTS в logcat:

V / TtsService (294): обработка TTS: CHAH chah LOCKah
V / TtsService (294): TtsService.setLanguage (англ, США,)
I / SVOX Pico Engine (294): язык уже загружен (en-US == en-US)
I / SynthProxy (294): установка скорости речи на 100
I / SynthProxy (294): установка высоты звука на 100

[ОБНОВИТЬ]

Я попытался передать XML-документ в TextToSpeech.speak () следующим образом:

            String text = "<?xml version=\"1.0\"?>" +
                "<speak version=\"1.0\" xmlns=\"http://www.w3.org/2001/10/synthesis\" " +
                    "xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" " +
                    "xsi:schemaLocation=\"http://www.w3.org/2001/10/synthesis " +
                        "http://www.w3.org/TR/speech-synthesis/synthesis.xsd\" " +
                    "xml:lang=\"en-US\">" +

                    "That is a big car! " +
                    "That <emphasis>is</emphasis> a big car! " +
                    "That is a <emphasis>big</emphasis> car! " +
                    "That is a huge bank account! " +
                    "That <emphasis level=\"strong\">is</emphasis> a huge bank account! " +
                    "That is a <emphasis level=\"strong\">huge</emphasis> bank account!" +
                "</speak>";
            mTts.speak(text, TextToSpeech.QUEUE_ADD, null);

Как предположила Android Eve, движок TTS считывал только тело XML (то есть комментарии о большой машине и огромном банковском счете). Я не осознавал, что механизм TTS способен анализировать XML-документы. Однако я не услышал никакого акцента в выводе TTS.

[ОБНОВЛЕНИЕ 2]

Я упростил вопрос о том, поддерживает ли Android TTS язык разметки речиВот.

Ответы на вопрос(2)

Ваш ответ на вопрос