Audio
Neardi Pi 3 提供:
- 3.5mm 音频接口,支持 L/R 输出
- MIC 输入
- 2 路 10W / 8ohm Speaker 输出
- HDMI 音频输出
板载音频 codec 配置在:
rk3576-neardi-lb200-sound-ctl.dtsi
该文件会启用 I2C3 上的 ES8388 codec 和 SAI1 音频接口,喇叭、耳机相关控制 GPIO 也在这里定义。
HDMI 音频和 HDMI 显示一起配置:
rk3576-neardi-lb200-hdmi.dtsi
音频局部参考图:
| Codec / 耳机 / MIC | Speaker PA |
|---|---|
| Neardi Pi 3 音频 Codec 局部原理图 | Neardi Pi 3 Speaker PA 局部原理图 |
喇叭和耳机播放测试
使用喇叭或耳机播放前,需要先配置 SAI1 通路,并打开对应输出通路。
首次测试建议使用双声道 48KHz WAV 文件:
# 选择 SAI1 发送通道
amixer -c 0 cset numid=31,iface=MIXER,name='SAI1 Transmit SDO2 Source Select' 0
# 设置 SAI1 收发数据线数量
amixer -c 0 cset numid=4,iface=MIXER,name='SAI1 Receive SDIx Select' 1
amixer -c 0 cset numid=3,iface=MIXER,name='SAI1 Transmit SDOx Select' 1
# 打开耳机输出
amixer -c 0 cset numid=80,iface=MIXER,name='OUT1 Switch' 1
# 打开喇叭输出和喇叭 PA
amixer -c 0 cset numid=80,iface=MIXER,name='OUT2 Switch' 1
amixer -c 0 cset numid=64,iface=MIXER,name='spk switch' on
# 播放双声道 48KHz 测试音频
aplay -Dhw:0,0 ./FB_48k.wav
如果没有声音,先检查输出通路是否打开,再确认音频文件是否为双声道 48KHz。
MIC 录音测试
MIC 录音可以根据实际输入打开 Main Mic 或 Headset Mic。
# 选择 SAI1 接收通路
amixer -c 0 cset numid=27,iface=MIXER,name='SAI1 Receive PATH2 Source Select' 0
# 设置 SAI1 接收数据线数量
amixer -c 0 cset numid=4,iface=MIXER,name='SAI1 Receive SDIx Select' 1
# 打开外置 MIC 输入
amixer -c 0 cset numid=69,iface=MIXER,name='Headset Mic Switch' on
# 打开耳机 MIC 输入
amixer -c 0 cset numid=68,iface=MIXER,name='Main Mic Switch' on
# 录制 10 秒双声道 48KHz 音频
arecord -Dhw:0,0 -d 10 -f cd -r 48000 -c 2 -t wav test.wav
如果只使用一路 MIC,录出来的音频可能是单声道。需要双声道录音时,请同时连接并打开对应输入通路。