45 bideokasete digitalizatzeko nire zortzi urteko bilaketa. 2. zatia

Lehen zatiak familiaren bideo zaharrak digitalizatzeko eta eszena bereizietan zatitzeko bilaketa zaila deskribatzen du.. Klip guztiak prozesatu ondoren, haien ikustaldia sarean antolatu nahi nuen YouTuben bezain eroso. Familiako oroitzapen pertsonalak direnez, ezin dira YouTube-n bertan argitaratu. Ostalaritza pribatuagoa behar dugu, erosoa eta segurua dena.

3. urratsa: Argitalpena

ClipBucket, kode irekiko YouTube klon bat, zure zerbitzarian instalatu daitekeena

Lehenengo gauza saiatu nintzen ClipBucket, zure zerbitzarian instalatu dezakezun kode irekiko YouTube klon deitzen duena.

45 bideokasete digitalizatzeko nire zortzi urteko bilaketa. 2. zatia

Harrigarria bada ere, ClipBucket-ek ez du instalazio-argibiderik. Eskerrak kanpoko kudeaketari я instalazio-prozesua automatizatu du laguntzarekin Ansible, zerbitzariaren konfigurazioa kudeatzeko tresna.

Zailtasunaren zati bat ClipBucket-en instalazio-scriptak guztiz hautsi zirela izan zen. Garai hartan nik Googlen lan egin zuen eta kontratuaren baldintzen arabera ez nuen kode irekiko YouTube klonean ekarpenik egiteko eskubiderik, baina nik akatsen txostena argitaratu du, eta bertatik erraz egin zitezkeen beharrezko zuzenketak. Hilabeteak pasa ziren, eta oraindik ez zuten ulertzen zein zen arazoa. Horren ordez dena gehitu zuten baino gehiago akatsak bertsio guztietan.

ClipBucket-ek aholkularitza-eredu batean funtzionatzen zuen: beren kodea doan kaleratu zuten eta hedapen-laguntzagatik kobratu zuten. Apurka-apurka konturatu nintzen ordainpeko laguntzarekin dirua irabazten duen enpresa batek ziurrenik ez duela oso interesatzen bezeroek produktua beraiek instalatzea.

MediaGoblin, alternatiba modernoagoa

ClipBucket-ekin hilabete batzuk frustratu ondoren, eskuragarri dauden aukerak aztertu eta aurkitu nituen MediaGoblin.

45 bideokasete digitalizatzeko nire zortzi urteko bilaketa. 2. zatia
MediaGoblin lineaz kanpoko komunikabideak partekatzeko plataforma bat da

MediaGoblin-ek ontasun asko ditu. ClipBucket PHP desatseginetan ez bezala, MediaGoblin Python-en idatzita dago, kodeketa esperientzia handia dudan hizkuntza batean. Jan komando-lerroko interfazea, bideoen deskarga erraz automatizatzeko aukera ematen duena. Garrantzitsuena, MediaGoblin dator Docker irudia, instalazio-arazoak ezabatzen dituena.

Docker aplikazio bat edonon exekutatzeko ingurune autonomoa sortzen duen teknologia da. Docker erabiltzen dut bere proiektu asko.

MediaGoblin berriro dockerizatzeko zailtasun harrigarria

Suposatu nuen MediaGoblin docker irudia zabaltzea lan hutsala izango zela. Beno, hori ez zen horrela oso ondo atera.

Amaitutako irudiak ez zituen beharrezko bi funtzio:

  • autentifikazio
    • MediaGoblin-ek komunikabideen atari publiko bat sortzen du lehenespenez, eta kanpokoei sarbidea mugatzeko modu bat behar nuen.
  • Transkodetzea
    • Bideo bat deskargatzen duzun bakoitzean, MediaGoblin-ek transkodetzen saiatzen da streaming optimorako. Hasieran bideoa erreproduzitzeko prest badago, transkodetzeak kalitatea hondatzen du.
    • MediaGoblin-ek eskaintzen du konfigurazio aukeren bidez transkodetzea desgaituz, baina hori ezin da egin lehendik dagoen Docker irudi batean.

Beno, arazorik ez. Docker irudia dator kode irekia, beraz, posible da zuk zeuk berreraiki ezazu.

Zoritxarrez, Docker-en irudia ez da oraingotik eraikitzen. MediaGoblin biltegia. Azken eraikuntza arrakastatsuaren bertsioarekin sinkronizatzen saiatu nintzen, baina horrek ere huts egin zuen. Nahiz eta kode bera erabili nuen, MediaGoblinen kanpoko menpekotasunak aldatu egin ziren, eraikuntza hautsiz. Dozenaka ordu igaro ondoren, 10-15 minutuko MediaGoblin eraikitze-prozesua behin eta berriz exekutatu nuen, azkenean funtzionatu zuen arte.

