我正在Raspberry pi零上使用板载蓝牙,并连接了也带有麦克风的蓝牙扬声器。我想录制此BT扬声器麦克风的音频。
我了解bluealsa命令行可以用于此目的,也可以用于播放.wav音频文件。
我无法使用bluealsa sco个人资料来录制音频。 (作业系统:Dietpi) 该设备能够连接到pi,并且可以播放wav文件, 使用: aplay -D bluealsa:DEV = XX:XX:XX:XX:XX:XX:PROFILE = a2dp sample.wav
但是,使用arecord时,它表示已记录,但不记录任何内容,也不会引发任何错误。
使用:记录-f cd -D bluealsa:DEV = XX:XX:XX:XX:XX:XX,PROFILE = sco test.wav
输出:记录WAVE'test.wav':签名的16位Little Endian,速率44100 Hz,立体声
test.wav在系统上仅显示44个字节:
-rw-r--r-- 1个root root 44 Jun 9 15:38 test.wav
当我尝试播放录制的文件时,它只是噪音。
有人可以帮忙吗? bluesalsa包本身是否还支持从BTspeakers录音?
答案 0 :(得分:0)
就像我说的,经过多次摸索,发现在 bluealsa 服务开始时缺少一些关键方面。
默认情况下,bluealsa 服务仅以“a2dp-source”配置文件开头。这仅用于播放音频。但要录制音频,则需要“a2dp-sink”、“hfp-ag”和“hsp-ag”配置文件。
如果您使用的是任何基于 raspberry 或 ubuntu 的发行版,请使用以下命令。 “systemctl cat bluealsa” 这显示了“bluealsa”服务的单元文件。它应该有下面的 ExecStart 行。 ExecStart=/usr/bin/bluealsa -p a2dp-sink -p a2dp-source -p hfp-ag -p hsp-ag
3.通常我观察到的是没有传递给它的任何 -p 选项。更改单元文件并重新启动服务。 注意:无论何时更改任何 systemctl 单元文件,都必须执行以下命令以使更改生效。
1. "systemctl daemon-reload"
2. systemctl restart bluealsa
4.另外要注意的是:在asounrc文件中使用配置文件“sco”。
进行这些更改后应该可以录制音频!这对我有用!经过长时间的磨难!