Főoldal | Osztályhierarchia | Osztálylista | Fájllista | Osztálytagok | Fájlelemek | Kapcsolódó lapok

SubTimer felhasználói dokumentáció

Mi is a SubTimer?

Mi az a feliratfájl?

Az internetes videótékák és általában a digitális formátumú filmek illetve videók elterjedésével hirtelen megjelent az igény az internetről letölthető feliratokra. Ezek olyan fájlok, amelyek egy-egy film adott nyelvű fordítását tartalmazzák, és amelyet a videólejátszó egy alkalmas szűrő segítségével be tud tölteni. Ilyen szűrő pl. a világszerte használt VobSub vagy a DivXG400.

Az internetes videótékák - főként a nem angol nyelvűek - előszeretettel használják ezeket, hogy filmjeiket elérhetővé tegyék egy tágabb közönség számára, különösen igaz ez például a nyelvileg nem igazán egységes Kínára. Ezeken kívül még számos szerver létezik, ahonnan különböző nyelvű, legtöbbször rajongók által készített feliratokat le lehet tölteni, de ezek legalitása sokszor megkérdőjelezhető.

Feliratfájlokat használnak filmek feliratozásakor is, ilyenkor egy adott feliratfájlt "ráégetnek" a képre és így készítenek a filmből egy új videófájlt. Erre alkalmas program Windows alatt pl. a VirtualDub, Linux alatt az Avidemux.

Egy feliratfájl eseményeket tartalmaz, az eseményeknek gyakran van valamilyen azonosítójuk. Egy eseményhez mindig tartozik két időpont: egy kezdő- és egy végpont. Az adott esemény a kezdőpont pillanatában jelenik meg a képernyőn (helye, színe stb. az attribútumain kívül a videólejátszó által használt szűrő beállításaitól is függ), és a végpont pillanatában tűnik el. A felirat készítésekor a fájlban való könnyebb tájékozódás kedvéért a párbeszédekhez gyakran egy nevet is rendelnek, hogy lehessen látni, mit éppen ki mond. A felirat tartalmazhat még ezeken kívül az égetésre vonatkozó speciális effekteket, mint pl. pörgő betűk, elhalványulás, betűtípus vagy pozícióváltás, de bizonyos esetekben még akár képeket vagy kis videókat is bele lehet ágyazni egy feliratba.

Az utóbbi időben legelterjedtebb SubRip (*.srt) formátumú feliratfájlok az egyes eseményekhez csak az azonosítót, kezdő- és végpontot, valamint a szöveget tárolják, esetleg HTML utasításokkal megtűzdelve.

A SubTimer UTF-8 kódolást használ, így akár japán vagy kínai feliratokat is be lehet tölteni. Azonban a legtöbb felirat az adott nyelv saját kódolásában (pl. japán esetén Shift-JIS vagy EUC-JP, kínai esetén GB2312 vagy Big5) íródik és vannak videószűrők, amik ezt is várják el. Ilyen esetekben a SubTimer használata előtt és után konvertálni kell a feliratot.

Mit csinál a SubTimer?

A SubTimer segítséget ad feliratok időzítéséhez, azaz megkönnyíti a felirat egyes eseményeihez tartozó kezdő- és végpontok beállítását. Tartalmaz ezenkívül még néhány kényelmi funkciót, mint sorok kettéválasztása vagy összefűzése, amik időzítéskor tipikusan előforduló problémákra adnak megoldást.

Lényegében két esetben hasznos egy ilyen program: saját felirat készítésekor és egy rosszul időzített felirat kijavításakor. Elsőre talán úgy tűnhet, hogy az átlagembernek akkor erre nincsen szüksége, de - sajnos - nem így áll a helyzet. A letöltött feliratok ugyanis gyakran a filmnek egy másik verziójához készültek, így könnyen előfordulhat, hogy a hang és a szöveg elcsúszik egymáshoz képest. Jól jön ilyenkor egy eszköz, amivel egy pár másodperc alatt arrébb lehet tolni az összes kezdő- és végpontot. Szintén gyakori az is, hogy a felirat egy 2 cd-s változathoz készült, míg a videófájl egy darabból áll, vagy éppen fordítva. A SubTimer erre is megoldást ad.

Elsősorban azonban mégis saját felirat készítésére való. Aki már próbált segédprogram nélkül feliratot időzíteni, tudja, hogy milyen fáradságos. Amikor valaki megszólal, le kell állítani a lejátszást, meg kell nézni, hány másodpercnél tart, azt le kell írni, tovább kell indítani a lejátszást, amikor befejezi a mondatot, megint le kell állítani stb. Ez nem csak hogy lassú, de sokkal pontatlanabb is, mint a SubTimer által ajánlott módszer. Ennek az a lényege, hogy a hang hullámát nézve könnyen és gyorsan lehet pontosan beállítani a kezdő- és végpontokat. Saját tapasztalatom szerint egy gyakorlott felhasználó a tényleges hossz másfélszerese alatt képes időzíteni egy feliratot.

