Skip to main content
由低功耗 AI (LPAI) 驱动的音频子系统可提供语音用户界面和音频体验。它使用专用的基于硬件的 AI 加速器进行基于机器学习的工作。
Audio component overview

音频组件概述

音频系统包括:
  • 应用处理器 – 处理音频处理任务的 CPU。任务包括:
    • 管理音频录制和播放
    • 解码音频格式
    • 使用 LPAI 执行后处理任务
  • 低功耗 AI (LPAI) – 运行音频播放/录制和语音激活 (VA) 算法的子系统。它集成了专用的 Qualcomm® Hexagon™ 处理器 (QDSP6) 和低功耗岛 (LPI)。
  • 音频编解码器 – 硬件包括:
    • 模数转换器 (ADC)
    • 数模转换器 (DAC) 用于将模拟音频转换为数字音频,反之亦然。
  • 扬声器 AMP 和麦克风 – 通过 I2S/TDM/SoundWire 连接的设备。

架构

下图显示了高层次的音频软件架构。
High-level audio software architecture
High-level audio software architecture

高层次的音频软件架构

以下是音频软件架构的主要组件: 应用 1 一个通用的多媒体应用,可产生或消费音频,并通过更高级别的框架(如 GStreamer 或 PipeWire)发送,而不是直接与硬件交互。 应用 2 另一个共享相同音频栈的应用,用于演示多个应用可以同时使用和路由音频流。 GStreamer 一个多媒体框架,用于处理音频/视频(例如解码、编码),然后将音频流传递到系统音频层。 PipeWire 一个用户空间音频服务器,用于管理应用和硬件设备之间的音频路由、混音和连接。 ALSA + ASoC FWK 此层桥接用户空间和硬件驱动,其中 ALSA 负责处理声音子系统功能,ASoC 负责管理嵌入式音频硬件交互。 Q6 APM 驱动 一个 Qualcomm 特有的驱动,与 DSP 的音频处理管理器通信以控制音频路由和处理。 PCM 驱动 处理原始数字音频 (PCM 数据) 在内存和音频子系统之间的传输,用于播放或录制。 DAI 驱动 管理数字音频接口(例如 I2S/TDM),配置音频数据在处理器和编解码器之间的传输方式。 CODEC 驱动 控制音频编解码器硬件,将其配置为将数字音频信号转换为模拟输出,反之亦然。 PipeWire PipeWire 是一款 Linux 多媒体服务器,可在应用和硬件之间路由音频。它取代了 PulseAudio,为应用提供低延迟、安全和灵活的媒体处理。 平台抽象层 (PAL) 提供更高级别的音频特定 API,用于访问音频硬件和驱动以启用音频功能。 音频图管理器 (AGM) 提供接口以允许基于 TinyALSA 的混音器控件以及 PCM/压缩插件进行交互并启用音频功能。 AudioReach 图服务 (ARGS) 由图服务层 (GSL)、通用数据包路由器 (GPR) 和 acdb 管理层 (AML) 模块组成。处理图的初始化和创建,以及为向 AudioReach 引擎 (ARE) 发送一系列命令而创建数据包。 音频校准数据库 (acdb) 包含各种音频用例(例如图、模块校准数据等)的信息。应用处理器解析 acdb 文件以获取用于 ARE 启用用例的图信息。 AudioReach 引擎 (ARE) 运行在 LPAI DSP 上的模块化框架。它有助于设置、配置和运行音频功能的信号处理模块。 Qualcomm 音频校准工具 (QACT™ 平台) 基于 PC 的软件,提供图形界面用于可视化、配置和存储音频用例的音频图到 acdb。

后续步骤