Depending on how familiar you are with version control, you should decide to either download a current version of InproTK, or to check it out from git.
git fetch && git checkout develop
Next, import the project into eclipse and/or build the software with ant:
ant
to build InproTK: type ant
and hit return.InproTK comes with a number of pre-configured launch configurations. You can access them both from Eclipse or Ant:
run as...
OR select File->Import->Run->Existing Launch Configurations and select the folderant <tab>
; your shell will likely offer the available configurations as possible completions.All required libraries are included in the zip file / contained in the lib/-folder.
InproTK comes with (moderately performing) acoustic models for German in the jar lib/Cocolab_DE_8gau_13dCep_16k_40mel_130Hz_6800Hz.jar
, which also contains a n-gram language model for talking about Pentomino pieces. To really use InproTK, you will need to train your own n-gram model or write your own grammar:
-lm
switch in SimpleReco to switch to a different n-gram model; the location of the model is given as a URL: java SimpleReco -lm file:/file/to/my/model.lm
-gr
switch in SimpleReco to use a grammar in JSGF format; the location of the grammar is given as a URL: java -ea SimpleReco -lm http://www.ling.uni-potsdam.de/~timo/code/inprotk/demo/digits.gram
Other acoustic models compatible with Sphinx-4 can be used as well. For example, to use the WSJ models that come with Sphinx-4 for English language support:
WSJ_8gau_13dCep_16k_40mel_130Hz_6800Hz.jar
from the Sphinx-4 distribution and add it to your classpath (use Sphinx4-1.0beta4, the more up-to-date Sphinx' distributions require somewhat different paths)src/inpro/apps/config.xml
: replace inpro/apps/sphinx-de.xml
with inpro/apps/sphinx-en.xml
in the entity definition of sphinxlang; re-build with ant (or just copy this file to bin/inpro/apps/config.xml
)hellongram.trigram.lm
from the Sphinx distributioninpro/apps/sphinx-en.xml
(or specify the LM from SimpleReco's command line directly using the -lm switch)InproTK relies on MaryTTS for speech output and supports different modes of accessing MaryTTS. InproTK now uses Mary5 and comes with the relevant libraries. Some support for external Mary servers is still available but you are unlikely to need that. A voice for German comes with InproTK.
The synthesis language can be selected by setting inpro.tts.language
(defaults to "de"); for languages other than German, you will have to disable Java assertions.
The synthesis voice is selected by setting the properties inpro.tts.voice
. For the internal mode, you must select an HSMM voice (defaults to bits1-hsmm).
For additional voices (or different languages) it's easiest to download and install MaryTTS, download the voice (your choice is restricted to HSMM voices!), to located the downloaded JAR file with the voice parameters and to put it into the classpath for InproTK. You then select this voice by setting the inpro.tts.* variables accordingly.
The mode of Mary intergration is selected by the Java property mary.version
which is to be set to "3" "4" or "internal" (default).
The separate servers allow Mary to be installed on any server in the network. Mary's installer uses whitespace in the pathname ("Mary TTS"), which may be problematic; if you run into troubles, please try to change Mary's installation path to not contain any whitespace characters.
There may be issues with the poweron-selftest of HMMSynthesis. To resolve this issue, please change modules.poweronselftest
in ${mary.base}/conf.marybase.config
from auto
to false
.
For the server modes, you should provide the Java properties mary.host
(which defaults to localhost) and mary.port
(which defaults to 59125).