【发布时间】:2026-01-20 03:15:01
【问题描述】:
我有一个可以工作的 Raspberry Pi 3B。 操作系统是 Raspbian Stretch。
默认板载 Broadcom 音频已禁用。
USB SoundBlasterG1 声卡已插入并配置为 hw:0
nano /etc/asound.conf
pcm.!默认{ 类型插头 奴隶 { pcm“硬件:0” } }
ctl.!default { 输入硬件 卡 0 }
我可以像这样使用 aplay 播放 wav 声音文件
> aplay hello.wav
播放 WAVE 'hello.wav':有符号 16 位 Little Endian,速率 16000 Hz,单声道
我可以像这样使用 arecord 来录制 wav 声音文件
> arecord foo.wav
录制 WAVE 'foo.wav':无符号 8 位,速率 8000 Hz,单声道
我可以像这样运行 Jack 服务器
> jackd -d alsa
正在加载驱动程序..
创建 alsa 驱动程序 ... hw:0|hw:0|1024|2|48000|0|0|nomon|swmeter|-|32bit
配置为 48000Hz,周期 = 1024 帧 (21.3 ms),缓冲区 = 2 个周期
ALSA:最终选择的捕获样本格式:16bit little-endian
ALSA:使用 2 个句点进行捕获
ALSA:最终选择的播放样本格式:16bit little-endian
ALSA:使用 2 个句点播放
但是杰克似乎没有从麦克风捕捉到任何信号:
如果我跑
> jackd -v -d alsa
我得到以下附加输出
新缓冲区大小 1024
调整类型 0 的端口缓冲区段大小,一个缓冲区 = 4096 字节
调整类型 1 的端口缓冲区段的大小,一个缓冲区 = 2048 字节
注册端口系统:capture_1,偏移量 = 4096
注册端口系统:capture_2,offset = 8192
注册端口系统:playback_1, offset = 0
注册端口系统:playback_2,offset = 0
++ jack_sort_graph
++ jack_rechain_graph():
-- jack_rechain_graph()
-- jack_sort_graph
1160 等待信号
负载 = 0.0452 最大使用:21.000,备用 = 23198.000
负载 = 0.0678 最大使用次数:21.000,备用 = 23198.000
负载 = 0.0791 最大使用次数:21.000,备用 = 23198.000
(..等)
我需要什么设置 Jack 以使用 Raspberry PI 上的 ALSA 驱动程序从我的 USB 声卡麦克风捕获数据。
【问题讨论】:
标签: raspberry-pi alsa jack