mt6735 音乐后台播放接听来电,挂断通话时出现短暂音乐播放后再继续播放的问题
时间:10-02
整理:3721RD
点击:
音乐后台播放接听来电,挂断通话时出现短暂音乐播放后再继续播放的问题
[DESCRIPTION]
音乐在后台播放,有来电并接听,然后挂断来电,会出现音乐短暂播放后继续播放的问题。
[SOLUTION]
此问题是Goole issue,是由于架构不合理造成的。
出现的过程从log中可以看的出:music是在获取到audio focus之后才开始播放的.AudioService会侦听call status的变化,当Call切换为idle时会 release audio focus.此时,music获取到focus,会播放音乐。
但是后续phone App会收到断call的message.在onDisconnect()函数中会播放call end tone.
此时会导致音乐播放的中断,等播放完毕则会继续播放音乐。这就是问题的整个过程。
此问题在JB上面改成了由Phone php?mod=tag&id=6090" target="_blank" class="relatedlink">Framework获取和释放audio focus,Google default就不会有这样的问题了。
拨打紧急电话,如112,之后切换到speaker,有时刚切到speaker时有爆音。
这个是HW limitation,iPhone手机上也有一样的问题。如果要完全消除这个Device切换声音,需要做一些HW gain ramp Down/up,但这会影响反应时间,所以一直以来mtk没有这样设计。
[DESCRIPTION]
音乐在后台播放,有来电并接听,然后挂断来电,会出现音乐短暂播放后继续播放的问题。
[SOLUTION]
此问题是Goole issue,是由于架构不合理造成的。
出现的过程从log中可以看的出:music是在获取到audio focus之后才开始播放的.AudioService会侦听call status的变化,当Call切换为idle时会 release audio focus.此时,music获取到focus,会播放音乐。
但是后续phone App会收到断call的message.在onDisconnect()函数中会播放call end tone.
此时会导致音乐播放的中断,等播放完毕则会继续播放音乐。这就是问题的整个过程。
此问题在JB上面改成了由Phone php?mod=tag&id=6090" target="_blank" class="relatedlink">Framework获取和释放audio focus,Google default就不会有这样的问题了。
拨打紧急电话,如112,之后切换到speaker,有时刚切到speaker时有爆音。
这个是HW limitation,iPhone手机上也有一样的问题。如果要完全消除这个Device切换声音,需要做一些HW gain ramp Down/up,但这会影响反应时间,所以一直以来mtk没有这样设计。
xxf谢谢分享