Как посмотреть синхронно фильм с друзьями находящимся в разных концах света

Syncplay - это бесплатный инструмент с открытым исходным кодом для синхронизации мультимедийных плееров с друзьями, находящимися на расстоянии, для совместного просмотра видео, доступный для Microsoft Windows, MacOS, Linux и *BSD. Он поддерживает mpv, VLC, MPC-BE и MPC-HC, при этом каждый пользователь может использовать любой из этих медиаплееров.

Приложение синхронизирует положение и состояние воспроизведения медиа-плеера через Интернет, позволяя всем зрителям смотреть одно и то же видео в одно и то же время. Таким образом, когда один зритель ищет, приостанавливает или разрывает видео, это применяется ко всем медиа-плеерам зрителей, которые находятся в той же комнате Syncplay, на том же сервере.

Вы можете использовать один из бесплатных публичных серверов Syncplay, или вы можете разместить свой собственный публичный или частный сервер Syncplay, будь то Windows, MacOS, Linux (включая Raspberry Pi).

Кроме того, Syncplay также включает в себя функции:

  • Воспроизводить локально (с общим списком воспроизведения) или онлайн видео, которые поддерживают youtube-dl (на моем компьютере это работало с mpv, но это не работало с VLC).
  • Синхронный просмотр осуществляется через комнату, похожую на чат, так что вы можете общаться с другими участниками, видеть состояние их плееров и т.д. Вы также можете общаться с другими зрителями через mpv (в верхней части окна плеера mpv).
  • Автоматически приостановливать видео в случае отключения пользователя
  • Содержит опции для работы с запаздыванием, такие как перемотка вперед/назад или замедление на десинхронизации
  • Может показывать OSD-сообщения поверх видео-плеера с различными событиями (например, пользователи, которые подключились или не готовы, и т.д.)

Важно отметить, что все пользователи (зрители) должны иметь одно и то же локальное видео, которое они хотят смотреть совместно. Syncplay не передает видео между пользователями, не синхронизирует конфигурацию плеера, выбор аудио/субтитров дорожки или громкость.

Все зрители, которые хотят присоединиться к этому синхронизированному воспроизведению, должны выполнить следующие действия. Для начала вам понадобится:

  • Syncplay. В Linux он доступен как AppImage или snap из Snap Store. Для Windows - вариант с установкой в систему и Portable-версия.
  • mpv, VLC, MPC-BE или MPC-HC (на веб-сайте Syncplay говорится, что mpv имеет лучшую совместимость с Syncplay). Для VLC Syncplay должен автоматически установиться сценарий LUA (syncplay.lua); в случае, если этого не произойдет, вам нужно будет установить его самостоятельно (смотрите здесь).
  • опционально: youtube-dl, чтобы иметь возможность проигрывать онлайн видео, поддерживаемое при использовании mpv (в Windows вы можете поместить загруженный youtube-dl.exe рядом с mpv.exe, и mpv подхватит его автоматически).

В своем тестировании я использовал mpv с публичным сервером Syncplay, и инструкции ниже предполагают, что вы будете использовать то же самое. Если вы хотите запустить свой собственный сервер, смотрите это руководство.

Стоит отметить, что в Windows сервер Syncplay доступен для загрузки в виде бинарного файла, но не в Linux. Поэтому на последнем нужно клонировать репозиторий Syncplay GitHub, который содержит syncplayServer.py.

Когда эти требования удовлетворены, можно использовать Syncplay для просмотра видео синхронно с друзьями.

При запуске Syncplay вы заметите, что программа запрашивает адрес сервера, имя пользователя, комнату по умолчанию и т.д. Вот что вы должны установить:

Адрес сервера: все пользователи/зрители должны выбрать один и тот же сервер из списка серверов общего пользования, например, syncplay.pl:8997. Сайт Syncplay рекомендует избегать публичных серверов, работающих на портах 8995 и 8999, так как они имеют большие задержки, в связи с тем, что большинство людей их используют.

Пароль сервера (если таковой имеется): при использовании публичного сервера строка не активна, т.к. это только для частных серверов.

Имя пользователя: используйте любое имя пользователя (разное для каждого зрителя).

