Függelék: a fájlkliensek

Hang- és videófájlok, egész mappák kötegelt feliratozása SRT-be, és feliratok, markdown-dokumentumok, szövegtárak fordítása a parancssori kliensekkel.

8 perc olvasás Frissítve: 2026-10-18

A LiveCaption élő feliratot ad arról, ami épp elhangzik. Ha viszont meglévő fájlokat – egy felvett előadást, egy egész videómappát, egy feliratfájlt vagy egy dokumentumot – szeretne feliratozni vagy fordítani, arra a termék parancssori kliensei valók. Ugyanazokat a szervereket használják, mint a LiveCaption: a feliratozót (captionserver) és a fordítót (translatorserver).

Ez a függelék áttekintést ad; a részletes, lépésenkénti leírás a weboldal két útmutatójában áll: Egy videómappa feliratozása SRT-be és Feliratfájlok, markdown és szövegtárak fordítása.

Mi kell hozzá

  • A szerverek: feliratozáshoz a feliratozó, fordításhoz a fordító fusson – a saját gépén vagy a hálózatban. Az indításukat a szerverek kézikönyvének Napi indítás és leállítás fejezete írja le.
  • Kulcs: a szerverek minden kérést hitelesítenek. A szkripteknek saját kulcsuk van, amit a termék gyökérmappájában álló generate-api-key indító ad ki egy tartós környezeti változóba; a feliratozó szkriptjei maguktól is meghívják, ha nem találnak kulcsot.
  • FFmpeg: a feliratozó kliens ezzel nyeri ki a hangot a videóból. Ha hiányzik, a kliens felajánlja a letöltését.
  • PowerShell 7: a szkriptek ezzel futnak. Windowson a .cmd indítók dupla kattintással is indíthatók, macOS-en a .command párjuk a Finderből; terminálból a .ps1 szkript hívható (pwsh).
generate-api-key.cmd
generate-api-key.cmd -Service caption
generate-api-key.cmd -Service caption -Force

Az első sor minden szolgáltatáshoz kér kulcsot, a második csak a feliratozóhoz, a harmadik a meglévőt is lecseréli. macOS-en ugyanez a generate-api-key.command.

Egy fájl feliratozása

A feliratozó indítói a CaptionServer mappában vannak. Egyetlen videóhoz vagy hangfájlhoz kettő közül választhat:

Indító Hogyan dolgozik Mikor
transcribe a hangot csendnél vágott darabokra bontja, és a darabokat párhuzamosan küldi ha többen osztoznak a szerveren, vagy a szerver videokártya nélkül fut
transcribe-whole a teljes hangot egyetlen kérésben küldi egy fájl legjobb minőségéhez: nincs vágás, nem vész el a szövegkörnyezet

Mindkettőnek van nyelvhez kötött változata (transcribe-hu, transcribe-en, transcribe-whole-hu, transcribe-whole-en), amelyik a beszéd nyelvét előre megadja. Windowson a fájlt egyszerűen az indítóra húzhatja.

Egy mappa feliratozása

A transcribe-folder egy mappa minden hang- és videófájlját feliratozza. Minden fájlhoz külön klienst indít, a már kész fájlokat (amelyek mellett a forrásnál újabb .srt áll) kihagyja, és a végén összesít.

.\transcribe-folder.ps1 "C:\videok" -Whole -Language hu -Recurse
.\transcribe-folder.ps1 "C:\videok" -Clients 4 -Windows
pwsh ./transcribe-folder.ps1 ~/Movies/eloadasok -Whole -Language hu,en

A fontosabb kapcsolók:

  • -Whole: egyben mód, a legjobb minőségért.
  • -Language: a beszéd nyelve – egy kód (hu) rögzíti, az auto felismerést kér, a hu,en jelöltlista csak ezek közül ismer fel.
  • -Recurse: az almappák fájljai is.
  • -Clients: hány fájl fusson egyszerre; alapból a program a szerver kapacitásához igazítja.
  • -Filter és -Force: szűrés a fájlnévre, illetve a kész feliratok felülírása.
  • -Windows és -Quiet: kliensenként külön ablak, illetve csak összefoglaló sorok – felügyelet nélküli futáshoz.

Indulás előtt a szkript egyszer ellenőriz: megvan-e az FFmpeg, és elérhető-e a szerver. Ha valami hiányzik, a köteg el sem indul, és egyetlen, olvasható hibát kap – nem minden fájlét külön. A futás a Ctrl+C billentyűvel szakítható meg.

A feliratfájl neve

A felirat a bemenet mellé kerül, a nyelv jelölésével: eloadas.mp4 → eloadas.hu.srt magyarul, eloadas.eng.srt angolul. A legtöbb lejátszó (VLC, Plex, Jellyfin, Kodi) az ilyen nevű feliratot magától megtalálja. Felismeréses módban a név a felismerés után dől el; ha nincs felismerhető beszéd, a név eloadas.srt. A -NoLanguageSuffix kapcsoló a nyelv jelölését elhagyja.

Feliratok és dokumentumok fordítása

Három fordítókliens van, az indítóik a TranslatorServer mappában:

Indító Mit fordít Mi marad változatlan
translate-subtitle feliratot: .srt, .vtt, .ass/.ssa az időzítés, a blokkok száma, a formázójelek – csak a szöveg változik
translate-markdown markdown-dokumentumot: .md a szerkezet, a kód, a hivatkozások címe; a kódblokkok kommentjei alapból lefordulnak
translate-resx szövegtárat: .resx, PowerShell messages.psd1 a kulcsok, a helykitöltők ({0}); alapból csak a hiányzó kulcsok fordulnak

A kulcsot ne a parancssorba írja (az a héj előzményébe kerülne), hanem egy környezeti változóba, és a változó nevét adja meg a -ApiKeyEnv kapcsolóval:

$env:LCP_TRANSLATE_KEY = "lcp_..."
TranslatorServer\translate-subtitle.cmd "C:\videok\01 - Bevezetes.eng.srt" -ApiKeyEnv LCP_TRANSLATE_KEY
TranslatorServer\translate-markdown.cmd "C:\docs\README.md" -ApiKeyEnv LCP_TRANSLATE_KEY --to hu

A --from és a --to a nyelvpárt adja meg, a --server a fordító címét (alapból http://127.0.0.1:8080). Kimeneti név nélkül a fordítás a bemenet mellé kerül, a nyelvkódot cserélve: 01 - Introduction.eng.srt → 01 - Introduction.hu.srt. Mappát megadva az egész mappa lefordul; a már kész fájlokat kihagyja, a megszakadt futást ugyanaz a parancs folytatja.

A --check kapcsoló fordítás és szerver nélkül ellenőrzi, hogy a fájl hibátlanul visszaírható-e; a --dry-run megmutatja, mit fordítana, fordítás nélkül.

Kilépési kódok

A kliensek és a szkriptek ugyanazokkal a kódokkal lépnek ki, így más szkriptből feltételként használhatók:

Kód Mit jelent
0 kész, minden sikerült
1 hibás használat (rossz kapcsoló, ismeretlen modell vagy nyelv), vagy csak a súgót kérte
2 a bemeneti fájl nem létezik
3 az FFmpeg nem futtatható, vagy hibával állt le (csak feliratozásnál)
4 egyéb hiba; mappás futásnál: legalább egy fájl nem sikerült
5 a felhasználó megszakította (Ctrl+C)
6 a szerver nem érhető el, vagy végleges hibát adott

Hova tovább

Hiba történt az oldal futtatásakor. / An error occurred while running the page. Újratöltés / Reload 🗙