Черный экран после обновления страницы

Artem7292021

New Member
Добрый день. Ведущий запускает трансляцию. Слушатель видит трансляцию. Если ведущий обновит страницу, слушатель видит черный экран, только после повторного обновления страницы ведущим, слушатель снова видит трансляцию. Логи приложил
 

Max

Administrator
Staff member
Добрый день.
Возможная причина в Вашей последовательности операций (flow). По логам (в том числе и предоставленным ранее) она выглядит так:
1. Ведущий публикует поток
2. По REST API /mixer/startup создается микшер
3. По REST API /mixer/add поток ведущего добавляется в микшер
4. К потоку микшера подключаются зрители
5. Ведущий останавливает поток
6. Микшер останавливается по REST API /mixer/terminate
7. Зрители отключаются от потока микшера в связи с остановкой его публикации
При разрыве соединения по Websocket timeout с клиентом ведущего (это может быть при обновлении страницы, но чаще при плохом канале), микшер не останавливается по REST API, но останавливается по таймауту mixer_idle_timeout, который выставлен в 60 секунд. Все это время зрители видят черный экран, т.к. других потоков в микшере нет.
Еще один часто встречающийся вариант: при разрыве Websocket соединения клиентом ведущего (это может быть при обновлении страницы), поток ведущего выпадает из микшера в связи с остановкой публикации, но запрос /mixer/terminate для этого микшера приходит позднее (задержка по логам составляет около 20 секунд). Все это время зрители не отключаются от потока микшера и видят черный экран, хотя ведущий опубликовал новый поток.
Также отметим, что для каждого нового потока ведущего создается новый микшер, и зрители каким-то образом получают имя потока микшера для подключения. Возможно, здесь также присутствует задержка.
Рекомендуем обратить внимание на работу бэкенда, который управляет REST API и обеспечивает сигналинг для зрителей.
 
Top