Thumbnail

Speech Recognition

Windows Speech Recognition skill: detect custom phrases via PC mic, trigger configurable scripts/actions with adjustable confidence.

How to add the Speech Recognition robot skill

  1. Load the most recent release of ARC (Get ARC).
  2. Press the Project tab from the top menu bar in ARC.
  3. Press Add Robot Skill from the button ribbon bar in ARC.
  4. Choose the Audio category tab.
  5. Press the Speech Recognition icon to add the robot skill to your project.

Don't have a robot yet?

Follow the Getting Started Guide to build a robot and use the Speech Recognition robot skill.


How to use the Speech Recognition robot skill

Using the Microsoft Windows Speech Recognition Engine, this skill uses your computer's default audio input device and listens for known phrases. Phrases to be detected are manually configured in the Configuration menu, and custom actions (via script) are assigned to your phrases.

Most robots make a lot of noise, so locating the audio input device on a robot is impractical. It is best to find the microphone on the controlling PC/Laptop, on yourself, or somewhere in the room (away from the robot and closer to your mouth). Increasing the gain on the input device will allow voices to be recognized across large rooms, but it will also increase false positives, so ideally, keep the microphone near your mouth. Test with different audio volume levels to find the best resolution. Experiment with microphone locations and volumes to find the best setup for your environment. Ideally, use a headset or Bluetooth mic rather than your laptop microphone.

Main Window




1. Pause Button
This button pauses audio input detection. No configured commands will be executed while the skill is paused.

2. Phrase List Button
Displays the phrases configured in the Settings menu for detection. Here's the default phrase list:



3. Audio Waveform
This gives visual feedback that your audio input device (microphone) is configured correctly and is picking up voice/sounds.

4. Response Display
This will display feedback from the Speech Recognition skill. It will show the detected text from the phrase list or actions executed in the skill.

Settings




1. Confidence Drop-down
This drop-down sets the minimum confidence level the computer must detect in your voice. This robot skill will ignore any detected phrases with less confidence. If your voice isn't detected well, decrease the confidence value. A confidence value will appear in brackets beside the phrase in the Response Display when a phrase is detected. *Note: Adjusting the confidence to a lower value can produce false positives.

2. Setup Microphone Button
This button opens the properties of your installed audio input devices. Please verify that your device works by watching the soundbar for movement when you speak into it.

3. Recognition Scripts
These scripts will execute whenever a phrase is detected at or above the set confidence level (All recognized) and when a phrase is detected with low confidence.

4. Enable/Disable Phrase Fields
These fields specify the phrases to detect for Pause/Unpause speech detection.

5. Enable/Disable Command Scripts
These scripts will execute when the Enable/Disable phrases are detected.

6. Language Drop-down
ARC uses the Microsoft Speech Recognition built into Windows. All languages supported by Windows Speech Recognition are also supported in ARC. You can configure Windows to listen to any language. ARC will default to EN-US (English) language if installed. Otherwise, ARC will default to the first installed language that supports speech recognition. You may select a language with this drop-down if more than one language that supports speech recognition is installed. For more information on installing additional speech recognition languages, there is a support document here: https://www.tenforums.com/tutorials/120631-change-speech-recognition-language-windows-10-a.html

Here's how you can add a new language pack:

  1. Go to Start and open Settings.
  2. Select Time & language > Language.
  3. Select the language you want to add speech to, then select the Next button.
  4. Select the speech options you want to be included with the language.
  5. Sign out and then sign back in for the new speech pack to be added to speech options.
  6. Go back to Settings > Time & language > Language, select your new language, and then use the up-arrow button to move it to the top of the list and make it the default.
  7. Go to Speech, and make sure the Speech language setting is aligned with the previous settings.
  8. Sign out and then sign back in for the new settings to take effect.
  9. Select the desired language from the ARC Speech Recognition configuration menu.


7. Confidence Variable
This variable holds the value of the confidence percentage (in decimal format) of the last recognized phrase.

8. Phrase Variable
This variable holds the recognized phrase.

9. Phrase List
This is a list of default phrases that can be customized and expanded.

10. Command List
This is a list of default commands corresponding to the phrases in the same row; these can be customized, and additional commands can be added.

11. List Management Buttons
These buttons manage the rows of phrases. They move the rows up and down, insert them, add more to the bottom, and delete them.

How to Use Speech Recongition


1) Install, configure, and test your audio input device (see instructions below).

2) Add the Speech Recognition Skill to your ARC project (Project -> Add Skill -> Audio -> Speech Recognition). *Note: Not to be confused with Advanced Speech Recognition.

3) Set up the scripts, phrases, and commands you'd like to use in the Settings menu.

4) Save your Settings and then speak your phrases into the audio input device to activate speech recognition.

Requirements


Headset or External Mic


