YouTube Watch Together
Смотрите видео YouTube вместе с друзьями в режиме реального времени.
Документация
Что такое синхронизированный просмотр видео?
Синхронизированный просмотр видео — часто называемый "совместный просмотр" или "co-watching" — позволяет нескольким людям в разных местах смотреть одно и то же видео на одной и той же позиции воспроизведения в реальном времени. В отличие от простого обмена ссылкой и одновременного нажатия кнопки воспроизведения, синхронизированная сессия держит всех участников на одной временной отметке даже когда кто-то ставит видео на паузу, перемещается по шкале или присоединяется в середине видео.
Это возможно благодаря центральному серверу, который служит единственным источником истины для состояния воспроизведения. Когда любой участник нажимает воспроизведение, паузу или перемещается на новую позицию, это изменение передается всем остальным участникам немедленно, и все плееры синхронизируются. Компенсация сетевой задержки гарантирует, что зрители с более медленным соединением остаются синхронизированными и не отстают со временем.
Описание инструмента
Этот инструмент позволяет вам смотреть любое видео YouTube вместе с друзьями или коллегами в реальном времени. Он создает общую комнату, которую может присоединить любой, используя ссылку. Все элементы управления воспроизведением — воспроизведение, пауза и перемещение — синхронизируются между всеми участниками комнаты мгновенно. Инструмент показывает живую статистику, включая задержку вашего соединения и максимальное отклонение между участниками, так что вы всегда знаете, насколько хорошо все синхронизированы.
Возможности
- Мгновенный обмен комнатой — URL для совместного использования генерируется автоматически; любой, у кого есть ссылка, присоединяется к одной и той же синхронизированной сессии
- Синхронизация в реальном времени — события воспроизведения, паузы и перемещения от любого участника передаются всей комнате немедленно с компенсацией задержки для выравнивания позиций воспроизведения
- Мониторинг отклонения в реальном времени — отображает задержку вашего соединения и максимальное отклонение воспроизведения между всеми зрителями, чтобы вы могли видеть, насколько плотно все синхронизированы
Как это работает
Каждая комната управляется сервером с использованием фреймворка Colyseus для многопользовательского взаимодействия в реальном времени. Сервер хранит авторитетное состояние воспроизведения: воспроизводится ли видео или на паузе, текущую временную отметку и счетчик версии, который увеличивается при каждом изменении состояния.
Когда участник взаимодействует с плеером (воспроизведение, пауза, перемещение), команда отправляется на сервер. Сервер обновляет свое авторитетное состояние и передает новое состояние всем подключенным клиентам. Плеер каждого клиента затем согласует свою локальную позицию с авторитетным состоянием, перемещаясь или возобновляя воспроизведение по мере необходимости.
Для компенсации сетевой задержки клиент оценивает "истинную" текущую позицию воспроизведения на стороне сервера, беря последнюю сообщенную временную отметку и добавляя прошедшее время с момента получения этого отчета — аналогично тому, как часы на основе NTP экстраполируют текущее время между точками синхронизации.
Советы
- Чтобы начать сессию, просто откройте инструмент — комната создается автоматически и URL для совместного использования появляется на панели комнаты справа.
- Вставьте URL видео YouTube или ID видео в поле URL и нажмите Смотреть, чтобы загрузить видео для всех в комнате.
- Поделитесь URL-адресом, показанным на панели комнаты, с кем-либо, с кем вы хотите смотреть; они автоматически присоединятся к той же комнате, когда откроют ссылку.
- Статистика Макс. отклонение показывает наибольший разрыв (в секундах) между позициями воспроизведения любых двух участников. Значение менее 2 секунд — это нормально; большие значения могут указывать на медленное соединение.