Звук Android медленно начинает играть через Bluetooth Sco
Я разрабатываю приложение, которое будет воспроизводить аудио TextToSpeech через Bluetooth SCO. После подключения к целевому устройству Bluetooth (автомобильная стереосистема) и последующего инструктирования движка TextToSpeech произойдет воспроизведение звука в течение примерно 15 секунд, даже если я подожду несколько секунд между подключением через SCO и воспроизведением TextToSpeech.
Вот код, который я использую для подключения через SCO:
AudioManager audioM = (AudioManager) getApplicationContext().getSystemService(getApplicationContext().AUDIO_SERVICE);
audioM.setMode(audioM.MODE_IN_COMMUNICATION);
audioM.setBluetoothScoOn(true);
audioM.startBluetoothSco();
audioM.setSpeakerphoneOn(false);
Вот код, который я использую для воспроизведения TextToSpeech:
String text = "Lorem Ipsum is simply dummy text of the printing and typesetting industry.";
HashMap<String, String> ttsParams = new HashMap<String, String>();
ttsParams.put(TextToSpeech.Engine.KEY_PARAM_STREAM, String.valueOf(AudioManager.STREAM_VOICE_CALL));
mTts.speak(text, TextToSpeech.QUEUE_FLUSH, ttsParams);
Другие приложения для Android (включая VOIP и встроенное приложение телефонии) не страдают от этой задержки. Эквивалентное приложение для iOS, которое я создал, не имеет задержки. Так что я знаю, что проблема не в стерео.
Любая помощь будет принята с благодарностью, спасибо
1 ответ
Оказывается, проблема была специфична для младшего устройства, с которым я тестировал. Все остальные устройства, которые я пробовал играть сразу.