高通audio软件模块功能框图

StageFright (SF)媒体框架:

   1,播放标准audio格式

   2SF媒体架构作为客户接口和Qualcomm OpenMAX接口进行通讯,对adsp支持的audio格式进行解码

   3,解码后的audio流传递给audio manager

   4,位置: \frameworks\base\ media\libstagefright

 \android\frameworks\av\media\libstagefright

Audio manager/AudioFlinger:

1,      所有的audio输出设备都要通过libaudio接口

2,    将多种audio流处理PCM audio并且将audio路由为各种输出设备。

3,    这个地方主要有audiopolicyserver来实现。

4,位置\frameworks\base\services\ audioflinger

 \frameworks\av\services\audioflinger

   HAL:

   1Google audio管理和qualcomm PCMRPC驱动的中间层

   2,管理设备配置,增益控制,audio后处理

   3\hardware\msm7k\libaudio

 android\hardware\qcom\audio

   OpenMAX IL:

   1OpenMAX IL层基于Qualcomm audio解码驱动向SF媒体框架定义了软件接口

   2,位置  \vendor\qcom-opensource\omx

 android\vendor\qcom\proprietary\mm-audio

   PCM driver :

   1,处理PCM播放,PCM录音,和audio后处理与前处理

   2,分配PMEM内存

   3\kernel\arch\arm\mach-msm\ qdsp5\audio_out.c, audio_in.c and audpp.c

   Audio decoder driver :

   1,接口层位于ADSPOpenMAX IL之间

   2,分配PMEM内存

   3\kernel\arch\arm\mach-msm\ qdsp5\audio_mp3.c,audio_aa.c

 \kernel\drivers\misc\qcom\qdsp6v2

 \kernel\drivers\soc\qcom\qdsp6v2

   Audio encoder driver :

   1,接口层位于ADSP和用户HAL层(libaudio)之间

   2,分配PMEM内存

   3,位置:\kernel\arch\arm\ mach-msm\qdsp5\audio_voicememo.c  

   ADSP driver :

   1,接口位于ADSPkernel audio驱动之间

   2,管理了命令和反馈信息

   3,位置:\kernel\arch\arm\mach-msm\ adsp*.*   

   RPC router :

   1,把命令和反馈信息在app处理器和mp处理器之间路由

   2,服务器在mp处理器,客户端在ap处理器

   3,位置:\kernel\arch\arm\mach-msm\rpc*.*

   耳机服务属于这个rpc类型

(转自:http://blog.csdn.net/newtonnl/article/details/8794424 有改动)
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值