配置 pocketsphinx gstreamer 元素

Configuring pocketsphinx gstreamer element

我有 pocketsphinx 运行 作为 python gstreamer 管道中的一个元素,类似于:

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

使用 gst-inspect,我可以看到 pocketsphinx 元素有几个属性(例如语言模型文件和字典文件),但这些与命令 分开 - 您通常可能传递给可执行文件的行选项。

我想更改 pocketsphinx 使用的日志文件,但这只是 gst-pocketsphinx 的一个选项,而不是 pocketsphinx gstreamer 元素。

$ gst-inspect-0.10 pocketsphinx
INFO: cmd_ln.c(691): Parsing command line:

gst-pocketsphinx \
    -samprate 8000 \
    -cmn prior \
    -fwdflat no \
    -bestpath no \
    -maxhmmpf 2000 \
    -maxwpf 20 

Current configuration:
[NAME]      [DEFLT]     [VALUE]
<snip>
-logfn              

如何将 logfn 参数传递给 pocketsphinx gstreamer 元素?

我建议您使用最新的 pocketsphinx 5prealpha,它支持 gstreamer-1.0 并使用 gstreamer 日志框架,因此您可以像管理任何其他 gstreamer 元素一样管理它。