string TextToBeRead = "My sample text";
SpeechSynthesizer speaker = new SpeechSynthesizer();
speaker.Rate = 5;
speaker.Volume = 70;
speaker.SpeakAsync(TextToBeRead);
一旦扬声器开始说话,有没有办法改变速率或音量?我试图在运行时更改它,但输出仍然使用旧的速率和音量。感谢。
答案 0 :(得分:2)
不能在阅读时无法更改它,但您可以订阅SpeakProgress
事件,这样您就可以获得CharacterPosition
并在指定位置以新的费率和音量重新开始说话
答案 1 :(得分:1)
您可以使用SSML prosody element以及速率和音量属性进行内联。
您需要在SpeechSynthesizer上使用SpeakSsmlAsync方法才能使其正常工作。