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.


SourceForge.net Logo