Voce: Open Source Speech Interaction

Tyler Streeter




Voce is a speech synthesis and recognition library that is cross-platform, accessible from Java and C++, and has a very small API.  It uses CMU Sphinx4 and FreeTTS internally.  “Voce” is Italian for “voice” (pronounciation).


Here is some sample code demonstrating the simplicity of the API:

// Speech synthesis in Java

voce.SpeechInterface.synthesize(“hello world”);


// Speech synthesis in C++

voce::synthesize(“hello world”);


// Speech recognition in Java

while (voce.SpeechInterface.getRecognizerQueueSize() > 0)


      String s = voce.SpeechInterface.popRecognizedString();

      System.out.println("You said: " + s);



// Speech recognition in C++

while (voce::getRecognizerQueueSize() > 0)


      std::string s = voce::popRecognizedString();

      std::cout << "You said: " << s << std::endl;




All downloads are hosted on the SourceForge project page: http://sourceforge.net/projects/voce



C++ API Documentation

Java API Documentation

White paper (describes motivation, design, implementation, and grammar file format): VoceWhitePaper.pdf



Voce is licensed under the BSD or LGPL Open Source licenses.  Also, be sure to read the licenses for FreeTTS and CMU Sphinx4.



tylerstreeter at gmail dot com


SourceForge.net Logo