Thumbnail

Speech Synthesis

+ How To Add This Control To Your Project (Click to Expand)
  1. Load the most recent release of ARC.
  2. Press the Project tab from the top menu bar in ARC.
  3. Press Add Control from the button ribbon bar in ARC.
  4. Choose the Audio category tab.
  5. Press the Speech Synthesis icon to add the control to your project.
This text-to-speech skill will verbally speak the user-defined phrase out of the default audio output device of your PC or EZ-B. However, an alternate way for your robot to speak without this skill is to use the SayEZB() or Say() commands in Blockly, JavaScript or EZ-Script.

Main Window




1. Text Field
This field contains the text that you would like spoken, it can be as long as you'd like.

2. Say (PC Speaker) Button
This will output the text-to-speech through the PC's audio output device.

2. Say (EZ-B v4 Speaker) Button
This will output the text-to-speech through the EZ-B v4's onboard speaker.

Settings




*Note: The settings for the Speech Synthesis skill are contained in a separate skill. See below for instructions on how to add it to your ARC project.

1. Voice Drop-down
This drop-down contains a selection of installed voices.

2. Emaphsis Drop-down
This drop-down contains a selection of speech emphasis levels.

3. Rate Drop-down
This drop-down contains a selection of speech speeds.

4. Volume Slider
This slider sets the volume percentage for the text-to-speech output (1-100% range).

How to Use Speech Synthesis


1) Add the Speech Synthesis Skill to your ARC project (Project -> Add Skill -> Audio -> Speech Synthesis).

2) Add the Speech Settings Skill to your ARC project (Project -> Add Skill -> Audio -> Speech Synthesis Settings).

3) Select the settings you would like to output in the Speech Synthesis Setting skill.

4) Write/paste the desired text in the Speech Synthesis text field.

5) Press the Say (PC Speaker) or Say (EZ-B v4 Speaker) Button to listen to the text-to-speech.

*Note: In order to hear the speech out of the EZ-B v4 speaker you must be connected to the EZ-B.

Code Samples


Say("Hello")
or
SayEZB("Hello")

Requirements


Internal or external sound card on your computer attached to Speakers or an EZ-B I/O Controller.

Resources


Here's a community tutorial for using the speech synthesis in Windows 8.1: here

To access the additional hidden voices in Windows 10 please see the instructions from @EzAng in the comments below.

Australia
#1   — Edited
Hi there,

I am in the process of programming a JD robot and was wondering if there are any apps or skill modules that allow the pitch, tone and pace of JD's voice to be tweaked/customised? I thought it would be cool if we could put JD in character and give him a Mickey Mouse, Darth Vader, Homer Simpson or Wall-W style voice for example.

UPDATE: I successfully changed JD's voice type from Windows David to Windows Zira using the Speech Synthesis skill. I am currently looking for a way to add more text-to-speech voices to windows. I found this article (https://www.trishtech.com/2016/12/enable-hidden-text-to-speech-voices-in-windows-10/) which explains that there are hidden text-to-speech voices that can be added to windows (Eva and Mark) but I have not had success adding them yet. Are there any other ways in which we can vary JD's voice using the available skills?

Many thanks,

Kat
#2   — Edited
Hi Kat,

Using other windows 10 hidden voices:

open ARC  - go to Audio tab, click speech synthesis settings control (speech settings) where your different voices are located.

open in Audio, AudioToolBox plugin control

open a script and add ControlCommand("AudioToolbox Plugin", "ImportUWPVoices")  save and close.

run script, watch all the hidden voices be populated in the speech synthesis settings control. (speech settings)

to hear them, either open speech synthesis control, write something in there - write a short script  EZ script  - say("hello, how are you") or use Blockly or  java add Audio.say("Hello World");

that's it

I was just thinking about it, and tested it - you can open in the audio tab, microphone, (only works when you are connected to the EzB4)

open speech synthesis control, write any thing you want to say there , click record on the mic, hear it back in any voice you pick in the synthesis settings control y (speech settings) our on the EZB4 unit or robot, or export it as a file to the to the SoundBoard v4 (in audio, sound board (ezb) for later use.

EzAng
#3  
hi 

you can by voices on cepstral and modified them in swiftalker.
#4  
Yes I know, but there are free hidden voices in windows 10

EzAng
#5  
hi ezang

are there voices like darth fader or mickey mouse on win10 ?
#6   — Edited
here is a list of them:

User-inserted image


might need a magnifying glass

EzAng
#8   — Edited
right, lol

also emphasis, and speed of the voice in the speech settings

try it out
EzAng
#9  
Hi Kat again ,

before it gets lost, here is the info again:

Using other windows 10 hidden voices:

open ARC - go to Audio tab, click speech synthesis settings control (speech settings) where your different voices are located.

open in Audio, AudioToolBox plugin control

open a script and add ControlCommand("AudioToolbox Plugin", "ImportUWPVoices") save and close.

run script, watch all the hidden voices be populated in the speech synthesis settings control. (speech settings)

to hear them, either open speech synthesis control, write something in there - write a short script EZ script - say("hello, how are you") or use Blockly or java add Audio.say("Hello World");

that's it

I was just thinking about it, and tested it - you can open in the audio tab, microphone, (only works when you are connected to the EzB4)

open speech synthesis control, write any thing you want to say there , click record on the mic, hear it back in any voice you pick in the synthesis settings control y (speech settings) our on the EZB4 unit or robot, or export it as a file to the to the SoundBoard v4 (in audio, sound board (ezb) for later use.

EzAng
Australia
#10   — Edited
When you say open a script and add the control command, do you mean through the AudioToolbox plugin or separately?
Synthiam
#11  
I think he means separately. That ControlCommand() will instruct the audio toolbox to import the voices. You can have the command run every time the ezb is connected by putting it in the connection control script.
#12  
indeed it works .run the script ones and all voices pop up.

User-inserted image
#13   — Edited
Good morning, 

Quote:

Kat777 - When you say open a script and add the control command, do you mean through the AudioToolbox plugin or separately?

I mean separately.

go to: on the top, project, click on  "add", then scripting, then scripts - add -   ControlCommand("AudioToolbox Plugin", "ImportUWPVoices") save and close, done.

now you have a script, on the script click add - that's it - look at all the voices I have, :-)

run script, watch all the hidden voices be populated in the speech synthesis settings control. (speech settings)

to hear them, either open speech synthesis control, write something in there or  write a short script EZ script - say("hello, how are you") or use Blockly or java add Audio.say("Hello World");

look to the "right" of my screen:



User-inserted image



EzAng