Features/Global Text To Speech

From Sugar Labs
Jump to navigation Jump to search


When the user press Alt+Shift+S the currently selected text should be said by the computer.


Current status

  • Targeted release: 0.96
  • Last updated: 31 Jan 2012
  • Percentage of completion: 90%

Detailed Description

The feature add a service to provide text to speech, and a device in the frame to configure pitch and velocity. A already reserved alt-shift-s key stroke say the selected text in any activity.

The actual implementation does not add any new dependency, and a initial version has been sent to sugar-devel for review.

Thread in sugar-devel: http://lists.sugarlabs.org/archive/sugar-devel/2011-November/034274.html

Old information:

This is information about old intents of implementing this feature. Is a different implementation, then is here only for reference.




A GSOC project from Hemant Goyal worked in this area, related links:

  1. Google Summer of Code Logs ‐ http://wiki.laptop.org/index.php?title=User:Hemant_goyal
  2. python‐dotconf – parser for the dot.conf configuration file ‐ http://code.google.com/p/python‐dotconf/
  3. pydotconf API documentation ‐ http://www.nsitonline.in/hemant/stuff/python‐dotconf/docs/
  4. speech‐dispatcher RPM packages for OLPC ‐ http://koji.fedoraproject.org/koji/packageinfo?packageID=6374
  5. python‐dotconf RPM packages for OLPC – http://koji.fedoraproject.org/koji/packageinfo?packageID=6527
  6. Patches for sugar ‐ http://dev.laptop.org/git?p=users/hemantgoyal/speech;a=summary
  7. speechd python API ‐ http://cvs.freebsoft.org/repository/speechd/src/python/speechd/client.py?view=markup
  8. Active dev.laptop.org TRAC tickets relevant to the project
    1. Inclusion of speech‐dispatcher packages ‐ http://dev.laptop.org/ticket/7906
    2. Inclusion of python‐dotconf packages ‐ http://dev.laptop.org/ticket/7907
    3. Integration of speech‐synthesis into Sugar ‐ http://dev.laptop.org/ticket/7911
    4. Speech Device Icon Review ‐ http://dev.laptop.org/ticket/7911
  9. Listen n Spell ‐ http://wiki.laptop.org/go/Listen_and_Spell
  10. Read Etexts http://wiki.laptop.org/go/Read_Etexts

Benefit to Sugar

Text to speech is a good feature to kids, when they are learning to read, and to kids with disabilities.

This feature does not cover the more complex uses of text to speech, like multiple languages and word highlighting.

In the future, we can move part of this code to sugar-toolkit to do easier to the activities use TTS and avoid duplicating code.

The backend can be changed in the future too, if you see there are better voices for example in Festival. Doing the change in a single place will be easier than modify every activity.


The change is isolated.

UI Design

I propose use de default language now, and only expose controls to set pitch and velocity. In a later change, we can implement have more than one language enabled, and a switch to change it.

The UI will be a device in the frame, with the needed controls in the palette.

Text to speech.png

How To Test

Features/Global Text To Speech/Testing

User Experience


We already include all the needed dependencies.

Contingency Plan


Release Notes

Comments and Discussion