ZHDA175 June   2026 AM625 , AM625SIP , AM62D-Q1 , AM62L , AM62P

 

  1.   1
  2.   摘要
  3.   商标
  4. 1 简介
    1. 1.1 主要亮点:
    2. 1.2 基本概念:
      1. 1.2.1 PipeWire 服务器
      2. 1.2.2 PipeWire 客户端
      3. 1.2.3 会话管理器
      4. 1.2.4 节点、端口和链接
    3. 1.3 PipeWire 主要组件
  5. 2 Linux 音频栈
  6. 3 通过 Yocto 构建支持 PipeWire 的 SDK 映像
    1. 3.1 在主机上运行 Yocto 构版建的步骤
      1. 3.1.1 必要条件(一次性设置)
    2. 3.2 克隆 oe 层设置
    3. 3.3 下载并应用 PipeWire 补丁
    4. 3.4 构建 PipeWire 映像
  7. 4 在 Sitara 器件上设置 PipeWire
    1. 4.1 硬件
      1. 4.1.1 SK-AM62B-P1
      2. 4.1.2 TMDS62LEVM
      3. 4.1.3 AUDIO-AM62D-EVM
    2. 4.2 配置 EVM 引导模式
      1. 4.2.1 SK-AM62B-P1
      2. 4.2.2 TMDS62LEVM
      3. 4.2.3 AUDIO-AM62D-EVM
    3. 4.3 UART 控制台设置
    4. 4.4 刷写 SD 卡映像
    5. 4.5 使用 SD 卡引导 EVM
  8. 5 使用 PipeWire
    1. 5.1 检查服务状态
    2. 5.2 启用 PipeWire 和 Wireplumber
    3. 5.3 启动 PipeWire 和 WirePlumber
    4. 5.4 常规 PipeWire 命令
      1. 5.4.1 列出 PipeWire 服务器中当前的所有对象
      2. 5.4.2 仅列出节点
      3. 5.4.3 检查特定对象
    5. 5.5 播放和录制立体声音频
  9. 6 配置
    1. 6.1 接收端和源端配置
    2. 6.2 WirePlumber 配置
  10. 7 性能基准测试
    1. 7.1 延迟
    2. 7.2 CPU 和内存使用情况
    3. 7.3 重新采样后的 CPU 和内存使用情况
    4. 7.4 观察结果
  11. 8 总结
  12. 9 参考资料
  13. 10重要声明和免责声明

Linux 音频栈

 Linux 音频栈图 2-1 Linux 音频栈
  • 应用程序(媒体播放器、浏览器、基于 GStreamer 的工具等)会生成音频流并通过本机 PipeWire API 或其他系统(Jack、PulseAudio、ALSA)的兼容层进行通信。
  • PipeWire 守护程序会接收这些音频流并构造一个处理图形,以同时处理来自多个来源的音频混合、路由和调度。
  • 会话管理器 (WirePlumber) 会应用策略决策,包括设备选择、流路由规则以及应用程序和硬件端点之间的自动连接管理。
  • SPA (Simple Plugin API) 插件提供硬件抽象。ALSA 插件专门与内核的 ALSA 子系统连接,以访问物理音频设备。
  • 内核驱动程序与实际硬件层(音频编解码器、声卡、I2S 总线、HDMI 音频接口)进行通信,以生成物理音频输出或采集输入。