AISub Jellyfin — ghid
Instalare
Ai nevoie de Jellyfin Server 12.2 sau mai nou și de un cont MediaLab Works cu o licență care acoperă plugin-ul (abonament activ, licență lifetime în perioada de actualizări, Pachetul Jellyfin sau proba gratuită de 30 de zile).
Din depozitul tău de plugin-uri (recomandat). Jellyfin instalează și actualizează apoi singur plugin-ul.
- În contul MediaLab Works deschide Licențe → Depozitul de plugin-uri Jellyfin și apasă Creează adresa. Copiaz-o: e privată (conține un token), deci nu o da mai departe; o poți regenera sau revoca oricând.
- În Jellyfin deschide Tablou de bord → Plugin-uri → „Repositories”, apasă +, dă-i un nume (de exemplu MediaLab Works), lipește adresa și salvează.
- În Tablou de bord → Plugin-uri → Catalog găsește AISub by MediaLab, apasă Instalează, apoi repornește Jellyfin.
Depozitul arată doar plugin-urile acoperite de licențele tale și doar versiunile permise. Linkurile de descărcare sunt semnate și expiră după câteva ore, așa că Jellyfin citește mereu o listă proaspătă.
Din catalogul public. https://medialab.works/jellyfin/manifest.json arată toate plugin-urile MediaLab Works lansate, cu versiunile lor publice; medialab Server îl adaugă singur. Îl poți adăuga la fel ca să instalezi un plugin înainte să ai o cheie: plugin-ul îți cere apoi licența sau pornește perioada de probă din pagina lui Licență. Cu o licență lifetime a cărei perioadă de actualizări s-a încheiat, folosește depozitul tău privat, care oferă doar versiunile permise de licență.
Manual, dintr-o arhivă zip.
- În Cont → Licențe descarcă
jf-aisub_x.y.z.zip(SHA-256 al fișierului apare lângă buton). - Dezarhivează-l într-un dosar nou
AISub by MediaLab_x.y.z.0din dosarul de plugin-uri Jellyfin:- Linux (pachet):
/var/lib/jellyfin/plugins/ - Docker (imaginea oficială):
/config/plugins/din volumul de configurare - Windows:
%ProgramData%\Jellyfin\Server\plugins\
- Linux (pachet):
- Repornește Jellyfin.
Activarea licenței
- Deschide pagina plugin-ului din Tablou de bord → Plugin-uri → AISub by MediaLab și apasă Licență.
- Lipește cheia de licență și apasă Activează cu cheia. Plugin-ul contactează serverul de licențe, leagă cheia de acest server Jellyfin și arată licența Activă.
- Nu ai încă o cheie? Pe aceeași pagină scrii adresa de e-mail și pornești proba gratuită de 30 de zile (card necesar, nimic de plată azi) sau cumperi o licență; plugin-ul se activează singur după plată.
Licența se verifică o dată pe zi și la fiecare pornire a Jellyfin. Fără internet plugin-ul merge încă 7 zile de la ultima verificare reușită. Fără o licență valabilă plugin-ul își oprește activitatea și rămâne funcțională doar pagina Licență (probă, cheie, reînnoire); nu se șterge nimic și totul revine imediat ce licența e din nou valabilă. Mută licența (eliberează serverul) de pe aceeași pagină eliberează cheia pentru alt server.
Actualizare și revenire
- Din depozit: Jellyfin arată versiunile noi în Tablou de bord → Plugin-uri și poate actualiza plugin-ul automat; repornește Jellyfin ca să încarce versiunea nouă.
- Din pagina Licență a plugin-ului: cu o licență valabilă, Instalează actualizarea aduce cea mai nouă versiune permisă de licență, iar Rollback la x.y.z întoarce versiunea anterioară (de exemplu dacă ceva nu mai merge după o actualizare). Repornește Jellyfin după oricare dintre ele. Ambele pachete se verifică după suma de control publicată de serverul de licențe.
- O licență lifetime primește versiunile apărute în perioada ei de actualizări; după aceea plugin-ul merge mai departe pe ultima versiune permisă.
- După o revenire, dacă depozitul de plugin-uri e adăugat în Jellyfin, sarcina programată Update Plugins (la pornire și zilnic) instalează din nou cea mai nouă versiune. Ca să rămâi o vreme pe versiunea anterioară, scoate declanșatoarele acestei sarcini din Tablou de bord → Sarcini programate și pune-le la loc mai târziu.
Codul sursă
Sursa GPL-3.0 a fiecărei versiuni e în Cont → Licențe (Cod sursă), lângă descărcare, ca arhivă .tar.gz făcută din commit-ul exact al versiunii.
Configurare
Deschide AISub din meniul tabloului de bord Jellyfin. Pagina are patru file: Prezentare, Lucrări, Furnizori și Setări.
- Furnizori: adaugi cheile furnizorilor pe care vrei să-i folosești. Sunt păstrate pe serverul tău, într-un fișier separat pe care îl poate citi doar contul de serviciu Jellyfin, și se trimit doar furnizorului lor; pagina arată doar ultimele 4 caractere. Testează traducerea și Testează cheia de transcriere verifică cheile.
- Traducere: o cheie Anthropic (implicit Claude Haiku, Claude Sonnet pentru calitate maximă) sau adresa unui server compatibil OpenAI: LM Studio (pornește „Serve on Local Network”, portul 1234), Ollama (portul 11434) sau unul online, de exemplu OpenRouter sau DeepSeek (cu cheia lui API). Caută modelele arată modelele oferite de server.
- Transcriere (pentru titlurile fără nicio subtitrare): o cheie Groq (Whisper large-v3-turbo, implicit, sau Whisper large-v3) sau o cheie OpenAI (Whisper). În 0.1.0 un server local nu poate transcrie.
- Setări:
- Limbi de generat: bifezi limbile dorite și le pui în ordinea priorității (ordinea decide ce limbă trece prima la buget).
- Generează automat și Ce titluri: doar titlurile adăugate de acum înainte sau și biblioteca existentă (în fiecare noapte, cu plafon).
- Limba sursă preferată pentru traducere, când un titlu are mai multe subtitrări.
- Doar când nu există o subtitrare umană în limba dorită (pornit implicit).
- Scoate indicațiile pentru hipoacuzici ([ușa se trântește], NUME:) la traducere.
- Cost maxim pe titlu și pe lună (USD).
- Cu Rosub (opțional, recomandat): pagina plugin-ului arată dacă Rosub e legat. AISub generează atunci doar limbile pe care Rosub le-a căutat și nu le-a găsit, deci plătești doar pentru ce lipsește cu adevărat.
Utilizare zilnică
- Filmele și episoadele noi sunt procesate la sosire: cu Rosub, după ce Rosub a căutat limba; fără Rosub, la câteva minute după ce au fost adăugate.
- Sarcina programată Subtitrări AI lipsă (AISub) (zilnic, implicit la ora 5:00; Tablou de bord → Sarcini programate) trece prin restul bibliotecii, cu un plafon de lucrări pe noapte.
- Fila Lucrări arată coada, progresul și costul fiecărei lucrări, plus cheltuiala lunii. De acolo poți și să generezi pentru un titlu (opțional chiar dacă are deja subtitrare) sau să oprești lucrarea curentă.
- Costul obișnuit pentru un film de 2 ore, afișat în pagina plugin-ului la tarifele furnizorilor, e circa 0,08 $ pentru traducerea cu Claude Haiku și circa 0,08 $ pentru transcrierea cu Groq Whisper large-v3-turbo; cu un server AI local traducerea nu costă nimic.
- Când nu există nicio subtitrare de tradus, AISub transcrie audio-ul o singură dată și refolosește transcrierea pentru toate limbile țintă.
- Fiecare traducere se face în loturi, cu context, iar fiecare replică e verificată, ca textul să rămână pe replica lui și sincronizat cu originalul.
- Rezultatul se salvează lângă video ca
Nume.limbă.srt, iar Jellyfin reîmprospătează titlul. Cu Rosub, subtitrarea AI e înregistrată ca provizorie și prima subtitrare făcută de om o înlocuiește automat.
Ce trimite și unde
- Textul subtitrării, în loturi de replici, la furnizorul de traducere ales de tine, cu o linie de context despre titlu (numele, anul, până la 4 genuri, rezumatul de cel mult 400 de caractere).
- Pentru transcriere, pista audio a filmului (mono, comprimată, în bucăți) la Groq sau OpenAI, împreună cu limba și numele titlului. Imaginea video nu se trimite niciodată.
- La medialab.works nu ajunge nimic în afară de verificarea licenței.
Probleme frecvente
- Titlurile fără nicio subtitrare nu primesc subtitrare AI: transcrierea cere o cheie Groq sau OpenAI; în 0.1.0 un server local doar traduce.
- LM Studio nu poate fi accesat: pornește „Serve on Local Network” în LM Studio, ca serverul Jellyfin să se poată conecta la el.
- „Plafonul lunar a fost atins”: mărește plafonul lunar în Setări sau așteaptă luna următoare.
- O lucrare e sărită cu „Rosub n-a terminat încă de căutat această limbă”: se reia singură când Rosub termină.