Hilabete batzuk geroago gauza bera gertatu zen. Guztira, MediaGoblin mendekotasun kateak hainbat aldiz hautsi du nire eraikuntza azken bi urteetan, eta azken aldia artikulu hau idazten ari nintzela gertatu zen. Azkenean argitaratu nuen MediaGoblinen sardexka propioa c gogor kodetutako mendekotasunak eta esplizituki zehaztutako liburutegien bertsioak. Beste era batera esanda, MediaGoblin edozein bertsiorekin lan egiten duen zalantzazko aldarrikapenaren ordez apioa >= 3.0, bertsio menpekotasun zehatz bat instalatu dut apioa 4.2.1bertsio honekin MediaGoblin probatu nuelako. Produktuak behar duela dirudi erreproduzigarria eraikitzeko mekanismoa, baina oraindik ez dut egin.

Dena den, ordu askoko borrokaren ostean, azkenean MediaGoblin Docker irudi batean eraiki eta konfiguratu ahal izan nuen. Han jada erraza zen saltatu alferrikako transkodeketa ΠΈ instalatu Nginx autentifikaziorako.

4. urratsa. Hosting

MediaGoblin Docker nire ordenagailu lokalean exekutatzen ari zenez, hurrengo urratsa hodeiko zerbitzari batean zabaltzea izan zen, familiak bideoa ikusi ahal izateko.

MediaGoblin eta bideoak biltegiratzeko arazoa

Docker irudi bat hartu eta URL publiko batean ostatatzen duten plataforma asko daude. Arazoa da aplikazioaz gain, 33 GB bideo fitxategi argitaratu behar zirela. Posible zen Docker irudi batean gogor kodetzea, baina hori astuna eta itsusia litzateke. Konfigurazio-lerro bat aldatzeak 33 GB datu berriro zabaldu beharko lituzke.

ClipBucket erabili nuenean arazoa konpondu nuen gcsfuse - Sistema eragileari direktorioak Google Cloud hodeiko biltegiratze fitxategi-sistemarako bide arrunt gisa kargatzeko aukera ematen dion erabilgarritasuna. Bideo-fitxategiak Google Cloud-en ostatatu nituen eta gcsfuse erabili nuen ClipBucket-en fitxategi lokal gisa agertzeko.

Aldea izan zen ClipBucket benetako makina birtual batean exekutatzen zela, eta MediaGoblin Docker edukiontzi batean exekutatzen zela. Hemen, hodeiko biltegiratzetik fitxategiak muntatzea askoz zailagoa izan zen. Dozenaka ordu eman nituen arazo guztiak konpontzen eta horri buruz idatzi nuen blogeko argitalpen osoa.

45 bideokasete digitalizatzeko nire zortzi urteko bilaketa. 2. zatia
MediaGoblin-en hasierako integrazioa Google Cloud biltegiratzearekin, horretaz ari naiz 2018an kontatua

Osagai guztiak doitzen hainbat aste igaro ondoren, dena funtzionatu zuen. MediaGoblin-en kodean inolako aldaketarik egin gabe, iruzurra egin nuen multimedia fitxategiak irakurtzeko eta idazteko Google hodeiko biltegian.

Arazo bakarra zen MediaGoblin lizuna motela bihurtu zela. 20 segundo bete behar izan ditu bideoen miniaturak hasierako orrialdean kargatzeko. Bideo bat ikusten ari zaren bitartean aurrera egiten baduzu, MediaGoblin-ek 10 segundo amaigabe pausatu egingo luke erreprodukzioa berriro hasi aurretik.

Arazo nagusia zen bideoek eta irudiek ibilbide luze eta biribila egiten zutela erabiltzaileari. Google hodeiko biltegiratzetik gcsfuse bidez MediaGoblin, Nginx-era joan behar izan zuten, eta orduan bakarrik iritsi ziren erabiltzailearen arakatzailera. Botil-lepo nagusia gcsfuse zen, abiadurarako optimizatuta ez dagoena. Garatzaileek zerbitzuaren funtzionamenduaren atzerapen handiei buruz ohartarazten dute proiektuaren orrialde nagusian:

45 bideokasete digitalizatzeko nire zortzi urteko bilaketa. 2. zatia
abisuak errendimendu baxuari buruz gcsfuse dokumentazioan

Egokiena, arakatzaileak fitxategiak zuzenean eskuratu behar ditu Google Cloud-etik, tarteko geruzak saihestuz. Nola egin dezakezu hori MediaGoblin kode-basean murgildu gabe edo Google Cloud integrazio-logika konplexua gehitu gabe?

Sub_filter trikimailua nginx-en

