Raspberry Pi 3上的Google Assistant SDK:音频设置不起作用
我一直在尝试将G assistant安装到Raspberry Pi3中。我有问题,在下面的链接Raspberry Pi 3上的Google Assistant SDK:音频设置不起作用
https://developers.google.com/assistant/sdk/prototype/getting-started-pi-python/configure-audio
的部分文本从上面的链接
# Record a short audio clip. If you get an error, go to step 2.
$ arecord --format=S16_LE --duration=5 --rate=16k --file-type=raw out.raw
正如预期的那样在我这一步了错误。所以我试着用Step2创建一个包含所有硬件信息的新文件(.asoundrc)。然后我尝试以下
speaker-test -t wav
,但我得到以下错误(如果我重新命名.asoundrc我没有看到这个错误,但我不能录制)
speaker-test 1.0.28
Playback device is default
Stream parameters are 48000Hz, S16_LE, 1 channels
WAV file(s)
ALSA lib conf.c:1697:(snd_config_load1) toplevel:9:17:Unexpected char
ALSA lib conf.c:3417:(config_file_open) /home/pi/.asoundrc may be old or corrupted: consider to remove or fix it
ALSA lib conf.c:3339:(snd_config_hooks_call) function snd_config_hook_load returned error: Invalid argument
ALSA lib conf.c:3788:(snd_config_update_r) hooks failed, removing configuration
Playback open error: -22,Invalid argument
我该如何解决这个问题? 谢谢!
如果.asoundrc没有正确的结构,就会发生这种情况。警告:如果您使用rpi gui(桌面)音量控制来更改输入,它会为您修改.asoundrc,为Google助理打破ALSA。你必须去修理它。谷歌网站上的说明是正确的。
要修复它,请删除创建的新条目。 然后,在顶部,查找'type hw'行。它已被偷偷修改......你必须将它改回'输入asym'以匹配配置google指定。
我将gui(桌面)音量的输入/输出设置为模拟,并且一旦开始使用Google智能助理,请勿触摸它,以免再次发生混乱.asoundrc。
我使用的是罗技USB耳机,并且具有两个麦克风&扬声器(我不使用外置扬声器) 所以,给我的音频输入和输出去的耳机,我.asoundrc看起来是这样的:
pcm.!default {
type asym
capture.pcm "mic"
playback.pcm "speaker"
}
pcm.mic {
type plug
slave {
pcm "hw:1,0"
}
}
pcm.speaker {
type plug
slave {
pcm "hw:1,0"
}
}
最后,如果你重新启动你的Pi,你将不得不重置助手二进制文件的源代码路径,否则它将无法找到启动助手演示的命令。 通过输入“source env/bin/activate”执行此操作 然后,您可以通过键入“google-assistant-demo”
祝您好运!
是的,我看到这个错误 - 奇怪的是,我有一切工作正常后,我从来没有想过.asoundrc文件将被损坏。
Invalid value card arecord: main:722: audio open error: no such file or directory
我确认Xeneck Stoher说,大约在输入/输出选择搞乱你〜.asoundrc文件Rasbian GUI音量/音频,取代它修复了这个问题,并记录/回放现在工作得很好。