При подключении наушников к устройству, звук идет через динамики устройства

Anton1984

Member
При использовании Android SDK во время просмотра стрима с подключённой гарнитурой, звук идет через встроенный динамик смартфона ,а не через наушники
 

Max

Administrator
Staff member
Уточните, пожалуйста,
- модель устройства
- версии Android и Android SDK
- какое приложение из Android SDK примеров используется
- работают ли наушники с другими приложениями
Попробуйте проверить с использованием чекбокса [Use speakerphone] для переключения внешнего динамика в примере Media Devices.
 

R2D2

Member
Присоединяюсь к вопросу. Устройства Samsung Note 10, A41 и т.д (насколько помню и другие тоже) Android 10 и ниже

compileSdkVersion 30
buildToolsVersion '30.0.3'
defaultConfig {
minSdkVersion 19
targetSdkVersion 30
versionCode 11

Звуки всего приложения (служебные звуки, mediaplayer и другие) при подключении наушников bluetooth переходят на наушники, а воспроизведение стрима WCS- все еще на внешних динамиках.
По умолчанию стрим воспроизводится через спикерфон
Как сделать автоматическое переключение на наушники???
 
Last edited:

Max

Administrator
Staff member
Как сделать автоматическое переключение на наушники???
Отключить спикерфон можно при помощи метода
Code:
Flashphoner.getAudioManager().setUseSpeakerPhone(false)
Пример использования в исходном коде Media Devices здесь
 

R2D2

Member
Все равно, есть проблема под Android:

Когда подключаются проводные наушники, то то воспроизведение переключается со спикера на проводные наушники
Если, подключаются bluetooth наушники то воcпроизведение стрима со спикера на беспроводные наушники не переключаются.

Flashphoner.getAudioManager().setUseSpeakerPhone(false/false) - используем (без этого не прерходит даже на проводные наушники)

Как заставить воспроизводить стрим через bluetooth наушники? (для нас это крайне важный вопрос)
 
Last edited:

Max

Administrator
Staff member
Проблема воспроизводится, создали тикет WCS-3053 для ее исследования, результаты сообщим в этой теме.
 

R2D2

Member
Сколько времени потребуется? а то у нас время поджимает....
 

Max

Administrator
Staff member
К сожалению, мы не предоставляем ETA по форумным запросам, однако продвинем данный тикет в число приоритетных.
Вместе с тем просим проявить терпение, поскольку требуется время на исследование. Возможно, фикс потребует обновления сборки библиотеки WebRTC, которая используется в Android SDK, поскольку публикацией и воспроизведением занимается именно эта библиотека, а SDK обеспечивает сигналинг.
 

R2D2

Member
Да пожалуйста подвигайте, а то у нас продукт на тесте - а тут косяки такие жесткие вылазят.
 

Max

Administrator
Staff member
Да пожалуйста подвигайте, а то у нас продукт на тесте - а тут косяки такие жесткие вылазят.
Фикс уже на предварительном тестировании
 

R2D2

Member
может быть как то можно получить тестируемую библиотеку???
 

Max

Administrator
Staff member
Предварительное тестирование пройдено, завтра-послезавтра ожидается релиз.
 

Max

Administrator
Staff member
В сборке 1.1.0.19 добавлена возможность переключения на Bluetooth гарнитуру при помощи функции Flashphoner.getAudioManager().setUseBluetoothSco()
Подробности здесь.
 

R2D2

Member
А почему у библиотеки 1.1.0.19 мин SDK 26 (Android 8)? Сразу отпадают Android 6 (11,5% всех телефонов).
 

Max

Administrator
Staff member
А почему у библиотеки 1.1.0.19 мин SDK 26 (Android 8)? Сразу отпадают Android 6 (11,5% всех телефонов).
Это связано с требованиями библиотеки WebRTC, которая интегрирована в Android SDK 1.1
Создали отдельный тикет WCS-3059 по портированию фикса в Android SDK 1.0. Пока Вы можете тестировать на Android SDK 1.1, функция будет та же самая.
 

Max

Administrator
Staff member
Функция Flashphoner.getAudioManager().setUseBluetoothSco() портирована в Androd SDK 1.0 в сборке 1.0.1.74. Подробности здесь.
 

R2D2

Member
В библиотеке 1.1 обнаружился еще один косяк, после нескольких разрывов связи(дефект повторяется нестабильно), коннект иногда присходит криво:
данные от приложения к серверу уходят, а вот данные от сервера через public void onAppData(Data data) перестают проходить - хотя в логах Android Studio видим что ответ от сервера в WebSocket есть....
Библиотека 1.0 такой проблемой не страдает....
 

Max

Administrator
Staff member
Воспроизводится ли проблема в примере Video Chat? Если нет, попробуйте модифицировать код таким образом. чтобы проблема начала воспроизводиться, и пришлите, используя эту форму.
Также уточните, пересоздается ли объект Session в этом случае, либо Вы пытаетесь его переиспользовать. Рекомендуем после disconnect создавать новый объект.
 

R2D2

Member
В видео чате проблема по определению не может быть воспроизведена - потому что там работает только WCS и нет дополнительной серверной обвязки работающей с WCS по REST (взаимодействующей с приложением через WCS )
 
Top