MediaGoblin: децентралізована платформа для обміну мультимедійними файлами

Після майже 4 років після останнього випуску, випуск нової версії децентралізована платформа для обміну мультимедійними файлами MediaGoblin 0.10 в якому перехід за замовчуванням був зроблений для використання Python 3 і підтримка для початку використання FastCGI припиняється.

Крім того додана підтримка автоматичного перекодування відео до опцій з різною роздільною здатністю та перегляду відео з різним рівнем якості (360p, 480p, 720p), а також у цій новій версіїe знову ввімкнув новий плагін субтитрів за допомогою якого ви можете завантажувати та редагувати субтитри для відео.

Підтримується кілька доріжок субтитрів, наприклад, для різних мов. Цю функцію додав Saksham Agrawal під час Google Summer of Code 2016 та режисер Борис Бобров. Функція доступна вже деякий час у гілці master, але вона безумовно заслуговує на згадування для цієї версії (технологія AJAX використовується для інтерактивного додавання коментарів).

Про MediaGoblin

Тим, хто не знайомий з MediaGoblin (він же GNU MediaGoblin), слід знати, що це платформа, призначена для організації хостингу та обміну мультимедійним вмістом, включаючи фотографії, відео, звукові файли, відео, XNUMXD-моделі та документи PDF.

Платформа здатний підтримувати широкий спектр вмісту, включена підтримка простого тексту, зображень (PNG та JPEG). HTML5 інтенсивно використовується для відтворення відео- та аудіовмісту у форматі WebM; тоді як формати звуку FLAC, WAV та MP3 автоматично перекодуються у Vorbis, а потім інкапсулюються у файли WebM.

На відміну від централізованих служб, таких як Fliсkr та Picasa, платформа MediaGoblin має на меті організувати обмін вмістом без посилання на певну послугу, використовуючи модель, подібну до StatusNet та pump.io, та надаючи можливість вирощувати сервер у власних приміщеннях.

MediaGoblin є частиною GNU і його код випускається на умовах Загальної публічної ліцензії GNU Affero; що означає, що вона дотримується принципів вільного та відкритого програмного забезпечення.

Решта прав на те, що не можна вважати програмним забезпеченням (наприклад, дизайн, логотип), передається у загальнодоступне надбання.

Як встановити MediaGoblin та похідні на Ubuntu?

Для тих, хто зацікавлений у можливості встановити цю платформу у своїй системі, вони можуть це зробити, дотримуючись інструкцій, які ми ділимо нижче.

Перш ніж приступити до встановлення таВажливо зазначити, що ця платформа створена для роботи з сервером, але його можна чудово використовувати під настільною системою. Єдине, що потрібно врахувати, це те, що для запуску веб-служб на вашому комп’ютері повинні бути встановлені необхідні програми, тоді як для тих, хто перебуває під серверною версією, кілька кроків можна пропустити.

Перше, що ми повинні зробити, це встановити необхідні послуги, що в цьому випадку ми можемо покластися на Ламппа (Ви можете переглянути наступну статтю де ми пояснюємо, як це зробити).

про встановлення LAMP на Ubuntu 20.04
Пов'язана стаття:
LAMP, встановіть Apache, MariaDB та PHP на Ubuntu 20.04

Зробив це зараз ми повинні встановити Ngix (оскільки MediGoblin цього вимагає) а також різні залежності:

sudo apt install nginx-light rabbitmq-server

sudo apt update

sudo apt install automake git nodejs npm python3-dev python3-gi \

python3-gst-1.0 python3-lxml python3-pil virtualenv python3-psycopg2

Зараз ми збираємося налаштувати базу даних у PostgreSQL, де база даних та користувач є mediagoblin:

sudo --login --user=postgres createuser --no-createdb mediagoblin

sudo --login --user=postgres createdb --encoding=UTF8 --owner=mediagoblin mediagoblin

Ми створюємо користувача та надаємо йому привілеї про мультимедійні файли:

sudo useradd --system --create-home --home-dir /var/lib/qmediagoblin \
--group www-data --comment 'GNU MediaGoblin system account' mediagoblin
sudo groupadd --force mediagoblin
sudo usermod --append --groups mediagoblin mediagoblin
sudo su mediagoblin –shell=/bin/bash

Ми створюємо каталоги що буде містити мультимедійні файли:

sudo mkdir --parents /srv/mediagoblin.example.org
sudo chown --no-dereference --recursive mediagoblin:www-data /srv/mediagoblin.example.org

Встановлюємо платформу:

sudo su mediagoblin --shell=/bin/bash
cd /srv/mediagoblin.example.org
git clone --depth=1 https://git.savannah.gnu.org/git/mediagoblin.git \
--branch stable --recursive
cd mediagoblin
./bootstrap.sh
VIRTUALENV_FLAGS='--system-site-packages' ./configure
make
mkdir --mode=2750 user_dev
sudo su mediagoblin --shell=/bin/bash
cd /srv/mediagoblin.example.org
git submodule update && ./bin/python setup.py develop --upgrade && ./bin/gmg dbupdate

Зробив це зараз лише тНам доведеться відредагувати файл mediagoblin.ini в якому ми збираємось розмістити наступне:

  • email_sender_address: електронний лист, який буде використовуватися як відправник для системи
  • У direct_remote_path, base_diry та base_url їх можна редагувати, щоб змінити префікс URL-адреси.
  • [mediagoblin]: тут ми додамо підключення до бази даних (вона полягає в наступному, якщо дотримується ім’я бази даних, яку ми створили за допомогою попередніх команд “sql_engine = postgresql: /// mediagoblin”)

Після редагування та збереження змін ми оновимо зміни за допомогою:

./bin/gmg dbupdate

В кінці кінців давайте створимо обліковий запис адміністратора де ми замінюємо ім’я користувача на своє ім’я користувача, а you@example.com - електронною поштою, до якої буде пов’язаний обліковий запис:

./bin/gmg adduser --username you --email you@example.com

./bin/gmg makeadmin you

Щоб запустити службу, просто запустіть:

./lazyserver.sh –server-name=broadcast

І ми підключаємося з веб-браузера до URL-адреси localhost: 6543 або використовуючи вашу внутрішню або IP-адресу сервера або доменне ім'я для порту "6543".

Якщо ви хочете дізнатися більше про це, ви можете перевірити деталі У наступному посиланні.


Залиште свій коментар

Ваша електронна адреса не буде опублікований. Обов'язкові для заповнення поля позначені *

*

*

  1. Відповідальний за дані: Мігель Анхель Гатон
  2. Призначення даних: Контроль спаму, управління коментарями.
  3. Легітимація: Ваша згода
  4. Передача даних: Дані не передаватимуться третім особам, за винятком юридичних зобов’язань.
  5. Зберігання даних: База даних, розміщена в мережі Occentus Networks (ЄС)
  6. Права: Ви можете будь-коли обмежити, відновити та видалити свою інформацію.