Выпуск децентрализованной видеовещательной платформы PeerTube 4.0

Kate

Administrator
Команда форума
Состоялся выпуск децентрализованной платформы для организации видеохостинга и видеовещания PeerTube 4.0. PeerTube предлагает независимую от отдельных поставщиков альтернативу YouTube, Dailymotion и Vimeo, использующую сеть распространения контента на базе P2P-коммуникаций и связывания между собой браузеров посетителей. Наработки проекта распространяются под лицензией AGPLv3.

Основные новшества:

  • В интерфейсе администратора предложено новое табличное представление всех видео, размещённых на текущем сервере. Новый интерфейс позволяет выполнять действия, связанные с администрированием и модерированием, в пакетном режиме, применяя такие операции, как удаление, перекодирование и блокировка, сразу к нескольким выбранным видео.
  • Для упрощения выбора видео для пакетной обработки предложена возможность отсеивания и группировки элементов при помощи расширенных фильтров, которые позволяют разделять локальные и внешние видео, и сортировать по различным критериям, например, по дате публикации, использованию HLS/WebTorrent и состоянию учётной записи.
  • Для администраторов также добавлена возможность фильтрации логов по тегам и задания своих ограничений для отдельных каналов.
  • Для создателей видео предоставлен интерфейс просмотра подписчиков и фильтрации списков видео в каналах. Пользователь теперь также может выполнять операции сразу над несколькими элементами, например, можно удалить или заблокировать сразу всех помеченных подписчиков.
  • Предоставлена возможность перекодирования в видео с качеством 144p, которое может быть полезным для очень плохих каналов связи или для публикации подкастов.
  • Добавлена поддержка протокола потоковой передачи данных RTMPS (Real Time Messaging Protocol поверх TLS).
  • Предоставлена возможность использования в описаниях к спискам воспроизведения текста с разметкой Markdown.
  • Улучшено отображение видео, снятого на смартфон в вертикальном формате.
  • Проведена оптимизация операций извлечения с использованием протокола ActivityPub.
  • Добавлена поддержка утилиты yt-dlp, которая теперь рекомендуется из-за стагнации сопровождения youtube-dl.
  • Добавлен скрипт create-move-video-storage-jobs для автоматизации перемещения локальных видео в объектное хранилище.
  • Проведена большая работа по чистке и модернизации кода, настроек и API.
Напомним, что PeerTube базируется на применении BitTorrent-клиента WebTorrent, запускаемого в браузере и использующего технологию WebRTC для организации прямого P2P-канала связи между браузерами, и протокола ActivityPub, позволяющего объединить разрозненные серверы с видео в общую федеративную сеть, в которой посетители участвуют в доставке контента и имеют возможность подписки на каналы и получения уведомлений о новых видео. Предоставляемый проектом web-интерфейс построен с использованием фреймворка Angular.

Федеративная сеть PeerTube образуется как содружество связанных между собой небольших серверов хостинга видео, на каждом из которых имеется свой администратор и могут быть приняты свои правила. Каждый сервер с видео выполняет роль BitTorrent-трекера, на котором размещены учётные записи пользователей данного сервера и их видео. Идентификатор пользователя формируются в форме "@имя_пользователя@домен_сервера". Передача данных при просмотре осуществляется непосредственно из браузеров других посетителей, просматривающих контент.

Если видео никто не просматривает, отдача организуется сервером, на который изначально загружено видео (используется протокол WebSeed). Помимо распределения трафика между пользователями, просматривающими видео, PeerTube также позволяет узлам, запущенным авторами для первичного размещения видео, кэшировать видео других авторов, формируя распределённую сеть не только из клиентов, но и из серверов, а также обеспечивая отказоустойчивость. Имеется поддержка потокового вещания (live streaming) с доставкой контента в режиме P2P (для управления стримингом могут использоваться типовые программы, такие как OBS).

Для начала вещания через PeerTube пользователю достаточно загрузить на один из серверов видеоролик, описание и набор тегов. После этого ролик станет доступен во всей федеративной сети, а не только с сервера первичной загрузки. Для работы с PeerTube и участия в распространении контента достаточно обычного браузера и не требуется установка дополнительного ПО. Пользователи могут отслеживать активности в выбранных видеоканалах, подписавшись на интересующие каналы в федеративных социальных сетях (например, в Mastodon и Pleroma) или через RSS. Для распространения видео с использованием P2P-коммуникаций пользователь также может добавить на свой сайт специальный виджет со встроенным web-плеером.

В настоящее время для размещения контента функционирует около 900 серверов, поддерживаемых разными добровольцами и организациями. Если пользователя не устраивают правила размещения видео на определённом сервере PeerTube, он может подключиться к другому серверу или запустить свой собственный сервер. Для быстрого развёртывания сервера предоставляется преднастроенный образ в формате Docker (chocobozzz/peertube).

 
Сверху