Комната по умолчанию: введите одно и то же название комнаты на каждом компьютере, на котором вы хотите синхронизировать воспроизведение. Воспроизведение будет синхронизировано только с теми, кто находится в данной комнате на том же сервере. Названия комнат чувствительны к регистру. Так как у публичных серверов нет пароля, я бы предложил использовать сложное название комнаты (в качестве замены пароля), чтобы незваные гости не смогли угадать название вашей комнаты и перехватить его.

Путь к проигрывателю: Syncplay устанавливает автоматически путь к плееру, используемого в системе по умолчанию. Но если это не ваш вариант, можно ввести вручную путь к mpv, VLC или любому медиаплееру, на усмотрение каждого зрителя.

В окне Syncplay вы увидите большую кнопку с надписью Сохранить и запустить, запустите Syncplay щелкнув по ней. Откроется настроенный медиаплеер (например, mpv) и вы войдете в комнату, которую вы ввели в настройках Syncplay:

Воспроизвести видео можно просто, перетащив видео в окно медиаплеера (вы также можете открыть видео или ссылку из меню Файл в Syncplay). Каждый зритель должен сделать это действие. Файл не обязательно должен быть таким же в случае перетаскивания ( при использовании общего плейлиста - см. ниже), но его длительность должна быть одинаковой.

Точно так же вы можете перетащить ссылку на YouTube из веб-браузера в окно медиаплеера, чтобы воспроизвести ее синхронно со всеми зрителями (все зрители должны сделать то же самое, используя одну и ту же ссылку).

Стоит отметить, что домен, с которого вы перетаскиваете ссылку, должен быть внесен в белый список в Syncplay, по умолчанию только youtube.com (и youtu.be) внесен в белый список. Добавьте любые домены в список доверенных доменов в настройках Syncplay (когда Syncplay не подключен: включите опцию Больше настроек в нижней части окна Syncplay, затем щелкните Синхронизация на боковой панели и вы увидите список доверенных доменов, которые можно редактировать; когда Syncplay подключен: из меню Дополнительно → Доверенные сайты).

Как только видео будет готово к проигрыванию, нажмите клавишу пробела, чтобы отметить себя как готового и начать проигрывание видео. Или установите флажок Я готов в нижней части окна Syncplay , а когда все будут готовы, сделайте активным окно медиаплеера и начните воспроизведение нажав клавишу пробела.

Всякий раз, когда любой из зрителей останавливает и запускает воспроизведение, проматывает видео вперед/назад, это действие применяется ко всем медиапроигрывателям остальных зрителей, подключенным к одной комнате на одном сервере.

Другой способ воспроизведения видео - перетащить их в общий список воспроизведения в окне Syncplay. Но перед этим необходимо добавить папки, содержащие мультимедийные файлы, которые вы хотите воспроизвести: щелкните правой кнопкой мыши внутри общего списка воспроизведения, выберите Папки воспроизведения и выберите папку, содержащую видео, которое вы хотите воспроизвести (не добавляйте каталог с большим количеством файлов, так как Syncplay получит проблемы со сканированием). Это должен сделать каждый зритель. Затем перетащите видеофайл из этой папки в общий список воспроизведения Syncplay - этот же файл должен присутствовать у всех зрителей в добавленном каталоге мультимедиа и иметь точно такое же имя файла (в отличие от перетаскивания видео в верхней части окна мультимедийного проигрывателя).

Если имя файла показано красным цветом в списке воспроизведения общего доступа, это означает, что файл не был найден на всех компьютерах, подключенных к этой комнате. Когда файл найден на всех компьютерах, его цвет становится черным. Выберите его в окне Syncplay, сделайте активным окно медиаплеера и нажмите Пробел, чтобы отметить себя как готового и начать воспроизведение.

Хотите пообщаться с другими зрителями в окне плеера mpv? Нажмите Enter, введите ваше сообщение, затем нажмите Enter еще раз, чтобы отправить сообщение. Положение, шрифт, цвет надписи можно настроить в настройках Synplay (включите опцию Больше настроек и зайдите в раздел Chat).

Источник