Доступні PeerTube 2.3 та WebTorrent Desktop 0.23

Опубліковано випуск Peer Tube 2.3, децентралізованої платформи для організації відеохостингу та відеомовлення. PeerTube пропонує незалежну від окремих постачальників альтернативу YouTube, Dailymotion та Vimeo, що використовує мережу розповсюдження контенту на базі P2P-комунікацій та зв'язування між собою браузерів відвідувачів. Напрацювання проекту поширюються під ліцензією AGPLv3.

PeerTube базується на застосуванні BitTorrent-клієнта WebTorrent, що запускається в браузері та використовує технологію WebRTC для організації прямого P2P-каналу зв'язку між браузерами, та протоколу ActivityPub, що дозволяє об'єднати розрізнені сервери з відео в загальну федеративну мережу, в якій відвідувачі беруть участь у доставці контенту та мають можливість підписки на канали та отримання повідомлень про нові відео. Web-інтерфейс, що надається проектом, побудований з використанням фреймворку. Angular.

Федеративна мережа PeerTube утворюється як співдружність пов'язаних між собою невеликих серверів хостингу відео, на кожному з яких є свій адміністратор і можуть бути прийняті свої правила. Кожен сервер з відео виконує роль BitTorrent-трекера, на якому розміщено облікові записи користувачів даного сервера та їх відео. Ідентифікатор користувача формуються у формі «@ім'я_користувача@домен_сервера». Передача даних під час перегляду здійснюється безпосередньо з браузерів інших відвідувачів, які переглядають контент.

Якщо відео ніхто не переглядає, віддача організується сервером, який спочатку завантажено відео (використовується протокол WebSeed). Крім розподілу трафіку між користувачами, що переглядають відео, PeerTube також дозволяє вузлам, запущеним авторами для первинного розміщення відео, кешувати відео інших авторів, формуючи розподілену мережу не тільки з клієнтів, але і серверів, а також забезпечуючи відмовостійкість.

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

В даний час для розміщення контенту запущено більше 300 серверів, що підтримуються різними добровольцями та організаціями. Якщо користувач не влаштовує правила розміщення відео на певному сервері PeerTube, він може підключитися до іншого сервера або запустити власний сервер. Для швидкого розгортання сервера надається налаштований образ у форматі Docker (chocobozzz/peertube).

В новому випуску:

  • Додано підтримку глобального пошуку (за замовчуванням відключено та вимагає активації адміністратором).
  • Адміністратору надано можливість визначення банера, що відображається на сторінках поточного екземпляра PeerTube.
  • Розширено засоби побудови федеративних мереж: Додано налаштування для передачі іншим мережам відео, які не включені до публічних списків. Реалізовано підтримку сортування файлів відео за екранною роздільною здатністю у зворотному порядку. Забезпечено надсилання повних описів об'єктів відео через ActivityPub.
  • Модераторам надано можливість масового видалення коментарів для заданого облікового запису та вимкнення облікових записів під час перегляду мініатюр. Додана підтримка визначення типових причин видалення.
  • Проведено оптимізацію використання всього доступного екранного простору при відображенні сітки мініатюр.
  • На сторінці My videos доданий лічильник відео та інформація про канал.
  • Спрощено навігацію по меню в інтерфейсі адміністратора.
  • Надається можливість обмеження доступу до RSS-стрічок з новими відео для певних каналів та облікових записів.
  • Запропоновано альфа-випуск плагіна Auto block videosдозволяє блокувати відео на основі публічних списків блокування.
  • Дотримуючись загальної тенденції застосування інклюзивних термінів, функція «videos blacklist» перейменована в «videos blocks/blocklist».
  • Для обробки зображень замість бібліотеки-обв'язування гострий задіяний модуль
    jimp (JavaScript Image Manipulation Program), написаний цілком JavaScript.

Додатково сформований новий випуск WebTorrent робочий стіл 0.22, торрент-клієнта, що підтримує стрімінг відео і дозволяє переглядати відео та звуковий контент не чекаючи його повного завантаження, підвантажуючи нові дані в міру необхідності. WebTorrent Desktop також дозволяє змінювати позицію всередині ще повністю не завантажених файлів (зміна позиції автоматично змінює пріоритет завантаження блоків). Є можливість підключення як до браузерних-бенкетів на базі WebTorrent, так і до бенкетів BitTorrent, що використовують типові програми, такі як Transmission або uTorrent. Підтримуються magnet-посилання, torrent-файли, визначення бенкетів по DHT (Distributed Hash Table), PEX (Peer exchang) та списків із серверів-трекерів. Підтримується потокове мовлення за допомогою протоколів AirPlay, Chromecast та DLNA.

Нова версія примітна підтримкою багатотрекового звуку, покращеним визначенням кодеків, повідомленням про верифікацію файлів, підтримкою форматів MPEG-Layer-2, Musepack, Matroska (звук) та WavePack, початком публікації rpm-пакетів для Linux та збірок для архітектури arm64. Випуск 0.22 побудований на основі платформи Electron 9, але вже опубліковано оновлення 0.23, в якому здійснено перехід на використання тестової версії платформи Electron 10.

Нагадаємо, що WebTorrent є розширенням протоколу BitTorrent, що дозволяє організувати децентралізовану мережу поширення контенту, що функціонує через зв'язування між собою браузерів користувачів, що переглядають контент. Проект не вимагає для роботи зовнішньої серверної інфраструктури та браузерних плагінів. Для зв'язування відвідувачів сайтів у єдину мережу доставки контенту достатньо розмістити на сайті спеціальний JavaScript-код, який використовує для прямого обміну даними між браузерами технологію WebRTC.

Джерело: opennet.ru

Додати коментар або відгук