android7.1


(flags & PCM_IN) == 0 这个是判断不是capture stream的时候进来
更改成要指定的的放音声卡的采样率 config->rate
2. hardware层也要修改

小结:一开始以为只是修改pcm.c文件就可以,因为那是最底层的地方。不过放音明显听出来采样率会有问题。logcat也看出framework最终的采样率也不匹配。一直很奇怪为什么会这样。直接改framework也没作用。所以就是底层->hardware层->framework层 只剩hardware试试看了。以为是在tinyalsa修改。不过也不对。最终还是在usbaudio 中修改的采样率。因为这边获取的是整个声卡的所有config,根据card id来获取的。所以播放的时候依旧是外接的usb card 的id,所以这地方得修改。rate = 16000.
rk3399 外接一个usb声卡,同时指定另一个usb声卡做放音功能
最新推荐文章于 2025-06-22 10:53:05 发布
博客讲述了在Android 7.1系统中,遇到音频播放采样率不匹配的问题。作者从pcm.c文件修改开始,发现影响采样率的真正源头在于硬件层的usbaudio模块。通过调整该层的配置,成功将采样率设定为16000,解决了外接USB声卡播放时的采样率问题。
6190

被折叠的 条评论
为什么被折叠?