Zorionez irtenbide sinple bat aurkitu dut, baina apur bat itsusia. Nginx-en default.conf konfigurazioa gehitu dut halako iragazkia:

sub_filter "/mgoblin_media/media_entries/" "https://storage.googleapis.com/MY-GCS-BUCKET/media_entries/";
sub_filter_once off;

Nire konfigurazioan, Nginx-ek MediaGoblin eta azken erabiltzailearen arteko proxy gisa jardun zuen. Goiko zuzentarauak Nginx-i agintzen dio MediaGoblin HTML erantzun guztiak bilatu eta ordezkatzeko azken erabiltzaileari zerbitzatu aurretik. Nginx-ek MediaGoblin multimedia fitxategietarako bide erlatibo guztiak Google hodeiko biltegiratze URLekin ordezkatzen ditu.

Adibidez, MediaGoblin-ek honela sortzen du HTML:

<video width="720" height="480" controls autoplay>
  <source
    src="/mgoblin_media/media_entries/16/Michael-riding-a-bike.mp4"
    type="video/mp4">
</video>

Nginx-ek erantzuna aldatzen du:

<video width="720" height="480" controls autoplay>
  <source
    src="https://storage.googleapis.com/MY-GCS-BUCKET/media_entries/16/Michael-riding-a-bike.mp4"
    type="video/mp4">
</video>

Orain dena espero bezala funtzionatzen ari da:

45 bideokasete digitalizatzeko nire zortzi urteko bilaketa. 2. zatia
Nginx-ek MediaGoblin-en erantzunak berridazten ditu, bezeroek multimedia fitxategiak zuzenean Google hodeiko biltegiratzetik eska ditzaten

Nire irtenbidearen zatirik onena da ez duela inolako aldaketarik behar MediaGoblin kodean. Nginx-en bi lerroko zuzentarauak ezin hobeto integratzen ditu MediaGoblin eta Google Cloud, nahiz eta zerbitzuek elkarri buruz ezer ez dakiten.

Kontuan izan: Irtenbide honek Google hodeiko biltegiratzeko fitxategiak denek irakurtzea eskatzen du. Baimenik gabeko sarbidea izateko arriskua murrizteko, ausazko kubo izen luze bat erabiltzen dut (adibidez. mediagoblin-39dpduhfz1wstbprmyk5ak29) eta egiaztatu ontziaren sarbide-kontrolaren politikak ez diela baimenik ematen baimenik gabeko erabiltzaileei direktorioko edukiak bistaratzeko.

Azken produktua

Momentu honetan konponbide osoa eta funtzionala nuen. MediaGoblin pozik exekutatu zen bere edukiontzian Google-ren hodeiko plataforman, beraz, ez zen maiz adabaki edo eguneratu behar izan. Nire prozesuan dena automatizatu eta erreproduzigarria zen, aurreko bertsioetara aldaketa errazak edo atzera egiteko aukera emanez.

Nire familiari asko gustatu zitzaion bideoak ikustea zein erraza zen. Goian deskribatutako Nginx hack-aren laguntzaz, bideoekin lan egitea YouTuben bezain azkar bihurtu zen.

Ikusteko pantailak honela dauka:

45 bideokasete digitalizatzeko nire zortzi urteko bilaketa. 2. zatia
Familiaren bideo katalogoaren edukia "Ona" etiketaren arabera

Miniaturan klik eginez gero, honelako pantaila bat agertuko da:

45 bideokasete digitalizatzeko nire zortzi urteko bilaketa. 2. zatia
Klip bakarra ikustea multimedia zerbitzari batean

Urteetako lanaren ondoren, oso aberasgarria izan zen familiako kideei gure bideoak hasiera batean nahi nuen YouTube-ren antzeko interfaze errazean ikusteko aukera ematea.

Hobaria: murriztu kostuak hilean $ 1 baino gutxiagora

Ez dituzu maiz ikusten etxeko bideoak, hilabete gutxitan baino ez. Nire familiak 20 ordu inguruko trafikoa sortu zuen urtean, baina zerbitzaria 15/99,7 martxan zegoen. Hilero XNUMX $ ordaindu nituen denboraren % XNUMX jaitsi zen zerbitzari batengatik.

2018 amaieran, Googlek produktua kaleratu zuen Hodei Korrika. Hiltzaile funtzioak Docker edukiontziak hain azkar exekutatzen zituen aplikazioak HTTP eskaerei erantzuteko. Hau da, zerbitzaria egonean egon zitekeen moduan eta norbaitek sartu nahi zuenean bakarrik abiarazteke. Nirea bezalako gutxitan exekutatzen diren aplikazioetarako, kostua hilean $ 15etik urtean zentimo gutxira jaitsi da.

