[Freeswitch-users] Discovered problem with PocketSphinx build?
Bryan Smart
bryansmart at bryansmart.com
Thu Jul 28 16:06:16 MSD 2011
I partially figured out my problem.
Communicator only works for 8Khz. For 16Khz, you need WSJ1. I wonder why it isn't included with Freeswitch?
WSJ1 is available from this page:
http://www.speech.cs.cmu.edu/sphinx/models/
Direct link for the latest release:
http://www.speech.cs.cmu.edu/sphinx/models/wsj_jan2008/wsj_all_sc_5000_20080401.tar.gz
Rename the extracted folder to wsj1, and place in grammar/model.
For FS to use it, in pocketsphinx.conf.xml, set wideband-model:
<param name="wideband-model" value="wsj1"/>
ASR works fine for me now at 16Khz.
Should I add this to the wiki? Maybe FS could have automatically installed wsj1, but I was clueless about the required build option.
Bryan
On Jul 27, 2011, at 6:46 PM, Bryan Smart wrote:
Tried a build with a latest GIT, with PocketSphinx enabled, and get:
Creating mod_pocketsphinx.la...
/bin/sed: can't read /usr/src/freeswitch/libs/pocketsphinx-0.7/../sphinxbase/src
/libsphinxbase/libsphinxbase.la: No such file or directory
quiet_libtool: link: `/usr/src/freeswitch/libs/pocketsphinx-0.7/../sphinxbase/sr
c/libsphinxbase/libsphinxbase.la' is not a valid libtool archive
cat: .libs/mod_pocketsphinx.log: No such
make[5]: *** [mod_pocketsphinx.la] Error 1
I don't pretend to fully understand the build system, but the makefile seems to be trying to go to libs/sphinxbase for files, when that directory doesn't exist. The currently downloaded version of sphinxbase has the version appended to the directory name, as in sphinxbase-0.7. The Sphinx readme warns that the root should be named sphinxbase.
I did:
ln -s sphinxbase-0.7 sphinxbase
and the build finished without problems.
PocketSphinx works fine on a hardware phone using ULAW, but, when I use a softphone with 16Khz Speex, it doesn't. Instead, I get this
2011-07-27 21:43:14.651803 [WARNING] mod_pocketsphinx.c:147 Can't open speech model /usr/local/freeswitch/grammar/model/wsj1.
The only item in the model directory is communicator. I thought wsj1 was the old model. What in Freeswitch would try to use wsj1 over communicator based on the codec/rate? The mod_pocketsphinx wiki page says that 16Khz is a supported sampling rate, so I'm guessing that there is a special reason why Speex doesn't work, or else that this is a bug.
Bryan
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.freeswitch.org/pipermail/freeswitch-users/attachments/20110728/14be7bcb/attachment.html
More information about the FreeSWITCH-users
mailing list