在我的UWP应用程序中,我使用SpeechSynthesizer生成英语文本到语音。基本上是一个具有朗读英语文本能力的应用程序。该应用程序将通过Windows商店与Visual 2015发布,并以最新更新为开发工具。
var synth = new SpeechSynthesizer();
var voices = SpeechSynthesizer.AllVoices;
var english = from v in voices where v.Language.Contains("en") && v.Gender == VoiceGender.Female
当我试图运行时,这是我一直在这一行上得到的错误消息:
recognitionEngine.LoadGrammar(GrammarBuilder());
错误:
The language for the grammar does not match the language of the speech recognizer.
我到处寻找,但我似乎找不到答案!
在语音识别属性中,我有两个语言选项:
Microsoft语音识别器8.0 for Windows (英语-英国)
Microsoft语音识别器8.0 for Windows (英语-美国)。
只有当我将设置为English
因此,我正在尝试在我的树莓派上使用节日tts来实现一个智能家居项目。但是,当我尝试使用英式英语语音时,系统会提示我没有安装英式英语语音。 echo "hello world" | festival --tts --language "british_english"
Not a british English voice installed 但如果我输入一种虚构的语言,它会显示其中一种可用的语言,它显示安装了英式英语。 echo "hello world" | festival --tts --language "madeuplangu