Page tree

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 12 Next »

Overview

The pocketsphinx-sonic-server is a wrapper over the PocketSphinx speech recognition system which allows us to communicate with it using the Sonic protocol. PocketSphinx itself is a small-footprint continuous speech recognition system, suitable for handheld and desktop applications. We can use a client such as AcquireSpeech in order to communicate with pocketsphinx-sonic-server and get the text for the speech.

It is fairly easy to set up a language model for PocketSphinx and use it for speech recognition.

Quick facts:

  • Location: /core/pocketsphinx-sonic-server/
  • Language: C++
  • Distribution: Binary
  • Platform(s): Windows

Users

Using command line parameters

The applications expects a config file to be specified on the command line as follows

  • -c [file-name]
    This config file should contain the following information specified as below
  • -fwdflat
  • -bestpath
  • -lm [the language model file to be used]
  • -dict [the dictionary to be used]
  • -hmm [the acoustic mode]
    By default, the Virtual Human Toolkit uses the wall street journal acoustic model that comes with pocketsphinx and the CMU pronunciation dictionary. You can change this to use your own.
  • -samprate [the sampling rate]

Creating a language model for PocketSphinx Wrapper

You will need to follow the below steps for creating your own language model for use with PocketSphinx Wrapper. First of all, we will need the "jasr" tool. This tool is present under lib/jasr in the Toolkit. To make the actual language models, you can use 'cmuslm' or 'srilm', which are both included within the jasr folder. However 'cmuslm' currently only works on Linux, while 'srilm' is compatible with both Windows and Linux.

You should do the following:

  • Go to the "\lib\jasr\bin\srilm" folder within the Toolkit
  • Run the following command
     
    create-lm.bat <corpus.txt> <output.arpa>

     where,

    - corpus.txt is a  file containing individual lines(text) that comprise the words that make up the vocabulary for your domain

    - output.arpa is the name of the output language model file

Once you create the language model, you just need to point to it in your config file that is input to pocketsphinx-sonic-server and it's good to go.

Known Issues

Message API

Sends:

Receives:

FAQ

See Main FAQ for frequently asked questions regarding the installer. Please use the Google Groups emailing list for unlisted questions.

  • No labels