Nathan
Nathan

Reputation: 78459

pocketsphinx python gstreamer audio rate

I'm using pocketsphinx on linux, and I've been using the source code from the CMU tutorial. I'm trying to upload the HUB4 dictionary, language model, and acoustic model.

I had it working before when I just uploaded a dictionary and language model, but when I tried using the acoustic model I got this error:

INFO: acmod.c(246): Parsed model-specific feature parameters from /home/mintea/programs/hub4/hub4opensrc.cd_continuous_8gau/feat.params FATAL_ERROR: "fe_sigproc.c", line 405: Failed to create filterbank, frequency range does not match. Sample rate 8000.000000, FFT size 512, lowerf 5734.375000 < freq -15.625000 > upperf 5078.125000.

Here's a snippet of the code I'm using:

self.pipeline = gst.parse_launch('gconfaudiosrc ! audioconvert ! audioresample '
                                     + '! vader name=vad auto-threshold=true '
                                     + '! pocketsphinx name=asr ! fakesink')

asr = self.pipeline.get_by_name('asr')
asr.connect('partial_result', self.asr_partial_result)
asr.connect('result', self.asr_result)
asr.set_property('hmm', '/home/mintea/programs/hub4/hub4opensrc.cd_continuous_8gau')
asr.set_property('lm', '/home/mintea/programs/hub4/language_model.arpaformat.DMP')
asr.set_property('dict', '/home/mintea/programs/hub4/cmudict.hub4.06d.dic')        
asr.set_property('configured', True)

I'm thinking there's a flag in the gst.parse_launch call that I configure for changing the audio rate, but I'm not quite sure how. Any suggestions? Thanks!

Upvotes: 0

Views: 787

Answers (1)

Nikolay Shmyrev
Nikolay Shmyrev

Reputation: 25220

You can not use hub4 acoustic model with gstreamer plugin. It requires sample rate 16000 while sample rate 8000 is hardcoded in gstreamer plugin sources.

You need to change 8000 to 16000 in multiple places in gstreamer plugin sources and recompile the plugin or you need to use 8khz acoustic models.

Upvotes: 0

Related Questions