找回密码
 立即注册

使用微信账号登录

只需一步,快速开始

优化高通蓝牙模拟输出pop声问题

2025-3-22 23:00| 发布者: 52bluetooth| 查看: 212| 评论: 1|原作者: jsjj

摘要: 我们蓝牙,音频流在启动的时候,比如通话,A2DP 音乐等,会打开Audio Codec, 当音频流关闭后,为了节约功耗,等一段时间会关闭 Codec,就能听到啪的一声,这个默认的时间是30秒 这到底是怎么回事,在ADK 中是怎么提 ...
我们蓝牙,音频流在启动的时候,比如通话,A2DP 音乐等,会打开Audio Codec,
当音频流关闭后,为了节约功耗,等一段时间会关闭 Codec,就能听到"啪"的一声,这个默认的时间是30秒
这到底是怎么回事,在ADK 中是怎么提现的,如何修改到合适的时间。

1、ADK 配置

打开ADK 工程,在sink 中有#define DELAY_DISABLE_OPERATOR_FRAMEWORK_MS D_SEC(30)
在Earbud 中 有#define appKymeraDacDisconnectionDelayMs() 30000

搜索到htf 文件中CodecOutputDisableTimeout =28000000,这个单位是us 级别的, 是28s

只要确认CodecOutputDisableTimeout 配置小于代码中的DELAY_DISABLE_OPERATOR_FRAMEWORK_MS时间即可,
差距至少1ms,默认配置是满足要求打

2、修改成合适的值

以上是默认的情况,要修改的话,这个时间也不是无限制的
由于CodecOutputDisableTimeout 是us 级别的,32位有符号整型,符号要占一位,数量最大是有限制的,最大可以为 CodecOutputDisableTimeout = 2147000000

appKymeraDacDisconnectionDelayMs/DELAY_DISABLE_OPERATOR_FRAMEWORK_MS 需要大一点
#define appKymeraDacDisconnectionDelayMs() (2148000) 的话,大概可以达到35分钟

注意:以上两个地方都要修改到哦!

这样看来“啪”的一声,是必须有的,只是多久后出现的问题,需要多久,就要看客人的需求了!



【转载】:https://www.wpgdadatong.com.cn/blog/detail/45676


路过

雷人

握手

鲜花

鸡蛋
发表评论

最新评论

引用 Сергей_Л 2025-4-29 00:40
Filename  "operators_framework.c"     #define DELAY_DISABLE_OPERATOR_FRAMEWORK_MS D_SEC(2000)
Filename  "subsys3_config1.htf"         CodecOutputDisableTimeout = 2147000000
Codec_Off = 33-34min/

查看全部评论(1)

小黑屋|手机版|我爱蓝牙网 - 52Bluetooth

GMT+8, 2025-4-30 18:18 , Processed in 0.226963 second(s), 18 queries , Gzip On, MemCached On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

返回顶部