Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/335.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/tfs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 罗斯口袋狮身人面像+;gstreamer将语音记录到wav文件中_Python_Ros_Pocketsphinx - Fatal编程技术网

Python 罗斯口袋狮身人面像+;gstreamer将语音记录到wav文件中

Python 罗斯口袋狮身人面像+;gstreamer将语音记录到wav文件中,python,ros,pocketsphinx,Python,Ros,Pocketsphinx,我正在开发一个对话系统,在这里我需要获取ASR结果以及相应的音频文件作为输入。 我在Ubuntu 14.04上使用ROS indigo,并编辑recognizer.py () 以便接收来自ASR的文本和每个已识别话语的音频文件。 我将gst管道更改为: self.launch_config += " ! audioconvert ! audioresample ! tee name=t ! queue ! audioresample " \

我正在开发一个对话系统,在这里我需要获取ASR结果以及相应的音频文件作为输入。 我在Ubuntu 14.04上使用ROS indigo,并编辑recognizer.py () 以便接收来自ASR的文本和每个已识别话语的音频文件。 我将gst管道更改为:

    self.launch_config += " ! audioconvert ! audioresample  ! tee name=t ! queue ! audioresample " \
                        + '! vader name=vad auto-threshold=true ' \
                        + '! pocketsphinx name=asr ! fakesink dump=1 t. ! valve drop=0 ! queue ! wavenc ! filesink location=test.wav async=0' 
但我所做的是记录所有的音频信号,直到识别器停止(例如^C)。 而且我试着用后

self.pipeline.set_属性('rawlogdir','folder_name/')第101行

但GstPipeline似乎没有属性“rawlogdir”

我所需要的只是获取已识别话语的音频信号,这是使用ROS pocketsphinx节点进行音频处理(情感识别)所需的


任何想法都会非常有用

您可以使用“维德”插件以.raw格式获取检测到的音频

只需将这些行添加到代码中

self.vader = self.pipeline.get_by_name('vad')
self.vader.set_property('dump-dir', audio_dir )
“audio_dir”是保存文件的地方。要播放音频,请记住pocketsphinx使用8kHz的16位PCM音频

有关GStreamer插件使用的更多信息

$ gst-inspect-0.10 pocketsphinx
$ gst-inspect-0.10 vader

不幸的是,ROS pocketsphinx需要更多的工作