Опубликован (https://github.com/Chocobozzz/PeerTube/releases/tag/v1.4.0) выпуск PeerTube 1.4 (https://joinpeertube.org/en/), децентрализованной платформы для организации видеохостинга и видеовещания. PeerTube предлагает независимую от отдельных поставщиков альтернативу YouTube, Dailymotion и Vimeo, использующую сеть распространения контента на базе P2P-коммуникаций и связывания между собой браузеров посетителей. Наработки проекта распространяются (https://github.com/Chocobozzz/PeerTube) под лицензией AGPLv3.PeerTube базируется на применении BitTorrent-клиента WebTorrent (https://www.opennet.me/opennews/art.shtml?num=43690), запускаемого в браузере и использующего технологию WebRTC (http://webrtc.org/) для организации прямого P2P-канала связи между браузерами, и протокола ActivityPub (https://www.opennet.me/opennews/art.shtml?num=47960), позволяющего объединить разрозненные серверы с видео в общую федеративную сеть, в которой посетители участвуют в доставке контента и имеют возможность подписки на каналы и получения уведомлений о новых видео. Предоставляемый проектом web-интерфейс построен с использованием фреймворка Angular (https://angular.io/).
Федеративная сеть PeerTube образуется как содружество связанных между собой небольших серверов хостинга видео, на каждом из которых имеется свой администратор и могут быть приняты свои правила. Каждый сервер с видео выполняет роль BitTorrent-трекера, на котором размещены учётные записи пользователей данного сервера и их видео. Идентификатор пользователя формируются в форме "@имя_пользователя@домен_сервера". Передача данных при просмотре осуществляется непосредственно из браузеров других посетителей, просматривающих контент.
Если видео никто не просматривает отдача организуется сервером, на который изначально загружено видео (используется протокол WebSeed (http://www.bittorrent.org/beps/bep_0019.html)). Помимо распределения трафика между пользователями, просматривающими видео, PeerTube также позволяет узлам, запущенным авторами для первичного размещения видео, кэшированить видео других авторов, формируя распределённую сеть не только из клиентов, но и из серверов, а также обеспечивая отказоустойчивость.
Для начала вещания через PeerTube пользователю достаточно загрузить на один из серверов видеоролик, описание и набор тегов. После этого ролик станет доступен во всей федеративной сети, а не только с сервера первичной загрузки. Для работы с PeerTube и участия в распространении контента достаточно обычного браузера и не требуется установка дополнительного ПО. Пользователи могут отслеживать активности в выбранных видеоканалах, подписавшись на интересующие каналы в федеративных социальных сетях (например в Mastodon и Pleroma) или через RSS. Для распространения видео с использованием P2P-коммуникаций пользователь также может добавить на свой сайт специальный виджет со встроенным web-плеером.
В настоящее время для размещения контента запущены 320 (https://instances.joinpeertube.org/instances) серверов, поддерживаемые разными добровольцами и организациями.
Если пользователя не устраивают правила размещения видео на определённом сервере PeerTube, он может подключиться к другому серверу или запустить (https://github.com/Chocobozzz/PeerTube/blob/develop/support/...) свой собственный сервер. Для быстрого развёртывания сервера предоставляется преднастроенный образ в формате Docker (chocobozzz/peertube).
В новом выпуске:
- Добавлена экспериментальная поддержка плагинов и тем оформления, которые можно установить через web-интерфейс администратора. Для каждого экземпляра PeerTube может быть выбрана своя тема оформления (администратор загружает темы, после чего они становятся доступны для активации пользователями);
- Добавлена поддержка загрузки звуковых файлов. PeerTube сам создаст на их основе видео со статической картинкой, выполнив слияние звукового файла с обложной альбома и параметрами файла;
- Реализована поддержка многоэтапной регистрации пользователей. Новые пользователи могут сами создать свой канал (username/channel). По умолчанию для пользователя осуществляется показ страницы его канала, а не домашней страницы учётной записи.
- Добавлена возможность использования в URL параметров muted, loop и peertubeLink;
- Переработан интерфейс публикации видео, добавлена возможность назначения времени начала и конца воспроизведения, субтитров, флагов автоматического и цикличного воспроизведения;
- Обеспечен вывод групп подписчиков и недавно добавленных видео в хронологическом порядке;
- Добавлен языковой фильтр, позволяющий отображать только видео на определённых языках;
- Добавлена возможность перевода в разряд приватных публичных или ещё не опубликованных видео, а также списков воспроизведения;
- Реализована возможность перекодирования видео с качеством 4K;
- Обеспечена поддержка федеративного удаления комментариев на других серверах, удалённых владельцем видео;
- Добавлена возможность установки пароля администратора во время первого запуска;
- Устранена проблема с безопасностью, вызванная тем, что модераторы могли создавать и изменять параметры привилегированных пользователей. Отныне действия модераторов ограничены только обычными пользователями;
- CLI-утилиты вынесены в отдельный пакет для сокращения размера зависимостей сервера;
- Улучшена работа кэша статических файлов и ускорено отображение шрифтов.
URL: https://github.com/Chocobozzz/PeerTube/releases
Новость: https://www.opennet.me/opennews/art.shtml?num=51364