none
Speech Recognition Training

    Question

  • Hi

    I'm reopening this question I had from a couple of years ago,  but this time in the VB forum.

    https://social.msdn.microsoft.com/Forums/vstudio/en-US/f7e627e1-7f0e-43bd-9369-e5a6054847ba/accessing-speech-recognition-tab-of-sapicpl?forum=csharpgeneral

    The aim is to be able to open the speech recognition training panel from Control Panel programmatically.


    Dim path1 As String = Path.Combine(Path.Combine(Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.System), "Speech"), "SpeechUX"), "sapi.cpl")
    Dim path2 As String = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.System), "rundll32.exe")
    Process.Start(New ProcessStartInfo(path2, "shell32.dll,Control_RunDLL " + path1 + " speech"))
    

    Works fine in Win 7, 8 and 10 but the Train Profile and Configure Microphone buttons are greyed out. Help appreciated.

    For any SAPI expert that happens to look at this thread, I'd love a way of being able to programmatically train a speech profile with a custom script. Even being able to get access to the standard script would be a start.

    The answer from Eric Brown here seems to be how to do it:

    http://stackoverflow.com/questions/299799/acoustic-training-using-sapi-5-3-speech-api

    But it appears it can only be done with C++ nd I'd really need some code samples to get this done. Any takers?

     


    Sunday, April 16, 2017 6:37 AM

Answers

  • What I am asking is how to open the Speech Properties window such that the Train Profile and Configure Microphone buttons are not disabled.

    This works on my Windows 10 OS :

    Process.Start(New ProcessStartInfo("explorer", "shell:::{D17D1D6D-CC3F-4815-8FE3-607E7D5D10B3}"))

    • Marked as answer by Oztromboli Monday, April 17, 2017 1:16 PM
    Monday, April 17, 2017 12:20 PM

All replies

  • Tools for speech has probably never been in Microsoft as developers wanted it. 

    Every OS got his own system. If I look to Windows 10 I'm facing two systems,

    1. In .Net the System.Speech part
    2. In Cortona it seems another part which does not want to talk with the system.net part.

    If I change simply the voices with Windows 10, I get only mobile voices on a PC. With System.Speech I get the Windows 7 voices and to get English voices for that you have to load the English language pack, but this does not affect Windows 10. The documentation is even more rare, because it seems at Microsoft some think it is the same.

    Therefore asking this question in a forum for developers in in my perception as asking too people in Eritrea how to solve the hunger. 

    Try to ask it for those who are responsible for the Microsoft OS, and if you tell to ask this in the forum than ask if the people there are responsible for the answer as was it Microsoft and Microsoft will pay if that is wrong.

    www.microsoft.forums\worldwide 


    Success
    Cor




    Sunday, April 16, 2017 7:34 AM
  • Hi Oztromnoli,

    According to your description, please refer to http://stackoverflow.com/questions/2135065/system-speech-recognition-choosing-recognition-profile

    you may do it via speechlib (the SAPI IDispatch-compatible API).  Look at ISpeechRecognizer::Profile.

    Hope it is helpful to you.

    Best Regards,

    Cherry Bu


    MSDN Community Support
    Please remember to click "Mark as Answer" the responses that resolved your issue, and to click "Unmark as Answer" if not. This can be beneficial to other community members reading this thread. If you have any compliments or complaints to MSDN Support, feel free to contact MSDNFSF@microsoft.com.

    Monday, April 17, 2017 9:00 AM
    Moderator
  • Hi Cherry,

    I am familiar with the StackOverflow thread you linked. This details a method for changing the speech user. I am quite able to do this programmatically and am familiar with the use of ISpeechRecognizer:Profile (except for training it programmatically - see below). What I am asking is how to open the Speech Properties window such that the Train Profile and Configure Microphone buttons are not disabled.

    Thanks

    OzS

    PS Some code examples how to train the profile programmatically using a custom script as outlined by Eric Brown would be pure gold.

    Monday, April 17, 2017 10:33 AM
  • Hi Cor

    I'm amazed at the limited amount of distress apparent on the forums for issues in this area. Thanks for the best wishes. I'll live in hope that someone can help.

    OzS

    Monday, April 17, 2017 10:36 AM
  • What I am asking is how to open the Speech Properties window such that the Train Profile and Configure Microphone buttons are not disabled.

    This works on my Windows 10 OS :

    Process.Start(New ProcessStartInfo("explorer", "shell:::{D17D1D6D-CC3F-4815-8FE3-607E7D5D10B3}"))

    • Marked as answer by Oztromboli Monday, April 17, 2017 1:16 PM
    Monday, April 17, 2017 12:20 PM
  • Wow, thanks Castorix. Works on my Win10 too, though opens on the Speech To Text Tab. I'll mark as answered. Will test on Win7, 8 and 8.1 on Wednesday. Great work!

    OzS

    Monday, April 17, 2017 1:16 PM