因为接口问题,需要在RK3399的板子上使用USB转音频接音箱外放,从网上购买了USB转音频模块,在电脑上和手机上测试接音箱都可以正常播放,但是接到RK3399时,没有声音,从网上查资料发现,原来是RK3399默认没有打开UAC功能。
参考网上配置,配置如下图:
在kernel目录,make menuconfig,在Device Drivers/USB support/USB Gadet Support选项下,选择USB Gadget Drivers为 USB functions configurable through configfs。
选择好后,在该界面下方有 Audio class 1.0 选项,如下图,按Y选中
然后,在Device Drivers/Sound card support/Advanced Linux Sound Architecture/USB sound devices路径下,按Y选择USB Audio/MIDI driver
选择好配置后,选择下方Save保存。
我操作了几次,发现操作完后,再次打开,配置没有保存。经过网上资料查询,在kernel/arch/arm64/configs路径下的firefly_defconfig文件下,修改该配置
修改的配置如下,将CONFIG_SND_USB_AUDIO=y前的#去掉,即打开USB的AUDIO功能
配置完成后,如下,输入:wq保存,重新编译kernel,升级后,输出声音。