Honnan jött ez az ötlet?

Maga az ötlet nem eredeti, egy Windows alá készült SubStation Alpha nevű programból származik. Ez szintén ingyenes szoftver, de sajnos abbahagyták a fejlesztését. Mivel időnként fordítok japánról angolra vagy magyarra rajzfilmeket, sokat használtam és nagyon megszerettem. Mikor áttértem Linuxra, láttam, hogy ott még nincsen ilyen jellegű program, ezért írtam hát egyet.

A SubTimer telepítése

Minimális követelmények és beállítások

A következők szükségesek a SubTimer fordításához és futtatásához: Ha a Qt a szokásos módon lett konfigurálva, akkor beállításra egyáltalán nincsen szükség. Érdemes azért ellenőrizni, hogy az src/subtimer.pro fájl elején látható könyvtárak megfelelnek-e a tényleges elérési utaknak (tehát hogy a libvorbisfile és libasound könyvtárak a /usr/lib könyvtárban találhatóak-e), és ha nem, azokat át kell írni. Szintén itt lehet beállítani a lejátszás közbeni pozíciót jelölő fehér vonal megmutatását, de ez nem ajánlott, mivel még nem működik tökéletesen.

Fordítás

A főkönyvtárban a make parancs kiadásával megkapjuk a lehetséges fordítási opciókat:

Telepítés

A program telepítéséhez root jogok kellenek, ezek hiányában a legegyszerűbb, ha a bin könyvtár tartalmát és a trans könyvtárban található qm fájlokat valamilyen mindenhonnan elérhető könyvtárba helyezzük, a program futásához más fájl nem szükséges.

A make install utasítás a programfájlokat a /usr/local/bin, a fordításokat a /usr/local/share/subtimer, a dokumentációt a /usr/local/doc/subtimer, a program ikonját pedig a /usr/local/share/pixmaps könyvtárba másolja.

A make uninstall utasítás ugyanezekről a helyekről eltávolítja a fájlokat.

Mivel Linux alatt még nem alakult ki egységes, automatikus rendszer az ikonok programhoz rendelésére, ezt egyelőre csak manuálisan lehet megtenni.

A SubTimer használata

A SubTimer elindítása

Amennyiben feliratok idejének eltolásánál bonyolultabb feladatot szeretnénk elvégezni a SubTimer segítségével, egy kis előkészület szükséges. A videófájlról le kell választani a hangsávot és ezt egy külön fájlba el kell menteni. Ezt megtehetjük például az Avidemux programmal. A videófájlok túlnyomó része a hangot Mpeg Layer 3 vagy Ogg Vorbis formátumban tárolja. A SubTimer egyelőre csak ez utóbbit támogatja - ennek egyik oka az, hogy az MP3 könyvtár használatért jogdíjat kellene fizetni, másik oka pedig, hogy úgy érzem, támogatni kell a nyitott forrású projekteket. Ráadásul a statisztikák szerint - noha az MP3 sokkal elterjedtebb -, az Ogg formátum méret/minőség aránya jobb vetélytársánál.

A felhasználó helyzetét megkönnyítendő, a SubTimer csomagban található egy mp32ogg nevű program, aminek segítségével MP3 formátumú fájlokat könnyen átalakíthatunk Ogg fájlokká. Az mp32ogg Tcl/Tk nyelven íródott, és használatához a Tcl/Tk könyvtárakon kívül szükség van még a LAME és az OggEnc programokra, amik a tényleges konverziót elvégzik. Az mp32ogg-ot terminálból indítsuk, az mp32ogg utasítással. Elindításakor a következő ablak jelenik meg:

doc-mp32ogg.png

Az mp32ogg segédprogram

Az MP3 mezőbe a konvertálandó MP3 fájl, az Ogg mezőbe a kimeneti fájl (teljes elérési úttal megadott) nevét kell írni, mindkét fájl kiválasztható a mezők melletti Browse gomb megnyomásával. Ha a Downsample to mono be van kapcsolva, a kimeneti fájlban csak egy hangsáv lesz. Ez az alapértelmezés, mivel a SubTimer mindenképpen csak egy hangsávot tölt be. A Quality egy számszerű meghatározása a minőségnek: jobb minőségű konverzió nagyobb fájlt eredményez és hosszabb átalakítási időt igényel; 4-5 körüli érték általában egy jó kompromisszum. A Sampling rate átállításával a fájlméretet akár meg is negyedelhetjük, ugyanakkor tartsuk észben, hogy ilyenkor a minőség is ennek megfelelően romlik. Az Mp3 -> Ogg gomb megnyomásakor a program kilép és kiírja azt az utasítást, amivel az adott konverzió végrehajtható. Ezt még tetszés szerint kiegészíthetjük a lame és az oggenc további paramétereivel, mielőtt végül kiadjuk a terminálban.

