Криво и нестабильно работает связь.

Avangardum

New Member
Использовал Flashphoner для видеосвязи в приложении. Видеосвязь временами не работает, звук временами очень сильно искажается, а также идёт с задержкой примерно в 2-3 секунды. Также если использовать только аудиосвязь, без видео, то когда человек говорит, его слышит только часть участников разговора. Сервер выдаёт "SESSION DOES NOT EXIST". Ни на клиенте, ни на сервере не наблюдается избыточной загруженности ЦП и памяти.
 

Max

Administrator
Staff member
Пришлите SSH доступ к серверу через эту форму. Проверим настройки сервера.
Также опишите пожалуйста как технически работает ваше приложение: один ко многим, многие ко многим, вебинар, трансляция, и т. д.
 

Avangardum

New Member
В приложении несколько игроков заходят в комнату и общаются между собой. Каждый создаёт связь с каждым
 

Max

Administrator
Staff member
Проверили настройки сервера и логи. По логам не видно каких-либо проблем.
Проблемы, которые вы описываете, похожи на нехватку битрейта (скорости канала) между пользователем и сервером.

Рекомендации:

1. Выставить минимальное разрешение видео при публикации.

Например, если ваше приложение отображает три видео фрейма на одном экране, то для публикуемого видео не требуется выставлять 1280 x 720, достаточно будет 320 x 180
или 160 x 90. Это поможет уменьшить нагрузку на полосу пропускания во много раз.

Настройки разрешения в Android SDK

2. На стороне сервера выставить ограничения по битрейту:

Code:
webrtc_cc_min_bitrate=30000
webrtc_cc_max_bitrate=500000
Ограничиваем битрейт видео потока до 500 kbps.


3. На стороне сервера увеличить битрейт для аудио чтобы улучшить звук:

opus_formats = maxaveragebitrate=64000;


4. Если пункты 1-3 не помогли, включить протокол TCP настройкой на стороне сервера:

Code:
ice_tcp_transport=true

И на стороне Android SDK

Code:
streamOptions.setTransport("TCP");

В случае использования TCP потерь не будет и качество должно стать лучше.
Но при этом может увеличиться задержка.

5. Если пункты 1-4 не помогли, протестировать прямой стриминг и убедиться, что проблема остается.

Тест:

1) Пользователь1 публикует стрим с аудио и видео из примера Two Way Streaming
2) Остальные пользователи смотрят его стрим из этого же примера.

Пример Two Way Streaming для Android SDK

для Web SDK

6. Если при проведении теста (пункт 5), проблемы продолжают повторяться, установить WCS на выделенный сервер Dedicated Server и попробовать снова.
Либо подключиться к нашему демо-серверу wss://demo.flashphoner.com и попробовать с ним

7. Настроить ZGC в конфиге wcs-core.properties
 
Top