RPI3的0.5.1-devpreview BSP附带libtinyalsa.so,libalasautils.so但似乎没有adb shell命令行支持音频。
我们正在设计一个用于Android Things和Raspberry Pi的自定义音频板(带有音频处理器),我们通常会使用ALSA实用程序和自定义内核驱动程序来访问Raspian下的这个主板。
默认的Android Things I2S外设驱动程序和Peripheral Manager可能支持我们需要的流接口(与VoiceHat驱动程序的包装方式相同),但我们几乎没有关于RPI3 BSP中默认驱动程序的信息,以及我们没有任何关于如何在没有发行版重建的情况下覆盖Android Things中的默认驱动程序的信息。
当很多音频处理器公司已经为设备源树提供ALSA就绪的ASoC驱动程序时,似乎很难编写Native C ++低级外设驱动程序。
为Android Things编写自己的音频驱动程序的最佳做法?
答案 0 :(得分:0)
VoiceHat驱动程序是如何使用用户空间音频驱动程序的一个示例。
如果您使用的是自定义音频板,则应了解主板使用的音频芯片。查看该芯片的数据表,您应该能够使用相同的外设I / O(UART,GPIO,I2C,SPI)来配置连接并通过I2S总线读/写数据。
在Google Assistant示例中,应用程序在活动开始时注册VoiceHat,并在活动结束时取消注册。