Speech Server

From OLPC
Jump to navigation Jump to search

Screen Reader TTS Service

Objective

Develop a simple and scalable Screen Reader TTS Service for (Text to Speech) Plugin using eSpeak Speech synthesis for XO using python.

Description

The Screen reader will provide the users with the following capabilities :

  • A TTS Control Panel to control various parameters of ESpeak.
  • Ability to highlight text anywhere, and synthesize speech from it using a keyboard shortcut or through a button in Sugar UI.
  • Voice recording and playback, to easily record your own voice reading the page in your own language, and create personalized spoken translations.

Target Audience

Students (taken from Book reader feature set)–

  1. A text to speech option can help kids learn to read.
  2. A text to speech option might help kids that do not like to read a lesson but would not mind listening to it at a speed they could understand it.

Existing Tools Present

Elements of Screen Reader Service

  • A python ctypes file to link to libespeak library of espeak.
  • A dbus service to expose the espeak object globally to all xo activities.
  • a python script to accept highlighted data from sugar environment using X11 Primary selection and pass it to the dbus service for synthesis.

Codebase

The code for the project can be accessed in the git repository at | Screen Reader GIT

Team

Core Team :

Mentor : Arjun Sarwal

The team would also like to express their gratitude to Cody Lodrige for his assistance during coding. Specifically he wrote the ctypes binding to libespeak and created a dbus service for the same.