我正在尝试让 google-aiy 助手在我的系统上运行。我一直很难让麦克风正常工作。我想我已经很接近成功了,但我需要一些帮助。
我认为,要使 Google Assistant 正常工作,需要正确设置默认麦克风。就我目前的情况而言,我将卡 0 设备 0 用作麦克风,将卡 1 设备 0 用作扬声器。
我可以跑:
arecord -vv -D plughw:0 -r 48000 test.wav
并且记录没有问题,输出如下
Recording WAVE 'test.wav' : Unsigned 8 bit, Rate 48000 Hz, Mono
Plug PCM: Rate conversion PCM (16000, sformat=S16_LE)
Converter: libspeex (external)
Protocol version: 10002
Its setup is:
stream : CAPTURE
access : RW_INTERLEAVED
format : U8
subformat : STD
channels : 1
rate : 48000
exact rate : 48000 (48000/1)
msbits : 8
buffer_size : 24000
period_size : 6000
period_time : 125000
tstamp_mode : NONE
tstamp_type : MONOTONIC
period_step : 1
avail_min : 6000
period_event : 0
start_threshold : 1
stop_threshold : 24000
silence_threshold: 0
silence_size : 0
boundary : 1572864000
Slave: Hardware PCM card 0 'HP Webcam 2100' device 0 subdevice 0
Its setup is:
stream : CAPTURE
access : MMAP_INTERLEAVED
format : S16_LE
subformat : STD
channels : 1
rate : 16000
exact rate : 16000 (16000/1)
msbits : 16
buffer_size : 8000
period_size : 2000
period_time : 125000
tstamp_mode : NONE
tstamp_type : MONOTONIC
period_step : 1
avail_min : 2000
period_event : 0
start_threshold : 0
stop_threshold : 8000
silence_threshold: 0
silence_size : 0
boundary : 2097152000
appl_ptr : 0
hw_ptr : 0
# + | 20%
但是,当我尝试在不直接调用设备的情况下运行它时,我得到不同的输出并且没有音频输入。
arecord -vv -r 48000 test.wav
Recording WAVE 'test.wav' : Unsigned 8 bit, Rate 48000 Hz, Mono
ALSA <-> PulseAudio PCM I/O Plugin
Its setup is:
stream : CAPTURE
access : RW_INTERLEAVED
format : U8
subformat : STD
channels : 1
rate : 48000
exact rate : 48000 (48000/1)
msbits : 8
buffer_size : 24000
period_size : 6000
period_time : 125000
tstamp_mode : NONE
tstamp_type : GETTIMEOFDAY
period_step : 1
avail_min : 6000
period_event : 0
start_threshold : 1
stop_threshold : 24000
silence_threshold: 0
silence_size : 0
boundary : 1572864000
#+ | 00%