【i.MX8 Android Automotive12】 新增聲卡綁定系統音頻 bus

一、概述

本文章基於 i.MX8QXP Android Automotive12。demo 默認自帶 cs42888 和 wm8960 作為系統默認聲卡。本文介紹如何配置新聲卡,替代原聲卡。

二、解決方法

2.1 新增聲卡配置文件

增加配置文件,路徑 device/nxp/common/audio-json/an0322_config.json,配置如下:

{
"driver_name": "imx-an0322",
"bus_name": "bus0_media_out",
"supported_out_devices": ["speaker", "bus"],
"supported_in_devices": ["builtin_mic"],
"support_multi_chn": 1,
"in_period_size": 768,
"in_period_count": 8,
"out_period_size": 768,
"out_volume_ctl": [
"DAC1 Playback Volume"
]
}


2.2 修改系統打包資源配置

替換 cs42888 的配置,修改 Android Makefile 配置,文件device/nxp/imx8q/mek_8q/mek_8q.mk,配置如下:

diff --git a/imx8q/mek_8q/mek_8q.mk b/imx8q/mek_8q/mek_8q.mk

index 8f8d8b33..b2687e4a 100644
--- a/imx8q/mek_8q/mek_8q.mk
+++ b/imx8q/mek_8q/mek_8q.mk
@@ -321,10 +321,10 @@ PRODUCT_COPY_FILES += \

ifeq ($(PRODUCT_IMX_CAR),true)
PRODUCT_COPY_FILES += \
- $(CONFIG_REPO_PATH)/common/audio-json/cs42888_car_config.json:$(TARGET_COPY_OUT_VENDOR)/etc/configs/audio/cs42888_config.json
+ $(CONFIG_REPO_PATH)/common/audio-json/an0322_config.json:$(TARGET_COPY_OUT_VENDOR)/etc/configs/audio/an0322_config.json
else
PRODUCT_COPY_FILES += \
- $(CONFIG_REPO_PATH)/common/audio-json/cs42888_config.json:$(TARGET_COPY_OUT_VENDOR)/etc/configs/audio/cs42888_config.json
+ $(CONFIG_REPO_PATH)/common/audio-json/an0322_config.json:$(TARGET_COPY_OUT_VENDOR)/etc/configs/audio/an0322_config.json
endif

ifeq ($(PRODUCT_IMX_CAR),true)


至此,完成代碼的修改,Android 上層能識別到該聲卡!

參考文獻

《Android_User's_Guide.pdf》

《Android_Quick_Start_Guide.pdf》

★博文內容均由個人提供,與平台無關,如有違法或侵權,請與網站管理員聯繫。

★文明上網,請理性發言。內容一周內被舉報5次,發文人進小黑屋喔~

評論