Első indítás szűz gépen
A repó klónjától az első feliratig – környezetellenőrzés, fiókszolgáltatás, kulcsok és a napi indító, a valódi sorrendben, Windowson és macOS-en.
Kinek szól ez az útmutató
A Live Caption Pro-nak nincs nyilvános telepítője és letölthető csomagja: a lépések azoknak szólnak, akik hozzáférést kaptak a forráskód tárolójához (a repóhoz). A „szűz gép” friss Windows vagy egy Apple siliconos Mac (macOS 14.2-től) a repó klónjával, és semmi más – a platform ilyenkor is minden előfeltételt maga ellenőriz. A követelmények (videokártya, .NET 10 SDK, PowerShell 7, Windowson a winget, macOS-en a Homebrew) a telepítés oldalon vannak, platformonként; ez az útmutató a sorrendről szól. Ahol a macOS más, a lépés végén külön bekezdés és parancsblokk mondja meg – a .cmd indítók párja ott a kattintható .command.
A lépések ezekre a nevekre hivatkoznak:
| Név | Mi az |
|---|---|
fiókszolgáltatás (accountserver) |
a felhasználók, a jelszavak és az API-kulcsok egyetlen gazdája; a többi szolgáltatás tőle kéri a jogosultsági képet |
| a fiókszolgáltatás adatbázisa (PostgreSQL) | ahol a felhasználók, a kulcsok és a jogosultságok ténylegesen élnek; helyben Windowson egy Docker-konténerben, macOS-en a Homebrew PostgreSQL-jével, saját fürtként fut |
feliratozó szerver (captionserver) |
a beszédet írja át a Whisper modellel, a videokártyán (macOS-en a Metal-on át) |
fordító (translatorserver) |
a lefordított mondatokat adja, a gépen futó modellel |
beszédszolgáltatás (voiceserver) |
a tolmács hangja |
feliratablak (livecaption) |
az átlátszó felirat a hívás vagy az előadás fölött |
1. A környezet felmérése és pótlása
Az első parancs nem módosít semmit: jelenti, mi van meg, mi hiányzik, és mi a pótlás parancsa.
check-environment.cmd
check-environment.cmd -Components voice
check-environment.cmd -Fix
check-environment.cmd -Fix -Yes
A pótló mód (-Fix) tételenként kérdez, és előre megmondja, mekkora a letöltés, és kér-e rendszergazdai jogot – ma csak a virtuális hangkábel kér, minden más az Ön saját felhasználójaként települ. A -Yes a winget megállapodásait és a beszédmotor XTTS-v2 modelljének CPML licencét (nem kereskedelmi használat) is elfogadja Ön helyett, ezért csak akkor adja meg, ha ezzel tisztában van. A winget maga is előfeltétel, és a keret nem tudja pótolni: Windows 10-en és LTSC-kiadásokon egyszer kézzel kell telepíteni.
Jelölések: + megvan, ! hiányzik és kötelező, - hiányzik, de nem kötelező, ? nem eldönthető. A kilépési kód 0, ha minden kötelező tétel megvan.
macOS-en előbb a PowerShell 7 kell: nélküle egyetlen indító sem indul el. Utána ugyanez a jelentés a check-environment.command indítóval megy (a Finderben dupla kattintással is). A hiányzó tételeket – a .NET SDK-t, a Pythont, az FFmpeget, a BlackHole virtuális kábelt és az adatbázist – a pótló mód nem telepíti magától, mert rendszergazdai jelszót kérhetnek: a pótlás parancsát írja ki, a .NET SDK-hoz a Microsoft telepítőszkriptjét (dotnet-install.sh), a többihez a Homebrew parancsát. A .NET SDK a Homebrew-ból is telepíthető (lent).
brew install --cask powershell
brew install --cask dotnet-sdk
brew install uv
brew install ffmpeg
brew install --cask blackhole-2ch
brew install postgresql@18
./check-environment.command
./check-environment.command -Fix
2. A fiókszolgáltatás első indítása
Mind a három szolgáltatás hitelesít, és a felhasználók meg a kulcsok a fiókszolgáltatásban élnek – ezért ez indul először. A fiókszolgáltatás az adatait egy PostgreSQL-adatbázisban tartja, amit a repó indítója a gép Dockerében futtat (ehhez a Docker Desktop kell – Windowson a WSL-lel; ha hiányzik, a check-environment.cmd -Fix -Components account feltelepíti, az indító pedig megmondja a parancsot). A sorrend kötött:
- Hozza fel az adatbázist:
AccountServer\managed-postgres.cmd. Az első futás megkérdezi, létrehozhatja-e a konténert, majd elkészíti az adatbázist, és két felhasználói környezeti változóba írja a kapcsolódás adatait és a webes belépés kulcsainak titkosító kulcsát – mindkettő titok. A végén ellenőrzi, hogy a fiókszolgáltatás tényleg be tud-e lépni. - Indítsa el a fiókszolgáltatást külön, látható ablakban:
AccountServer\start-accountserver.cmd. Az első indulás felvesz egyadminfelhasználót, és a véletlen jelszavát egyszer ide írja ki, naplóba sosem. Kiírja az adatbázis-kapcsolat titok nélküli leírását is (gép, port, adatbázis, felhasználó). A machine API alapból minden hálózati csatolón figyel; ha csak ezen a gépen kell, indítsa a-HostName localhostkapcsolóval. Ha a kimenetet fájlba irányítja, a jelszó abba is bekerül – olvasás után törölje. - Lépjen be a
http://127.0.0.1:8101/admincímen; a felület rögtön új jelszót kér. - Adjon kulcsot a klienseknek:
start-accountserver.ps1 -KeyAdd <felhasználó>, vagy a webes Kulcsok lap. - Nézze át a felhasználókat és a kulcsokat a felületen.
- Szerezze be a három szolgáltatás peer tokenjét (a kulcsot, amellyel a szolgáltatás a fiókszolgáltatásnál azonosítja magát):
setup-account-peers.ps1 -Tokens, majd-Check. - A
-Checkhitelesített tesztet futtat – az egyetlen bizonyíték arra, hogy a szolgáltatások tényleg kapnak jogosultsági képet. - Aktiválás:
setup-account-peers.ps1 -Activate. Ez írja be aLCP_ACCOUNT_URLváltozót – a már futó ablakok nem látják, ezért minden nyitott ablakot zárjon be. - Indítsa újra a szolgáltatásokat a napi indítóval (4. lépés); a fiókszolgáltatás indítója az adatbázist is felhozza, a fiókszolgáltatás előtt.
AccountServer\managed-postgres.cmd
AccountServer\start-accountserver.cmd
AccountServer\setup-account-peers.ps1 -Tokens
AccountServer\setup-account-peers.ps1 -Check
AccountServer\setup-account-peers.ps1 -Activate
macOS-en az adatbázishoz nem kell Docker: a managed-postgres.command a Homebrew postgresql@18 programjaival saját, natív fürtöt hoz létre az adatgyökér alatt, saját mappában, csak a loopback címen. A többi lépés ugyanaz, a .cmd helyett a .command párral, ugyanazokkal a kapcsolókkal. A tartós környezeti változók macOS-en a felhasználó környezeti fájljába kerülnek (~/.config/live-caption-pro/environment), és az indítók onnan olvassák be őket.
AccountServer/managed-postgres.command
AccountServer/start-accountserver.command
AccountServer/setup-account-peers.command -Tokens
AccountServer/setup-account-peers.command -Check
AccountServer/setup-account-peers.command -Activate
Ha a jelszó elveszett, a kivezető út ugyanazon a gépen: start-accountserver.ps1 -UserPassword admin. A szerepkörökről és a kulcsokról a fiókok, kulcsok, jogosultságok útmutató szól.
3. A szkriptek kulcsa
A parancssori szkripteknek (feliratozás, fordítás) saját kulcsuk van, amit a generate-api-key.cmd ad ki. A kulcs egy tartós felhasználói környezeti változóba kerül szolgáltatásonként (LCP_SCRIPT_KEY_CAPTIONSERVER, …_TRANSLATORSERVER, …_VOICESERVER), és közben sehol nem jelenik meg – sem a képernyőn, sem naplóban.
generate-api-key.cmd
generate-api-key.cmd -Service caption
generate-api-key.cmd -Service caption -Force
A meglévő kulcsot semmi nem írja felül: cserélni csak a -Force cserél. Az új változót az ezután nyitott ablakok látják.
macOS-en a generate-api-key.command adja ki, ugyanezekkel a kapcsolókkal; a kulcs a tartós környezeti fájlba kerül.
./generate-api-key.command
./generate-api-key.command -Service caption
4. A napi indítás
A napi indítás két lépés: előbb a háttérszolgáltatások, utána a feliratablak.
A gyökérbeli launch-system.cmd (macOS-en launch-system.command) csak a négy háttérszolgáltatást hozza fel, a kötött sorrendben: a fiókszolgáltatás (előtte az adatbázisa, ha a gép saját konténere), majd fordító és beszédszolgáltatás párhuzamosan, végül a feliratozó szerver. A sorrend nem választható: a feliratozó szerver a szabad videómemóriához méretezi a modellkészletét, ezért a másik kettőnek előbb kell foglalnia. Mindegyik szolgáltatás a saját ablakában indul, ugyanazzal az indítóval, amellyel egyesével is elindítható (például CaptionServer\start-captionserver.cmd), és a szkript kivárja, amíg tényleg kiszolgálnak (a modell betöltése alatt 503 loading a válasz). Ami már fut, azt nem indítja újra. Az első futáshoz internet kell a Whisper modell letöltéséhez; utána minden offline működik.
A feliratablakot külön indítja a LiveCaption\start-livecaptionpro.cmd (macOS-en LiveCaption/start-livecaptionpro-avalonia.command): publikálja a programot, ha hiányzik vagy elavult, és elindítja. Egyszerre egy feliratablak fut a gépen: ha már fut, a szkript figyelmeztet, és 7-es kóddal kilép.
launch-system.cmd
LiveCaption\start-livecaptionpro.cmd
launch-system.cmd -NoTranslator -NoVoice
Kihagyni a -NoAccount, -NoTranslator, -NoVoice és -NoCaption kapcsolóval lehet – így kell kihagyni azt is, ami másik gépen fut. Kiszolgáló gépen a napi indítás maga a launch-system.cmd, feliratablak nélkül. A fiókszolgáltatást csak akkor indítja, ha a LCP_ACCOUNT_URL erre a gépre mutat. A leállítás párja a stop-system.cmd: a négy szolgáltatást állítja le, a feliratablakot nem.
macOS-en a launch-system.command a szolgáltatásokat Terminal-ablakban indítja, ezért grafikus munkamenet kell (SSH-ról nem megy). A publikálás önálló LiveCaption Pro.app csomagot készít a LiveCaption/LiveCaption.Avalonia/bin/publish-osx-arm64/ mappába; ez a Finderből, vagy a Dockra húzva onnan is indítható, és futás közben a menüsorban él. A macOS a mikrofon és a rendszerhang rögzítését engedélyhez köti, és annak adja, aki az indításért felel: szkriptből indítva a terminálalkalmazás (Terminal, iTerm) kapja, a Finderből indított csomagnál maga a Live Caption Pro. A kulcsokat a program a macOS-kulcstárban (Keychain) tartott kulccsal titkosítja – ha a kulcstár hozzáférést kér, engedélyezze. Kijelző nélküli Macen a szolgáltatások futnak, a feliratablak nem.
./launch-system.command
LiveCaption/start-livecaptionpro-avalonia.command
./stop-system.command
Ha elakad
A leggyakoribb tünetek és a kivezető utak a hibaelhárítás útmutatóban vannak; ha ott nincs válasz, írjon nekünk.