Question

I am working on a speech recognition project with a Kinect and I would like to change the language in the SpeechRecognitionEngine library. But on my machine there is only one language installed.

foreach (RecognizerInfo regInf in SpeechRecognitionEngine.InstalledRecognizers())
{ 
    // regInf.Cultur -> returns "en-Us"
    // regInf.Id -> returns "SR_MS_en-US_Kinect_11.0" and "SR_MS_ZXX_Lightweight_v11.0"
}

Using this code above I get only the "en-US" language. That's an odd thing. Because I work on a machine with a Windows 7 german edition.

How can I install the german language for speech recognition?

Était-ce utile?

La solution 2

On this page you can download the several language packages:

http://www.microsoft.com/en-us/kinectforwindows/develop/developer-downloads.aspx

Autres conseils

It looks like you have to have the proper Recognition culture piece installed.

see http://msdn.microsoft.com/en-us/library/system.speech.recognition.recognizerinfo.aspx

private SpeechRecognitionEngine SelectRecognizer(CultureInfo requiredCulture, string requiredId) 
{
  // Select based on a specific recognizer configuration
  SpeechRecognitionEngine speechRecognitionEngine=null;
  foreach (RecognizerInfo config in SpeechRecognitionEngine.InstalledRecognizers()) 
  {
    if (config.Culture.Equals(requiredCulture) && config.Id== requiredId) 
    {
      speechRecognitionEngine = new SpeechRecognitionEngine(config);
      break;
    }
  }
  return speechRecognitionEngine;
}
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top