Bug #116842
测试 Test-ST #111337: ST测试总票
测试 Test-ST #116840: 中控联调测试-AF
【AF】【EVT】【音量调节】副屏连接中控后,从副屏处设置-音量调节条调节副屏音量(先调节至0,在升高),会回弹至0
Status: | CLOSED | Start date: | 2023-03-09 | |
---|---|---|---|---|
Priority: | Normal | Due date: | ||
Assignee: | 物联网测试组_TSCD 王维 | % Done: | 0% | |
Category: | AUDIO-FW | |||
Target version: | - | |||
Need_Info: | -- | Found Version: | FlatBuild_HH_MCE_FSE.M.R.user.01.00.0081.C101 | |
Resolution: | FIXED | Degrated: | No | |
Severity: | Normal | Verified Version: | ||
Reproducibility: | Every time | Fixed Version: | 2023-03-16 | |
Test Type: | ST | Root cause: | 音量调节静音与非静音切换时,会多一个信息,导致与中控同步时消息阻塞。 |
Description
【前提条件】
1、设备正常启动
【测试步骤】
1、副屏连接中控
2.打开副屏设置-声音
3.从副屏设置中的音量调节条调节音量至0
4.从副屏设置中心调节音量
【预期结果】
1、可以正常调节音量
【实际结果】
1、从0调节音量会回弹至0
History
#1 Updated by CD TEST-方永红 over 2 years ago
- Parent task changed from #111053 to #116840
#2 Updated by Multimedia组-RD3_TSCD 梁卿山 over 2 years ago
- Status changed from New to ASSIGNED
Hi All,
■ 当前分析
926:03-12 01:30:43.526 1087 2158 D AudioIDCMicroNegotiator: idcm_common:requestResult method = setMute parameters = {"functionInfo":{"IDCM_VolumeMute_Media":"mute_on"}}
927:03-12 01:30:43.526 1087 2158 I MicroServiceManager: requestResult(setMute) parameters is{"functionInfo":{"IDCM_VolumeMute_Media":"mute_on"}}.
949:03-12 01:30:43.745 1087 2158 D AS.AudioService: idcm_volume:setIDCMicroVolume(stream=3, index=17, calling=com.android.settings)
950:03-12 01:30:43.745 1087 2158 D AudioIDCMicroNegotiator: idcm_volume:setIDCMicroVolume
951:03-12 01:30:43.745 1087 2158 D AudioIDCMicroNegotiator: idcm_common:requestResult method = setVolume parameters = {"functionInfo":{"IDCM_VolumeValue_Media":"17"}}
952:03-12 01:30:43.745 1087 2158 I MicroServiceManager: requestResult(setVolume) parameters is{"functionInfo":{"IDCM_VolumeValue_Media":"17"}}.
969:03-12 01:30:43.817 1087 5159 D AS.AudioService: idcm_volume:onSetIDCMicroAudioMute: mute_off
983:03-12 01:30:44.346 1087 2158 D AudioIDCMicroNegotiator: idcm_volume:setIDCMicroVolume return null ★★★
984:03-12 01:30:44.346 1087 2158 W AS.AudioService: idcm_warn: fail to set Vol: 17, respone: null ★★★
985:03-12 01:30:44.347 1087 2158 W AS.AudioService: idcm_warn: exception: java.lang.Exception: fail to set Vol: 17 ★★★
1027:03-12 01:30:44.430 1087 2158 D AS.AudioService: idcm_volume:==> use the old index: 0 isStreamMute = false
1035:03-12 01:30:44.463 1087 5460 D AudioIDCMicroNegotiator: idcm_volume:onSetIDCMicroVolume mIsTimeout= true value = 17 isRequested=true ★★★
当音量从0,调节到17时,主屏收到了调节的通知并调节了音量,但是没有通知副屏,导致副屏音量保持了原状。
■ 下一步
咨询中控的开发者进行复现。
#3 Updated by Multimedia组-RD3_TSCD 梁卿山 over 2 years ago
- Category changed from AUDIO-FW to CD-FW
- Assignee changed from Multimedia组-RD3_TSCD 梁卿山 to CD FW-程天颖
Hi 天颖,
■ 当前分析
当前遇到两个问题:
1.在调节音量为0后,再去将音量调节至大于0时,会给中控发送mute on/off。
该行为经过调查,在调节为0后,direction会传递AudioManager.ADJUST_MUTE(-100)或AudioManager.ADJUST_UNMUTE(100),
这个是mute on/off的状态,当前副屏不能传递该参数,需要FW的同学来修改。
1713:03-12 01:56:14.239 1076 1601 D AS.AudioService: adjustStreamVolume() stream=3, dir=100, flags=0, caller=com.android.settings ★★★
1715:03-12 01:56:14.240 1076 1601 W System.err: java.lang.Exception
1716:03-12 01:56:14.240 1076 1601 W System.err: at com.android.server.audio.AudioIDCMicroNegotiator.setIDCMicroAudioMute(AudioIDCMicroNegotiator.java:657)
1717:03-12 01:56:14.241 1076 1601 W System.err: at com.android.server.audio.AudioService.setIDCMicroAudioMute(AudioService.java:10876)
1718:03-12 01:56:14.241 1076 1601 W System.err: at com.android.server.audio.AudioService.adjustStreamVolume(AudioService.java:2995)
1719:03-12 01:56:14.241 1076 1601 W System.err: at com.android.server.audio.AudioService.adjustStreamVolume(AudioService.java:2845) ★★★
2.音量调节为0后,再去将音量调节至大于0时,音量条会反弹回至0;
该问题分析之后,发现在音量调节为20时,中控音量已经变化,并且通知到副屏,但是MicroService的onResponse未能回调到AudioIDCMicroNegotiator中的方法中。
1782:03-12 01:56:14.625 1076 2242 I MicroServiceManager: requestResult(setVolume) parameters is{"functionInfo":{"IDCM_VolumeValue_Media":"20"}}.
...
1802:03-12 01:56:14.670 2267 2353 D MicroService: getEvent: clientSocket = Socket[address=/192.168.4.4,port=46908,localPort=9999]
1803:03-12 01:56:14.670 2267 2353 D MicroService: run: called
1804:03-12 01:56:14.671 2267 2353 D MicroService: getEvent: start waiting...
1805:03-12 01:56:14.671 2267 5242 I MicroService: getStringByData(noZero): IDCM_CarAudioService
1806:03-12 01:56:14.672 2267 5242 I MicroService: getStringByData(noZero): FSEM_AudioService
1807:03-12 01:56:14.672 2267 5242 I MicroService: getStringByData: {"srcService":"IDCM_CarAudioService","dstService":"FSEM_AudioService","methodName":"setVolume","messageType":1,"uuid":1678557374626516769,"parameters":{"functionInfo":{"IDCM_VolumeValue_Media":"20"}}}
1808:03-12 01:56:14.672 2267 5242 I MicroService: Receive message: SocketMessageBean{businessData='21930', srcService='IDCM_CarAudioService', destService='FSEM_AudioService', messageType='1', uuid='1678557374626516769', payloadData={"srcService":"IDCM_CarAudioService","dstService":"FSEM_AudioService","methodName":"setVolume","messageType":1,"uuid":1678557374626516769,"parameters":{"functionInfo":{"IDCM_VolumeValue_Media":"20"}}}}
1809:03-12 01:56:14.672 2267 5242 I MicroService: dealMessage: 1
1810:03-12 01:56:14.672 2267 5242 I MicroService: onResponse(setVolume): {"functionInfo":{"IDCM_VolumeValue_Media":"20"}} ★★★
1832:03-12 01:56:15.327 1076 2242 D AudioIDCMicroNegotiator: idcm_volume:setIDCMicroVolume return null ★★★
■ 下一步
麻烦FW的同学调查一下,谢谢
#4 Updated by CD FW-程天颖 over 2 years ago
- Assignee changed from CD FW-程天颖 to CD FW-廖涛
#5 Updated by CD FW-廖涛 over 2 years ago
■ Current conclusion
处理验证完成。
■ My analysis
经过分析,Settings 中的 Seekbar 会绑定到 android.preference.SeekBarVolumizer 中进行音量设置同步,当调节到 0 或者从 0 调节到大于 0 的值时,会调用方法 adjustStreamVolume,发送 direction 为 AudioManager.ADJUST_UNMUTE 或 AudioManager.ADJUST_MUTE 的信号给中控。代码如下:
if (mMuted && mLastProgress > 0) { mAudioManager.adjustStreamVolume(mStreamType, AudioManager.ADJUST_UNMUTE, 0); } else if (!mMuted && mLastProgress == 0) { mAudioManager.adjustStreamVolume(mStreamType, AudioManager.ADJUST_MUTE, 0); } mAudioManager.setStreamVolume(mStreamType, mLastProgress, AudioManager.FLAG_SHOW_UI_WARNINGS);
因中控不支持这两个信息,所以在上层去掉这里的逻辑,有 Audio 来处理。
问题 2 产生的原因是,多条消息串行处理导致处理超时,去掉 Mute 信号后仅存在一条消息,所以问题 2 也同步处理掉。
■ Next action
提交代码。
#6 Updated by IoT scm over 2 years ago
ID | Project | Branch | Uploader |
187769 | general/platform/frameworks/base | Pre_figure_turbox-c2130c-la1.1-qssi12-dev | tao.liao@thundersoft.com |
AF:Settings: Fix volume adjust problem when connect to IDCM. TC-RID: 1201-0201805 IssueID: TS-R-BUG-116842 Change-Id: I3e99f27f56d088b9864fa318b7abe05745c0275d |
#7 Updated by CD FW-廖涛 over 2 years ago
- Status changed from ASSIGNED to RESOLVED
- Assignee changed from CD FW-廖涛 to CD TEST-方永红
- % Done changed from 0 to 100
- Resolution changed from -- to FIXED
- Degrated changed from -- to No
- Fixed Version set to 2023-03-16
- Root cause set to 音量调节静音与非静音切换时,会多一个信息,导致与中控同步时消息阻塞。
■ Current conclusion
已处理,代码已入库。
■ My analysis
--
■ Next action
测试验证。
#8 Updated by CD TEST-方永红 over 2 years ago
- Assignee changed from CD TEST-方永红 to CD Test赵飞
#9 Updated by CD Test赵飞 over 2 years ago
- Status changed from RESOLVED to VERIFIED
验证版本:FlatBuild_HH_MCE_FSE.M.R.user.01.00.0084.C101
验证结果:PASS
#10 Updated by CD Test赵飞 over 2 years ago
- Status changed from VERIFIED to CLOSED
#11 Updated by CD Test赵飞 about 2 years ago
- File logcat.txt
added
- File screen-20221111-010102.mp4 added
- Status changed from CLOSED to New
- Assignee changed from CD Test赵飞 to Multimedia组-RD3_TSCD 梁卿山
音量调节条回弹问题在4/6号release版本上复现
复现步骤:
1、副屏连接中控
2、副屏打开设置 - 声音
3、来回拖动音量调节条
3、在音量调节条上任意位置进行点击调节
新的日志与录屏见附件
#12 Updated by CD Test赵飞 about 2 years ago
- % Done changed from 100 to 0
#13 Updated by CD FW 曹覃刚 about 2 years ago
- Category changed from CD-FW to AUDIO-FW
#14 Updated by Multimedia组-RD3_TSCD 梁卿山 about 2 years ago
- Status changed from New to ASSIGNED
- Assignee changed from Multimedia组-RD3_TSCD 梁卿山 to 物联网测试组_TSCD 王维
Hi 王维
该问题和117495同件,请关闭这个问题,谢谢!
#15 Updated by 物联网测试组_TSCD 王维 about 2 years ago
- Status changed from ASSIGNED to RESOLVED
确认bug描述现象重复,由票号117495跟踪修复
#16 Updated by 物联网测试组_TSCD 王维 about 2 years ago
- Status changed from RESOLVED to VERIFIED
#17 Updated by 物联网测试组_TSCD 王维 about 2 years ago
- Status changed from VERIFIED to CLOSED