A SubTimer magyar, angol és japán nyelven is használható. Alapértelmezésben a környezetnek megfelelő nyelven, illetve annak hiányában angolul fut, de a LANG környezeti változóval ezt felülbírálhatjuk. Tehát vagy egyszerűen egy subtimer & parancsot adunk ki, vagy például, hogy a környezettől függetlenül magyar nyelvű kezelőfelületet kapjunk, a következőt:

export LANG=hu_HU.utf8 subtimer &
Ha nem akarjuk tartósan beállítani a környezeti változót, elindíthatjuk az env parancs segítségével:
env LANG=hu_HU.utf8 subtimer &

Mi micsoda?

A SubTimer minden widgete, ha az egeret kis ideig felette tartjuk, pár szavas segítséget jelenít meg. A menüelemeknél ez az alsó státuszsoron látható. Részletesebb leírást a Súgó menü Mi ez? pontja segítségével kaphatunk róluk. Lássunk egy gyors áttekintést:

doc-subtimer-hu.png

A SubTimer működés közben

A menük

Fájl menü

Itt találhatóak a megszokott (felirat)fájlokkal kapcsolatos utasítások és a kilépés.

Szerkesztés menü

A táblázat elemeinek változtatására szolgáló parancsok kerültek ebbe a menübe.

Beállítások menü

Ezek a beállítások a Rögzítés gomb viselkedésével kapcsolatosak. Időre való információkat egyáltalán nem tartalmazó feliratfájl esetén érdemes mindkettőt bekapcsolni, míg már időzített fájlok esetén érdemes legalább a másodikat kikapcsolni. Az Idő tippelése rögzítés után ugyanis nagyon hasznos, de veszélyes lehet: egy jól időzített feliratban elég kétszer egymás után Rögzítést nyomni, és máris elrontottunk egy sort a fájlban.

Súgó menü

Ez a menü tartalmazza a SubTimer használatával kapcsolatos információkat. Egyelőre közvetlen súgó még nincsen beépítve, talán majd egy későbbi verzióban.

Felirat időzítése lépésről lépésre

0. A felirat megírása

Még mielőtt elkezdhetnénk időzíteni, először természetesen meg kell írni a feliratot. Ehhez általában elegendő egy videólejátszó program és egy szövegszerkesztő, pl. az Emacs, de akár az ed is megteszi. A filmet nézve, minden mondat után a lejátszást felfüggesztjük és a megfelelő feliratot beírjuk a fájlba. Szokás leírni a filmben beszélő karakter nevét is, ezt ilyenkor ':'-al választjuk el a szövegtől (vigyázzunk, hogy ha a szövegen belül akarunk ':'-ot írni, akkor mindenképpen írjunk a sor elejére is egyet, egyéb esetekben elhagyható). Név helyett szokás még a fordításra vagy a megjelenítésre vonatkozó megjegyzéseket is írni ide, mint pl.:
Nem jó: <Itt nem értem, mit mondanak...> Karaoke: Ai shiau futari itsu no toki mo...
Sortörést nem muszáj explicit kiírni, mert a feliratot videóra helyező szűrők betördelik a szöveget, de ha mégis szükség van rá, akkor a sortörés helyett írjunk mindig "\N"-et. Ez főleg akkor hasznos, ha egyszerre többen beszélnek, pl.:
Náci tiszt: Dr. Jones! Indy & apuka: - Igen?\N- Tessék?
A második sor eredménye a videó lejátszásakor ilyen lesz:
- Igen? - Tessék?
Ügyeljünk arra, hogy a soraink ne legyenek se túl hosszúak, se túl rövidek. Túl hosszú sorokban a néző elveszik, a túl rövid sorok túl gyorsan váltakoznak, nincsen elég idő elolvasni őket. Ne használjunk körmondatokat, még ha az pontosabb is lenne, és az egyes sorok magukban is legyenek értelmesek. Találjuk meg a könnyű olvashatóság és a pontosság jó arányát. Végül a fájlt valami.txt néven mentsük el. Ha a felirat tartalmaz ISO-8859-1-es kódlapon kívüli karaktereket, akkor UTF-8 kódolásban mentsük el. Emacs -ban a kódolást a C-x RET f billentyűkombinációval változtathatjuk meg.

1. A hangfájl előkészítése

A videófájlból ki kell valahogyan nyernünk a hangsávot, erre különböző eszközök léteznek, ezek egyike pl. az Avidemux. Ha a videó nem Ogm formátumú volt, akkor a hang nagy valószínűséggel MP3 formátumú, ezt még át kell alakítani Ogg fájllá, ld. A SubTimer elindítása

