Hi, i'm trying to use pocketsphinx with visual studio 9.
pocketsphinx 0.6 compiles fine (with sphinxbase 0.6) but when i execute
pocketsphinx_batch.exe on the following configuration file:
<start cfg="" file="">
-hmm ../pocketsphinx/model/hmm/en/tidigits
-lm ../pocketsphinx/model/lm/en/tidigits.DMP
-dict ../pocketsphinx/model/lm/en/tidigits.dic
-ctl ../pocketsphinx/test/data/tidigits/tidigits.ctl
-cepdir ../pocketsphinx/test/data/tidigits
-hyp testest.match
-samprate 16000
<end cfg="" file=""> </end></start>
I get a segmentation fault in the first fgets of the function bio_readhdr when
trying to read the file ../../model/hmm/en/tidigits/transition_matrices. The
output is:
INFO: acmod.c(238): Parsed model-specific feature parameters from
../../model/hmm/en/tidigits/feat.params
INFO: fe_interface.c(288): You are using the internal mechanism to generate
the seed.
INFO: feat.c(848): Initializing feature stream to type: 's2_4x', ceplen=13,
CMN='current', VARNORM='no', AGC='none'
INFO: cmn.c(142): mean= 12.00, mean= 0.0
INFO: mdef.c(520): Reading model definition: ../../model/hmm/en/tidigits/mdef
INFO: mdef.c(531): Found byte-order mark BMDF, assuming this is a binary mdef
file
INFO: bin_mdef.c(330): Reading binary model definition:
../../model/hmm/en/tidigits/mdef
INFO: bin_mdef.c(508): 34 CI-phone, 396 CD-phone, 5 emitstate/phone, 170 CI-
sen, 670 Sen, 222 Sen-Seq
INFO: tmat.c(205): Reading HMM transition probability matrices:
../../model/hmm/en/tidigits/transition_matrices
The same cfg file above works fine with the executable created in cygwin (from
the same source code).
Thanks,
fabrizio.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hi Nickolay, the problem was in the VS configuration file. I had changed the
property:
Configuration properties->C/C++->Code generation->Runtime library
from: Multi-threaded Debug DLL (/MDd)
to: Multi-threaded Debug (/MTd)
because i wanted to remove the dependency on VS runtime dll.
apparently that breaks pocketsphinx or requires some other option to be
changed to make it work.
thanks.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hi, i'm trying to use pocketsphinx with visual studio 9.
pocketsphinx 0.6 compiles fine (with sphinxbase 0.6) but when i execute
pocketsphinx_batch.exe on the following configuration file:
<start cfg="" file="">
-hmm ../pocketsphinx/model/hmm/en/tidigits
-lm ../pocketsphinx/model/lm/en/tidigits.DMP
-dict ../pocketsphinx/model/lm/en/tidigits.dic
-ctl ../pocketsphinx/test/data/tidigits/tidigits.ctl
-cepdir ../pocketsphinx/test/data/tidigits
-hyp testest.match
-samprate 16000
<end cfg="" file=""> </end></start>
I get a segmentation fault in the first fgets of the function bio_readhdr when
trying to read the file ../../model/hmm/en/tidigits/transition_matrices. The
output is:
INFO: acmod.c(238): Parsed model-specific feature parameters from
../../model/hmm/en/tidigits/feat.params
INFO: fe_interface.c(288): You are using the internal mechanism to generate
the seed.
INFO: feat.c(848): Initializing feature stream to type: 's2_4x', ceplen=13,
CMN='current', VARNORM='no', AGC='none'
INFO: cmn.c(142): mean= 12.00, mean= 0.0
INFO: mdef.c(520): Reading model definition: ../../model/hmm/en/tidigits/mdef
INFO: mdef.c(531): Found byte-order mark BMDF, assuming this is a binary mdef
file
INFO: bin_mdef.c(330): Reading binary model definition:
../../model/hmm/en/tidigits/mdef
INFO: bin_mdef.c(508): 34 CI-phone, 396 CD-phone, 5 emitstate/phone, 170 CI-
sen, 670 Sen, 222 Sen-Seq
INFO: tmat.c(205): Reading HMM transition probability matrices:
../../model/hmm/en/tidigits/transition_matrices
The same cfg file above works fine with the executable created in cygwin (from
the same source code).
Thanks,
fabrizio.
Hello
Thanks for your report. Can you please provide a stacktrace for the segfault.
here is the call stack displayed by VS9 when the problem happens:
ntdll.dll!77228c39()
ntdll.dll!77228b48()
Hm, strange
It works with VC2008 ExpressEdition here. Are you sure you didn't corrupt the
pocketsphinx archive somehow?
Hi Nickolay, the problem was in the VS configuration file. I had changed the
property:
Configuration properties->C/C++->Code generation->Runtime library
from: Multi-threaded Debug DLL (/MDd)
to: Multi-threaded Debug (/MTd)
because i wanted to remove the dependency on VS runtime dll.
apparently that breaks pocketsphinx or requires some other option to be
changed to make it work.
thanks.