ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

TWS 耳机 HFP/SCO 通话链路深度解析:双 DMA 流、快照对齐与 PLL 时钟锁定

TWS 耳机 HFP/SCO 通话链路深度解析:双 DMA 流、快照对齐与 PLL 时钟锁定 TWS 耳机 HFP/SCO 通话链路深度解析:双 DMA 流、快照对齐与 PLL 时钟锁定文章目录TWS 耳机 HFP/SCO 通话链路深度解析:双 DMA 流、快照对齐与 PLL 时钟锁定一、核心结论:通话链路是"双 DMA 流 + 硬件快照 + PLL 锁频"的实时流水线核心机制速览二、整体架构:双 DMA 流 + 跨核算法2.1 架构全景图2.2 关键模块职责三、通话建立流程:先等首帧,再硬件开闸3.1 端到端建立时序3.2 建立过程的关键设计四、数据流:上行与下行4.1 上行链路(mic → 手机)4.2 下行链路(手机 → 扬声器)4.3 多域重采样路由4.4 mSBC 包格式与丢包隐藏五、双耳同步:快照对齐与 PLL 锁时钟(本文核心)5.1 为什么通话不能沿用 A2DP 的变速方案5.2 快照对齐机制5.3 触发时刻计算(概念伪代码)5.4 PLL 锁频闭环:六步流水六、语音算法链与跨核框架6.1 跨核 RPC 架构6.2 跨核数据交织(概念示意)6.3 算法链编排要点七、常见问题排查清单八、二次开发红线九、总结一、核心结论:通话链路是"双 DMA 流 + 硬件快照 + PLL 锁频"的实时流水线先用一段话讲清全貌:双 DMA 流:codec 流(mic 采集 + DAC 播放)与 BTPCM 流(与 BT 控制器之间的硬件 PCM 接口,收发 SCO 编码数据)是两条完全独立的硬件 DMA 通道;起播对齐(快照机制):BTPCM 收到首帧语音时,读取该帧对应的真实 BT 时钟作为"快照",反推 codec 流的硬件触发时刻,使两条 DMA 在硬件层精确对齐;持续同步(PLL 锁频):通话期间每次 mic 中断读取 DMA 完成时刻的 BT 时钟,换算到手机主时钟域后,用PI 控制器微调 codec PLL,让本地音频时钟始终锁定手机 SCO 时钟;算法跨核:语音增强算法(AEC / NS / EQ 等)通过跨核后处理框架 offload 到HIFI DSP 核运行(注意:与 A2DP 解码所用的核不是同一个),算法库本身闭源。核心机制速览主题关键结论
RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进