Я пытаюсь изменить высоту разговорного текста через SSML и .NET SpeechSynthesizer (System.Speech.Synthesis)
SpeechSynthesizer synthesizer = new SpeechSynthesizer();
PromptBuilder builder = new PromptBuilder();
builder.AppendSsml(@"C:\Users\me\Documents\ssml1.xml");
synthesizer.Speak(builder);
Содержимое файла ssml1.xml:
<?xml version="1.0" encoding="ISO-8859-1"?>
<ssml:speak version="1.0"
xmlns:ssml="http://www.w3.org/2001/10/synthesis"
xml:lang="en-US">
<ssml:sentence>
Your order for <ssml:prosody pitch="+30%" rate="-90%" >8 books</ssml:prosody>
will be shipped tomorrow.
</ssml:sentence>
</ssml:speak>
Скорость распознается: «8 книг» озвучиваются намного медленнее, чем остальные, но какое бы значение ни выставлялось для «высоты звука», это не имеет значения! Допустимые значения можно найти здесь:
http://www.w3.org/TR/speech-synthesis/#S3.2.4
Я что-то упустил или меняю высоту звука, просто не поддерживаемую механизмом Microsoft Speech?
фриц