2. Felkészülés az időzítésre

Most már elindíthatjuk a SubTimert. Válasszuk ki a Fájl menü Megnyitás... pontját és állítsuk a fájltípust szövegfájlra. Töltsük be a már kész feliratot és ellenőrizzük, hogy úgy néz-e ki, mint azt elvártuk. Ha valahol hibáztunk, javítsuk ki. Nyomjuk meg a Hullám megnyitása... gombot és válasszuk ki a videófájlból kinyert Ogg fájlt. A hang ekkor megjelenik a fekete sávban; az Y-nagyítás változtatásával állítsuk be úgy, hogy jól láthatóak legyenek a hullám változásai.

Kapcsoljuk be a Beállítások menüben az Idő tippelése rögzítés után kapcsolót és ezzel már készen is állunk az időzítésre.

3. Az időzítés

Keressük meg az első sornak megfelelő részt a hullámban. Ezt legkönnyebben úgy tehetjük meg, hogy egyet klikkelünk bal egérgombbal az aktuális végpont után (ettől a végpont is beállítódik két másodperccel későbbre), és megnyomjuk az Aktuális lejátszása gombot. Ha ennél később van, megismételjük a folyamatot. Végül ha nagyjából megtaláltuk, akkor a hullám alapján pontosan beállítjuk: a kezdőpontot pontosan a szöveg kezdetére, a végpontot kicsit későbbre; ha folyamatos a szöveg (illetve ha párbeszéd van éppen), akkor a következő szöveg (valószínűsíthető) kezdőpontjára. Ilyen módon a felirat folyamatos hatást kelt majd.

Az intervallumot a Rögzítés gomb megnyomásával tároljuk el a táblázatba. A gomb megnyomása után a táblázat a következő sorra ugrik, a végpontból kezdőpont lesz, a végpont pedig két másodperccel későbbre kerül. Ez általában jó alapot ad egy folyamatos szöveg időzítéséhez.

Az időzítés nem más, mint ennek a folyamatnak az ismétlése, amíg minden sorhoz nem rendeltünk egy időintervallumot. A SubTimer többi funkciója a fordítási szakaszban elkövetett hibák kijavítására szolgál. Gyakori hiba az elírás. Az éppen időzített sor nagy betűkkel megjelenik az ablakban, ezt mindig olvassuk el. Ha hibás, itt ki lehet javítani és a Rögzítés gomb megnyomásával ez is eltárolódik. Szintén gyakori, hogy egy-egy rövid megszólalást elfelejtünk lefordítani. Ez általában időzítéskor kiderül; a Szerkesztés menü Sor beszúrása elé/utána parancsaival szúrhatjuk be az új időzítendő sort. Ismétlődő soroknál könnyű eltéveszteni, hányszor mondják ugyanazt, itt a Sorok kivágása/másolása/beillesztése bizonyul hasznosnak.

Leggyakoribb, hogy nem találjuk el a feliratok ideális hosszát, némelyiket túl sok részre szabdaljuk, másokat hosszan meghagyunk egy darabban. Ezek kijavítására szolgál a Sor kettéosztása és az Összevonás a következővel menüpont, ezek nagyon hatékony eszközök, használjuk őket bátran!

4. Egy kész felirat javítása

Ha csak kis javításokat akarunk eszközölni egy feliraton, akkor nincsen szükségünk hangfájlra. Ilyen javítás általában egy elgépelés helyesbítése, egy rosszul időzített mondat arrébbtolása, vagy akár az egész felirat időinek elcsúsztatása.

Indítsuk el a SubTimert és töltsük be a feliratfájlt. Ha szükséges, először konvertáljuk át UTF-8 kódolásúvá. Ügyeljünk arra, hogy az Idő tippelése rögzítés után nincsen bekapcsolva. Az egyes sorok idejének és szövegének átírását a megfelelő mezőkben megtehetjük, az új értékeket a Rögzítés gombbal menthetjük el. Több sort egyidejűleg a Szerkesztés menü Idők eltolása pontjával tolhatunk el.

5. Tanácsok

A SubTimer jövőbeni fejlesztőihez

Hogyan adjunk hozzá egy új hangfájltípust?

Hogyan adjunk hozzá egy új felirattípust?

Ötletek és hibajavítások

Minden ötletet, kritikát, hibabejelentést, segítséget, fejlesztést nagyon szívesen látok. Ha ezt a programot tényleg sokan kezdik majd használni, akkor nyitok egy SubTimer fórumot, addig is a véleményeket a következő címre várom: vukung@yahoo.com
Projekt: SubTimer Készült: Wed Mar 23 22:06:57 2005 Készítette: doxygen 1.3.6