MediaGoblin: decentralizirana platforma za razmjenu multimedijskih datoteka

Nakon skoro 4 godine od posljednjeg izdanja, izlazak nove verzije decentralizirana platforma za razmjenu multimedijskih datoteka MediaGoblin 0.10 u kojem zadani prijelaz je napravljen da koristi Python 3 i podrška za početak korištenja FastCGI je prekinuta.

pored toga dodata podrška za automatsko transkodiranje video zapisa na opcije s drugačijom rezolucijom i gledanje video zapisa s različitim nivoima kvaliteta (360p, 480p, 720p) i to u ovoj novoj verzijiPonovo ste omogućili novi dodatak za titlove pomoću koje možete prenositi i uređivati ​​titlove za video zapise.

Podržani su više zapisa titlova, na primjer za različite jezike. Ovu je značajku dodao Saksham Agrawal tokom Google Summer of Code 2016, a režirao Boris Bobrov. Funkcija je već neko vrijeme dostupna u glavnoj grani, ali definitivno zaslužuje spomen za ovu verziju (AJAX tehnologija se koristi za interaktivno dodavanje komentara).

O MediaGoblinu

Za one koji nisu upoznati s MediaGoblin-om (poznat i kao GNU MediaGoblin) trebali biste znati da ovo je platforma dizajnirana za organizaciju hostinga i razmjene multimedijskih sadržaja, uključujući fotografije, videozapise, zvučne datoteke, video zapise, XNUMXD modele i PDF dokumente.

Platforma sposoban je podržati širok spektar sadržaja, Uključena je podrška za običan tekst, slike (PNG i JPEG). HTML5 se intenzivno koristi za reprodukciju video i audio sadržaja u WebM formatu; dok se FLAC, WAV i MP3 zvučni formati automatski transkodiraju u Vorbis i zatim se inkapsuliraju u WebM datoteke.

Za razliku od centraliziranih usluga poput Flikrra i Picasa, platforma MediaGoblin ima za cilj organiziranje dijeljenja sadržaja bez pozivanja na određenu uslugu, koristeći model sličan StatusNetu i pump.io, i pružajući priliku za rast servera u vlastitim prostorijama.

MediaGoblin je dio GNU-a i njegov kôd je objavljen pod uslovima GNU Affero General Public License; što znači da se pridržava principa slobodnog softvera i softvera otvorenog koda.

Ostatak prava na ono što se ne može smatrati softverom (npr. Dizajn, logotip) pušta se u javno vlasništvo.

Kako instalirati MediaGoblin i derivate na Ubuntu?

Oni koji su zainteresirani za mogućnost instaliranja ove platforme na svoj sistem, mogu to učiniti slijedeći upute koje dijelimo u nastavku.

Prije nastavka instalacije iVažno je napomenuti da je ova platforma napravljena za rad sa serverom, ali se savršeno može koristiti pod desktop sistemom. Jedino što se mora uzeti u obzir je da se moraju instalirati potrebne aplikacije za pokretanje web usluga na računaru, dok za one koji su u izdanju servera može se preskočiti nekoliko koraka.

Prvo što moramo učiniti je instalirati potrebne usluge, koji se u ovom slučaju možemo osloniti na Lamppa (možete provjeriti sljedeći članak gdje objašnjavamo kako to učiniti).

o instaliranju LAMP-a na Ubuntu 20.04
Vezani članak:
LAMP, instalirajte Apache, MariaDB i PHP na Ubuntu 20.04

Gotovo sada moramo instalirati Ngix (budući da MediGoblin to zahtijeva) a takođe i razne zavisnosti:

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

Sada konfigurirat ćemo bazu podataka u PostgreSQL, gdje su baza podataka i korisnik mediagoblin:

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

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

Stvaramo korisnika i dajemo mu privilegije o multimedijalnim datotekama:

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

Mi kreiramo direktorijume koji će sadržavati multimedijske datoteke:

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

Instaliramo platformu:

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

Učinio ovo sada samo tMorat ćemo urediti datoteku mediagoblin.ini u koju ćemo smjestiti sljedeće:

  • email_sender_address: adresa e-pošte koja će se koristiti kao pošiljatelj za sistem
  • U direct_remote_path, base_d i base_url, mogu se uređivati ​​kako bi se promijenio prefiks URL-a.
  • [mediagoblin]: ovdje ćemo dodati vezu na bazu podataka (to je kako slijedi ako se poštuje ime baze podataka koju smo kreirali s prethodnim naredbama „sql_engine = postgresql: /// mediagoblin“)

Nakon uređivanja i spremanja promjena ažurirat ćemo ih sa:

./bin/gmg dbupdate

Konačno kreirajmo administratorski račun gdje korisničko ime zamjenjujemo korisničkim imenom koje želimo, a you@example.com e-poštom na koju će račun biti povezan:

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

./bin/gmg makeadmin you

Da biste pokrenuli uslugu, samo pokrenite:

./lazyserver.sh –server-name=broadcast

A mi se povezujemo iz web preglednika na url localhost: 6543 ili koristeći vašu internu ili IP adresu servera ili ime domene za port "6543".

Ako želite znati više o tome, možete provjeriti detalje Na sledećem linku.


Ostavite komentar

Vaša e-mail adresa neće biti objavljena. Obavezna polja su označena sa *

*

*

  1. Za podatke odgovoran: Miguel Ángel Gatón
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obavezi.
  5. Pohrana podataka: Baza podataka koju hostuje Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.