Jada gogoratzen ez ditudan arrazoiengatik, Cloud Run-ek ez zuen nire MediaGoblin irudiarekin funtzionatu. Baina Cloud Run-en etorrerarekin hori gogoratu nuen Heroku antzeko zerbitzu bat eskaintzen du doan, eta haien tresnak Googlerenak baino askoz errazagoak dira.

Doako aplikazio zerbitzari batekin, kostu bakarra datuak biltegiratzea da. Google-ren eskualdeko biltegiratze estandarrak 2,3 zentimo/GB balio du. Bideo artxiboak 33 GB hartzen ditu, beraz, hilean 77 zentimo baino ez ditut ordaintzen.

45 bideokasete digitalizatzeko nire zortzi urteko bilaketa. 2. zatia
Irtenbide honek $ 0,77 baino ez du kostatzen hilean

Aholkuak probatzeko asmoa dutenentzat

Jakina, prozesuak denbora luzea hartu ninduen. Baina artikulu honek zure etxeko bideoak digitalizatzeko eta argitaratzeko ahaleginaren %80-90 aurrezten lagunduko dizula espero dut. Aparteko atal batean aurki dezakezu urratsez urrats gida zehatza prozesu osoan zehar, baina hona hemen aholku orokor batzuk:

  • Digitalizazio eta edizio fasean, gorde ahalik eta metadatu gehien.
    • Informazio baliotsua maiz grabatzen da bideo-kasete-etiketetan.
    • Egin jarraipena zein klipa zein zintatatik eta zein ordenatan grabatu den.
    • Idatzi filmaketa data, bideoan ager daitekeena.
  • Demagun digitalizazio zerbitzu profesionalengatik ordaintzea.
    • egingo duzu oso zaila eta garestia da digitalizazioaren kalitateari dagokionez horiek parekatzea.
    • Baina urrun zaitez EverPresent izeneko enpresatik (mezu bidali xehetasunak behar badituzu).
  • Zuk zeuk digitalizazioa egiten baduzu, erosi HDD bat.
    • Konprimitu gabeko definizio estandarreko bideoak 100-200 MB hartzen ditu minutuko.
    • Nire gainean gorde nuen dena Synology DS412 + (10 TB).
  • Grabatu metadatuak aplikazio zehatz bati lotuta ez dauden formatu arrunt batean.
    • Clipen deskribapenak, denbora-kodeak, datak, etab.
    • Metadatuak aplikazioaren formatu espezifiko batean gordetzen badituzu (edo okerrago, ez gorde batere), ezingo duzu lana berregin beste irtenbide bat erabiltzea erabakitzen baduzu.
    • Editatzen duzun bitartean, metadatu erabilgarriak ikusten dituzu bideoan. Galdu egingo dituzu gordetzen ez badituzu.
      • Zer gertatzen da bideoan?
      • Nor dago erroldatuta bertan?
      • Noiz grabatu zen hau?
  • Markatu gogoko dituzun bideoak.
    • Egia esateko, etxeko bideo gehienak nahiko aspergarriak dira.
    • "Best of" etiketa aplikatzen dut nire gogoko klipak eta irekitzen ditut bideo dibertigarriak ikusi nahi ditudanean.
  • Antolatu irtenbide integral bat ahalik eta goizen, prozesua hasieratik amaierara zuzen joan dadin.
    • Lehenengo zinta guztiak digitalizatzen saiatu nintzen, gero zinta guztiak editatzen, etab.
    • Nahiago nuke zinta batekin hasi eta harekin lan guztia egin izana. Orduan ulertuko nuke zein erabaki eta zein fasetan eragiten duten azken emaitzan.
  • Jarrai birkodetzea ahalik eta gutxien.
    • Klip bat editatzen edo birkodetzen duzun bakoitzean, haren kalitatea murrizten duzu.
    • Digitalizatu zure metraje gordinak kalitate handienarekin, eta, ondoren, transkodetu klip bakoitza zehatz-mehatz behin arakatzaileek berez errendatzen duten formatuan.
  • Erabili ahalik eta irtenbiderik errazena bideoklipak argitaratzeko.
    • Atzera begira, MediaGoblin tresna konplexuegia dirudi bideo-fitxategi estatiko batekin web-orriak sortzeko agertoki nahiko sinplerako.
    • Berriro hasiko banintz, bezalako gune-sorgailu estatiko bat erabiliko nuke Hugo, Jekyll edo Gridsome.
  • Instalazioa egin.
    • Bideo edizioa hainbat bideotako une onenak konbinatzeko modu dibertigarria da.
    • Edizioan gauza nagusia musika da. Adibidez, gaia harrigarria da Elur motela The National-en, hau da nire aurkikuntza pertsonala.

Iturria: www.habr.com