JL杰理蓝牙芯片交流论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1378|回复: 1

AC696怎么改变原厂音量等级

[复制链接]

7

主题

0

回帖

31

积分

论坛游民

Rank: 2

积分
31
发表于 2023-8-16 15:58:09 | 显示全部楼层 |阅读模式

注册登录,了解更多芯片技术。

您需要 登录 才可以下载或查看,没有账号?立即注册

x
请问AC696怎么改变原厂音量等级,并且要保证音量同步呢?
回复

使用道具 举报

15

主题

20

回帖

330

积分

版主

Rank: 7Rank: 7Rank: 7

积分
330
发表于 2023-8-16 16:03:57 | 显示全部楼层
1. 当想给系统设置一个音量值时可以用:
    app_audio_set_volume(app_audio_get_state(), 16, 1);
    但是这个时候设置的是设备的音量,手机端是不同步的,并且操作手机音量时
2. 如果想要同步可以用以下操作:
  1. void my_set_vol(u8 my_vol)
  2. {
  3.     app_var.music_volume = vol_sys_tab[my_vol];
  4.     app_var.opid_play_vol_sync = vol_sync_tab[my_vol];
  5.     app_audio_set_volume(APP_AUDIO_STATE_MUSIC, app_var.music_volume, 1);
  6.     user_send_cmd_prepare(USER_CTRL_AVCTP_OPID_SEND_VOL, 0, NULL);
  7. }
复制代码

传进去的值为设备音量表里的值,手机端有一个音量表会进行对应调整
3. 如果想设置音量等级为10级,
第一步要修改设备音量和手机音量表,
微信图片_20230816122146.png
第二步要改vol_sys_tab_init()和opid_play_vol_sync_fun()函数的数组数值改为对应的10,或者9.
这个时候就可以进行设备控制音量等级为10级进行加减音量了,但是手机控制音量调节时是错乱的,手机按到10级音量最大,10级后就错乱了,
4. 如何把手机控制也调成正常的10级对应.
微信图片_20230816160320.png
这个函数是通过手机加减音量来控制设备音量的
原本设备和手机音量等级都定的17级,所以16*8=128,刚好和volume+1是相等的,此时我们只需要改成10级对应的就行,9*14=126等于volume-1,下面两个标注是转换设备对应的音量表和手机对应音量表
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|JL杰理蓝牙芯片交流论坛 ( 粤ICP备18068352号 )

GMT+8, 2024-10-11 14:19 , Processed in 0.085918 second(s), 25 queries .

Powered by yunthinker云信

© 2001-2023 yunthinker Team.

快速回复 返回顶部 返回列表