62ced89701c1ba79db13266b53ee01d110b37636
Microphone and speaker are chosen separately, so a Bluetooth headset can play in media quality while the phone's own microphone listens, instead of the headset dropping into its call profile. Devices are kept by type and address: Android hands out new ids whenever one reconnects, and a line that lost its device comes back to it when it returns. The microphone preset (voice recognition by default, or the platform's call processing, unprocessed, ...) and whether voices play as media or as a call are Android's own settings. Changing either reopens the open streams in place. Communication mode, and the headset's call link that a Bluetooth microphone needs, are held only while a stream needs them, and are set up before that stream opens. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Description
A reimplementation of TeamSpeak 3 in Java
TS3
Latest
Languages
Java
85.5%
Kotlin
13.3%
C++
0.6%
Python
0.5%