mtk 添加audio codec芯片注意事项

在MTK平台中,audio codec芯片的初始化通常在AFE_Init时进行,后续播放操作通过EXT_DAC控制。为了降低待机功耗,codec会被设置为睡眠模式,关闭内部电压和BB clk。重新激活时,在turnon speaker通路中判断并可能重新初始化codec。若set playback rate在音箱开启前执行,而codec仍处于睡眠模式,可能导致播放率设置错误,引起音乐杂音。解决方案是将设置playback rate移到音箱开启之后,确保正确的播放率参数。
摘要由CSDN通过智能技术生成

 

按mtk正常流程,codec 的init只会在AFE2.c 中的AFE_Init 函数通过EXT_DAC_INIT函数进行初始化,之后对播放音乐及声音操作会通过EXT_DAC_TRUNON/OFF SEPEAKER

进行操作。不会再走EXT_DAC_INIT中对codec 的init部分代码。

 

正常播放音乐的时候, mtk 原始的调用流程是,SET playback rate--> turnon speaker 通路  ----> 开启edi(i2s) --->设置音量 输出音乐。

 

由于手机待机需要进入低功耗,所以,针对带有codec 芯片的机种需要将 codec芯片 设置为睡眠模式,以防codec chip 耗电。一般常规做法是关闭codec 内部电压并将BB供给codec的clk信号切断。

 

当手机退出待机模式,需要重新给codec提供clk 以及其他操作,这部分的代码 放在turnon speaker通路中会对当前codec chip的模式进行判断看

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值