Skip to content

RAPP Text to speech using Espeak & Mbrola

Manos Tsardoulias edited this page Jul 12, 2016 · 5 revisions

In order to provide speech capabilities to the robots that do not have a Text-To-Speech system installed, but are equipped with microphones, the rapp_text_to_speech_espeak ROS node. This module utilizes the espeak speech synthesis library, as well as the mbrola project for altering the speech synthesis voices.

ROS Services

Text to speech

Service URL: /rapp/rapp_text_to_speech_espeak/text_to_speech_topic

Service type:

#Contains info about time and reference
Header header
#The text to be spoken
string text
#The audio output file
string audio_output
#Language (en, gr)
string language
---
#Possible errors
string error

It should be mentioned that there are cases where Espeak fails to produce the entirety of the given text as audio (for example if the input is a long sentence in Greek, it would probably create a shorter audio than the desired).

Launchers

Standard launcher

Launches the rapp_text_to_speech_espeak node and can be launched using

roslaunch rapp_text_to_speech_espeak text_to_speech_espeak.launch

Web services

URL

localhost:9001/hop/text_to_speech

Input / Output

Input = {
  “text”: “THE_TEXT_TO_BECOME_SPEECH”
  “language”: “THE_TEXT_LANGUAGE”
}
Output = {
  "payload": THE_AUDIO_DATA,
  "basename": "test.wav",
  "encoding": "base64",
  "error": ""
}

The full documentation exists here

Clone this wiki locally