A headset or external mic will produce better results than the internal mic on a PC or laptop. A headset or mic will enable the recognition engine to "hear" your voice more clearly with less background noise. The background noise of the laptop, motors, radio, and room echo will cause the recognition software to return False Positives. This means the software recognizes an incorrect phrase. An external mic will also prevent the recognition software from hearing the robot speak. In short, it is important to use a Mic Headset or external Mic for a positive Speech Recognition experience.


Resources


Configure Audio Input Device

You might have to adjust the microphone input volume/gain. To adjust the mic volume, use the Windows Volume Mixer. First, make sure you have selected the correct input device. Your laptop or computer may have several microphone devices. Maybe one is on a remote camera. Find the mic you'd like to use and adjust the volume. To find the volume settings that are ideal on your computer, follow these steps:

1) Right-click on the little speaker on your system tray

2) Select "Open Sound Settings."

3) In the "Input" section of the Sound Settings, you'll notice a little VU meter beside the active device. Make sure your active device is indeed the microphone you want to use. By making sounds, the VU meter should move.

4) Click on the "Device Properties" and locate the volume slider for the microphone. We usually set our volume to 78. Play around with different volumes until you see your voice being picked up by the VU meter. Adjust the volume input level/gain to display your voice's regular volume near the middle of the VU Display graph. The recognition software will not work if the level/gain is too high because the input audio will be distorted.

Voice Training
You may train your computer for speech recognition by using the training wizard. Find the training wizard under Speech Recognition within the Windows Control Panel.


Trouble-shooting

  • If you receive an error that the input device could not be opened, the Windows privacy/security settings may have the feature disabled for Synthiam ARC. You can enable this privacy feature by following the directions on this support document: https://synthiam.com/Support/troubleshooting/camera-audio-microphone-issues.
  • Another error you may receive states that Voice Recognition was unable to start. The error may continue to read that speech recognition is not supported due to an invalid operating system or a missing device. While this error is quite generic, it could be due to a few reasons. 1) Ensure there is a microphone set as the default recording device in the sound settings of Windows. 2) Ensure there is a language installed in Windows that supports Windows Speech Recognition.

You can verify that Windows Speech recognition is working by loading the built-in Windows Speech Recognition application provided by Microsoft. Click the Start icon in Windows, then type Speech Recognition. While typing, the search dialog will display results. Locate the "Windows Speech Recognition" item and select it. This will allow you to verify that your operating system and language support speech recognition. We recommend using the Microsoft Windows application to verify that this speech recognition system works, as it includes several dialogs and helpers that Synthiam ARC cannot provide.

Video

Related Tutorials

Related Hack Events

Related Questions


ARC Pro

Upgrade to ARC Pro

Experience early access to the latest features and updates. You'll have everything that is needed to unleash your robot's potential.

#25  

Hi, can anyone tell me how to change the language in speech recognition? I have installed 'Cantonese,' but I can't find it in the dropdown menu. Am I missing any steps in the process?

User-inserted image

User-inserted image

PRO
Synthiam
#26  

You can read the manual above rather than repeating it here. There's a whole section on selecting the language and what languages are supported. Scroll up to the menu

#27  

Hi DJ,

How are you?

Perhaps, I haven't explained my question clearly. I have successfully installed some languages in the drop-down menu of "Speech Recognition," but I am facing issues with the "Cantonese" language. Despite checking and installing all the features for Cantonese, it still does not appear in the drop-down menu. Is there something missing? I apologize for any inconvenience and misunderstanding.:)

#28  

Is it possible the name for Cantonese could be listed as something else in the drop down? I found this about other names for Cantonese:

Quote:

In Hong Kong and Macau, as well as among overseas Chinese communities, the language is referred to as "Guangdong speech" or "Canton Province Speech" (; ; Gwóngdùng wá) or simply as "Chinese" (; Jùngmán).

#29  

Hi Dave,

Thank you for your message!

In Microsoft, only "zh-HK" is recognized as Cantonese, and the voice setting should be selected as "Tracy." It works seamlessly with "AI Chat GPT" and "Bing Speech Recognition" in ARC program. Then, I have installed all the Cantonese features, but for some reason, it does not appear in the drop-down menu in the Speech Recognition settings. I'm wondering if it is not supported in this application?

User-inserted image

User-inserted image

User-inserted image

PRO
Synthiam
#30  

Those are voices, not speech recognition. Voices are the sounds made to speak. So you can select Tracy from the list of voices and speak. But those are not speech recognition.

The window you want looks like this..

User-inserted image

#32  

Thank you DJ, Cantonese does not appear in the drop-down menu of "Speech Recognition" in my Windows 11. It should not be supported! However, I use Cantonese dictation for the text box in Windows 11, and it can recognize Cantonese. Therefore, I assumed that Cantonese Speech Recognition has been installed. Anyway, thanks for your help!  Cantonese Dictation

User-inserted image