Androidem samouczka stany, które mogę jednoznacznie powiedzieć TTS, który strumień używać:TTS wyjście zawsze będzie A2DP
do odtwarzania muzyki:
params.put(TextToSpeech.Engine.KEY_PARAM_STREAM, String.valueOf(AudioManager.STREAM_MUSIC));
a dla połączeń telefonicznych:
params.put(TextToSpeech.Engine.KEY_PARAM_STREAM, String.valueOf(AudioManager.STREAM_VOICE_CALL));
Rozumiem, że kierowanie audio do zestawu słuchawkowego Bluetooth działa tak, że STREAM_MUSIC
przechodzi do A2DP
(inaczej "audio multimediów" w ustawieniach Androida Bluetooth) i STREAM_VOICE_CALL
przechodzi do HSP
(inaczej "dźwięk telefonu" w ustawieniach Androida Bluetooth).
Ale niezależnie czy używam STREAM_MUSIC
lub STREAM_VOICE_CALL
w moim małym aplikacji audio zawsze idzie z jakiegoś powodu do A2DP
.
Co robię źle? Czy istnieje sposób na przekierowanie wyjścia TTS do profilu zestawu słuchawkowego HSP
?
To jest niesamowite. Opłakane dzięki za umieszczenie tego. Akceptuję, mimo że nie testowałem jeszcze tego kodu w mojej aplikacji. – an00b