Use the OpenAI models for converting text to speech. It includes nine built-in voices that can be used.
How to add the Openai Text To Speech robot skill
- Load the most recent release of ARC (Get ARC).
- Press the Project tab from the top menu bar in ARC.
- Press Add Robot Skill from the button ribbon bar in ARC.
- Choose the Audio category tab.
- Press the Openai Text To Speech 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 Openai Text To Speech robot skill.
How to use the Openai Text To Speech robot skill
The OpenAI Text-to-Speech robot skill for Synthiam ARC allows your robot to communicate naturally by converting written text into audible speech using advanced OpenAI models. Simply send any text you want the robot to vocalize using the ControlCommand()
, and the robot will produce clear, expressive speech in real-time.
One of the unique aspects of this robot skill is that it leverages OpenAI's sophisticated AI-driven speech synthesis. This means that each time you request speech - even when requesting the exact same text - the resulting audio will never sound identical. Variations in tone, pacing, and inflection make the robot's voice dynamic, realistic, and engaging.
Benefits of Text-to-Speech
- Enhanced Interaction: Creates a more immersive and interactive experience for users, making robot-human interactions more intuitive.
- Accessibility: Assists users who may have visual impairments or prefer auditory communication.
- Efficiency: Automates announcements, instructions, and feedback, saving time and effort.
- Personalization: Multiple voices allow customization to suit specific applications or contexts, from professional environments to casual interactions.
Available Voices
This robot skill includes nine distinct OpenAI-generated voices, each with unique characteristics:
- Alloy: Clear, neutral, and versatileideal for general-purpose announcements and technical explanations.
- Echo: Soft and reflective, suited for storytelling and calm interactions.
- Fable: Expressive and animated, perfect for creative narratives and entertainment.
- Onyx: Deep, authoritative voice, well-suited for commands, alerts, or serious contexts.
- Nova: Friendly and inviting, great for customer service and casual conversation.
- Shimmer: Bright and enthusiastic, effective for lively engagements and educational content.
- Ember: Warm and comforting, excellent for reassuring interactions or empathetic communication.
- Luna: Calm and soothing, ideal for relaxation, guided activities, or therapeutic applications.
- Zephyr: Light and airy, providing a gentle and approachable tone suitable for general dialogue.
How to Use
Simply invoke the ControlCommand()
with your desired text and voice selection to enable your robot to speak dynamically. Each command produces uniquely synthesized audio, creating engaging interactions every time. View the bottom of this document or the Cheat Sheet in ARC to see available control commands for this robot skill.
Configuration
The configuration screen has 2 tabs and several options.
Settings Tab
Voice Model: This is the voice that can be configured. There are 9 different voices that each have a unique sound and quality.
Speak out of EZB: If this option is checked, the audio will be spoken out of the EZB. Otherwise, it will speak out of the PC Speaker
Start Speaking Script: This script will execute as soon as the text begins to speak. You can use this script to move a robot mouth or turn on an LED or something when the robot is speaking.
Text Variable: This is the variable that holds the text that is currently being spoken.
API Settings Tab
- API Key: Configure the Open AI API Key that you can obtain from the open ai website.
Example
ControlCommand("OpenAI Text To Speech", "speak", "The text to speak as a string");
Enjoy bringing dynamic and expressive speech capabilities to your robotics projects with the OpenAI Text-to-Speech Robot Skill.
Control Commands for the Openai Text To Speech robot skill
There are Control Commands available for this robot skill which allows the skill to be controlled programmatically from scripts or other robot skills. These commands enable you to automate actions, respond to sensor inputs, and integrate the robot skill with other systems or custom interfaces. If you're new to the concept of Control Commands, we have a comprehensive manual available here that explains how to use them, provides examples to get you started and make the most of this powerful feature.
Control Command Manual// Speak the provided text asynchronously in the background.
- controlCommand("OpenAI Text To Speech", "speak", "The text to speak as a string")
// Speak the provided text and wait for it to complete.
- controlCommand("OpenAI Text To Speech", "speakWait", "The text to speak as a string")
v1 of this robot skill has been added to the robot skill store.
v3 has been updated to fix a minor bug where not all voices were being displayed in the configuration window.