audio: Force route call on HAL during device disconnection
- When a wired accessory is connected/disconnected, setDeviceConnectionState updates the current device only for active outputs and also makes the corresponding route call on Audio HAL when the current device is not same as the previous device for the active outputs. As inactive outputs are not updated in this case, sometimes audio policy fails to notify device change to HAL. Specific scenario is mentioned below - If headset is inserted when touch tones are disabled and music is in progress, LPA/tunnelled output is updated with headset as its current device and also respective route call is made on audio HAL. But low latency output still has speaker as its current device because it is not active. Later, if music is paused and headset is removed, setOutputDevice does not make route call on Audio HAL when touch tones are played. This is because the current device and previous device are same(speaker) for low latency output. So Audio HAL tries to play the touch tone on headset when headset is not connected. - Fix is to force route call on HAL after every device disconnection irrespective of current and previous device being same for the specific output Change-Id: I80d799718c980d0422d4e5f7015fcf16f001fda9 CRs-Fixed: 627903
Loading
Please register or sign in to comment