leaudio: Improve LeAudio switch during phone call
When LeAudio Group is getting Active during phone call it is because user changed the output device for a phone call. This operations is quite heavy as it takes Telecom/Audio Framework and Bluetooth time and resources. The step by step scenario looks like this: 1. Telecom clears current communication device (could be also Bluetooth) 2. Telecom enables Audio for Bluetooth device 3. LeAudioService calls native to set group as active (GroupSetActive) 4. leaudio native stack starts audio session and notifies upper layer about that 5. LeAudioService requests Audio Manager to connect LeAudio device 6. Audio Manager reads LeAudio device capabilities 7. Audio Manager notifies about LeAudio device being connected 8. LeAudioService notifies users (and Telecom) about LeAudio device being connected 9. Telecom choose new communication device 10. Audio HAL Resumes Bluetooth Encoding session which triggers ASE Configuration up to Streaming The whole thing can take up to 4 sec With this patch, followining modifications are added in following steps 4. in addition to previous steps, if native stack detects ongoing call, it will start ASE configuration for Conversational use case up to QoS Configure state 10. Here instade of complete ASE configuration, only Enable ASE is left. This can decrease time by 1.5 sec Bug: 308510081 Bug: 369322905 Test: atest bluetooth_le_audio_test bluetooth_le_audio_client_test Flag: com::android::bluetooth:flags::leaudio_improve_switch_during_phone_call Change-Id: Iaedd00594e6caa17495435c897e76c199c61eca9
Loading
Please register or sign in to comment