Опубликован (https://github.com/Chocobozzz/PeerTube/releases/tag/v1.3.0)&...выпуск PeerTube 1.3 (https://joinpeertube.org/en/), децентрализованной платформы для организации видеохостинга и видеовещания. PeerTube предлагает независимую от отдельных поставщиков альтернативу YouTube, Dailymotion и Vimeo, использующую сеть распространения контента на базе P2P-коммуникаций и связывания между собой браузеров посетителей. Наработки проекта распространяются (https://github.com/Chocobozzz/PeerTube) под лицензией AGPLv3.PeerTube базируется на применении BitTorrent-клиента WebTorrent (https://www.opennet.ru/opennews/art.shtml?num=43690), запускаемого в браузере и который использует технологию WebRTC (http://webrtc.org/) для организации прямого P2P-канала связи между браузерами, и протокола ActivityPub (https://www.opennet.ru/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-плеером.
Если пользователя не устраивают правила размещения видео на определённом сервере PeerTube, он может подключиться к другому серверу или запустить (https://github.com/Chocobozzz/PeerTube/blob/develop/support/... свой собственный сервер. Для быстрого развёртывания сервера предоставляется преднастроенный образ в формате Docker (chocobozzz/peertube). В настоящее время для размещения контента запущены 332 (https://instances.joinpeertube.org/instances) сервера, поддерживаемые разными добровольцами и организациями.
Основные новшества выпуска 1.3:
- Добавлена поддержка списков воспроизведения видео при помощи которых пользователь может создать список для отложенного просмотра.
Возможно создание как приватных так и публичных плейлистов. Каждая запись может не только определять видеоролик, но и ссылаться на позицию для начала и завершения воспроизведения. В отличие от каналов списки воспроизведения не могут быть объектом подписки, а являются средством индивидуальной организации просмотра. В плейлист можно включать не только свои, но и чужие видео. В файл конфигурации production.yaml добавлена настройка streaming_playlists, определяющая каталог для сохранения плейлистов;
- Добавлена функция помещения видео в карантин (при включении загруженные видео автоматически добавляются в чёрный список и исключаются из него после рецензирования);
- Добавлена экспериментальная поддержка протокола HLS (https://ru.wikipedia.org/wiki/HLS) (HTTP Live Streaming), позволяющего адаптивно управлять потоком в зависимости от полосы пропускания. Для использования HLS для каждого разрешения требуется загрузить отдельный файл с видео. Поддерживается при наличии FFmpeg 4 или более новой версии;
- Расширены возможности управления подписчиками. Добавлена поддержка удаления подписчика, блокировки создания новых подписок, ручного добавления подписчиков и отправки уведомлений о новых подписчиках;
- Улучшен интерфейс пользователя. Увеличена высота области воспроизведения, изменено оформление кнопок, увеличен размер миниатюр,
в меню добавлена секция "Моя библиотека", улучшено отображение на мобильных устройствах, добавлены новые анимированные эффекты;
- В интерфейсе администратора появились возможности отключения трекера (запрет работы в режиме P2P), смены/сброса паролей пользователей, просмотра серверных логов, диагностики сетевых проблем, ограничения размера истории просмотренных видео и удаления старых записей о внешних видео.
URL: https://github.com/Chocobozzz/PeerTube/releases/tag/v1.3.0
Новость: https://www.opennet.ru/opennews/art.shtml?num=50801