Android DTBO Overlay:远场语音多麦克风多功放动态配置实践
在 Android TV 项目中,同一套系统源码经常要适配多个硬件 BOM。屏、背光、按键、音频通道、麦克风和功放数量等都可能不同。本文以Amlogic T966D5 项目里的远场语音麦克风配置为例,讲清楚如何用 DTBO overlay 在不改基础 DTS 的情况下,生成两套可烧录的设备树 overlay 镜像: 4mic_3amp_10ch_dtbo.…
Categories
在 Android TV 项目中,同一套系统源码经常要适配多个硬件 BOM。屏、背光、按键、音频通道、麦克风和功放数量等都可能不同。本文以Amlogic T966D5 项目里的远场语音麦克风配置为例,讲清楚如何用 DTBO overlay 在不改基础 DTS 的情况下,生成两套可烧录的设备树 overlay 镜像: 4mic_3amp_10ch_dtbo.…
一、问题背景 APlay 的 C++ SDK 通过一层 Android.mk 风格的 CMakeHelper 来组织模块。业务侧不用直接写 add_library()、target_link_libraries(),而是用 LOCAL_MODULE、LOCAL_INTERFACE_LIBRARIES、LOCAL_OBJECT_LIBRARIES 这类变量描述…
一、为什么要再封一层 CMake CMake 很强,但刚开始接触时也很容易写乱。 比如我们想做一件很普通的事:写一个 hello object library,再写一个 basic_hello_world 可执行程序去使用它。原生 CMake 可能会这样写: add_library(hello OBJECT hello/src/hello.cpp) targ…
背景:设备发现到底是什么? AirPlay 设备发现不是"手机去扫局域网里所有 IP",而是通过 mDNS/DNS-SD 完成的。 可以把它理解成局域网里的"小广播查询": Apple 设备向 224.0.0.251:5353 或 IPv6 的 ff02::fb:5353 发 UDP 组播查询。 查询内容是"谁提供 _airplay._tcp.local…