Felíratok filmekhez gyorsan

Linux kezdő

A karanténos időben sok filmet, sorozatot nézünk, ha már nincs jobb dolgunk. Nagyon sok jó, és érdekes sorozat van, de egyesek csak eredeti nyelven. Ami elég kellemetlen, mert sokunk nem beszél az film eredeti nyelvén. Itt kerül képbe a felíratok kérdése. Lelkes emberek lefordítják, és felírat fájl, jellemzően srt fájl formában közreadják. Az egyik ilyen nagyon jó honlap, ahol sok fordítás van az opensubtitle.org. A felíratok beszerzésre több megoldás van, több videólejátszó program támogatja a felíratok keresését, a letöltést. Ez kényelmes, de egy hibája van: csak az lejátszás alatt lévő filmhez keres, és nincs olyan lehetőség, hogy egy sorozat összes részéhez szedje le a feliratot. Ha sok ilyen feliratozásra szoruló filmet nézel, akkor érdemes a OpenSubtitlesDownload.py  kis programocskára ránézni. Ez python nyelven írt eszköz, és nagyon jól beállítható. Ha CLI, azaz parancssoros megoldást kedveled ez jól fog működni nálad. Gnome alatt a zenity, KDE alatt a kdialog elvárt függőség, így ezeket nézd meg, ha GUI módot is szeretnéd használni. Igen, van arra mód, hogy megadd cli, zenity, vagy kdialog használatát. Elvileg, ha KDE vagy Gnome-t használsz ezt automatikusan észleli, de én openbox alatt használom, így explicit kell megadnom neki. Már ha kell a grafikus felület…

A telepítése egyszerű, egy fájl, amit

wget https://raw.githubusercontent.com/emericg/OpenSubtitlesDownload/master/OpenSubtitlesDownload.py

kaphatunk meg.

Én a ȟome könyvtárba, a bin-be raktam, ez benne van a PATH-ban, így mindenhol elérhető. Kapott egy futtatási jogot, és átneveztem osd.py-re. Így nem kell az egész OpenSubtitlesDownload.py nevet begépelni.
Pár paraméterrel érdemes megismerkedni. Én azt javaslom, hogy egy teszt könyvtárba másolj egy akármilyen filmet, amihez biztosan van felírat, és így teszteljük végig a lehetőségeket. Ne csak olvass, nem mese ez, hogy olvasd! Minden lépést kövess, próbálj ki!

A szokásos megoldású a szintaktika: osd.py kapcsolók film.

Én jellemzően magyar nyelvű feliratot szeretek leszedni, ami nem meglepő, és így a

osd.py -l hun *.mkv

megoldással szedettem le a feliratot. Itt azért használok *.mkv -t mert ez minden, jelen esetben annak az egy filmnek a feliratára fog működni, ami a könyvtárban van. Ha több film is van, és csak egyikhez kell, akkor nyilván a teljes nevét meg kell adni. Az is működik, hogy *.*, mert értelmes, nem akad ki, ha olyan fájl is van a sorban, ami nem videó fájl. Ez a régebbi verziókban gond volt, de már elmúlt…
Ha nem adsz meg nyelvet, akkor angolt szedi le. Több nyelvet is megadhatsz egyszerre! De a formátuma -l eng -l hun és nem -l eng hun! Minden nyel elé kell az -l!

Ha minden jól meg, akkor leszedte a feliratot, és át is nevezte a megfelelő fájl névre. Szuper. Ha automatikusan fel tudta ismerni, hogy KDE, vagy GNOME a környezet, akkor még egy grafikus választó ablakot is adott. Ha nem, és neked kell az ablak, akkor a

osd.py -l hun --gui gnome *.mkv

a megoldás, ha zenity-vel akarod látni az ablakot, ha pedig kdialog-gal, akkor –gui kde a jó paraméter.
Ha automatikusan felismerte a KDE/GNOME lehetőséget és mégsem kell az ablak, akkor – -cli és nem lesz grafikus felületed.

A keresési módot: hash, fájlnév, hash majd fájlnév, hash és fájlnév az -s kapcsolóval adod meg. Ha nem tudod mi ez, akkor hagyd alapértelmezetten, és csak akkor állítsd át, ha nincs találat.

Bár még pár beállítási lehetősége is van, de ez a kettő a legfontosabb.

Bár a használata egyszerű, érdemes lenne magában a osd.py-ben tároltatni az alapértelmezett nyelvet, nálam a magyart. Esetleg az elvárt GUI-t, és bármit, amit akarunk. Erre is van mód, és az oldalukon teljes körű leírást találsz!

Én itt a saját beállításaimat mutatom meg, ha több kellene, akkor az oldalon megtalálod. Nyisd meg a osd.py fájlt egy szerkesztővel. A beállítás egyszerű, hiszen látható, hogy jól kommentelt az eleje.

opt_languages = ['hun']

Magyar lesz az alapértelmezetten letöltendő felírat nyelve.

opt_language_suffix = 'on'
opt_language_separator = '_'

A felírat letöltése után átnevezi a feliratot a film nevére, és MINDENKÉPP mögé teszi egy _ után a nyelv kódját. Ha auto, azaz alapértelmezetten hagyod, akkor csak abban az esetben kap egy _hu véget a fájlnév, ha van másik felírat is. Én szeretem, ha minden felírat mögött ott van a nyelvi kód.

opt_gui = 'cli'

Alapértelmezetten cli módban jelenjen meg, mert én abban használom. Bár nálam (openbox) auto módban is ezt választaná, de ha már állítani lehet, akkor beállítom. A következő

opt_gui_width = 850
opt_gui_height = 320

adja meg a GUI méretet, ha nem felel meg, ezt át érdemes állítani. Én szélesebbre vettem, mert ha így nem tördeli a sorokat. Időnként futtatom GUI módban is, így már előre megadtam a méretet.

A többi alapon maradt.

OK, már beállítottuk, és hogyan lehet használni?

Alapesetet már ismerjük. Megadjuk a

osd.py *.mkv vagy a
osd.py filmcime.kit

parancsot, már egyéb kapcsolók nélkül az adott könyvtárban és leszedi a feliratokat. Azaz sima parancsként kezeljük.

A másik megoldás, ami már nem lehet idegen, ha a fájlkezelőbe egy saját commandot hozunk létre, amihez rendelünk egy gyorsbillentyűt. Így pld. a SpaceFM-ben ilyent használok

/home/laci/bin/osd.py %N

Azaz az összes kijelölthöz töltse le. Én a terminálban való futtatást választottam, hogy ha több feliratot talál ugyanahhoz a filmhez, akkor választani tudjak. A saját fájlkezelődet te ismered, de a legtöbb fejlettebbnél nem okoz gondot az ilyen kiterjesztése a lehetőségeknek.

Egyszerű? Igen. Így nem vagy ahhoz kötve, hogy a lejátszó program tud, vagy nem feliratokat letölteni. Illetve tömegesen is tudod kezelni a feliratokat.

2020. májusában teszteltem.

Related Posts