( atkosa | 2025. 01. 06., h – 20:49 )

Az tűnt a legegyszerűbbnek, ha a jellyfin-t docker konténerben futtatva próbálom ki. A biztonság kedvéért read only módban tettem be alá volume-nak a filmeket tartalmazó könyvtárat. Ez mindjárt okozott problémát, mert az nfo és az artwork fájlokat nem tudta odaírni a filmek könyvtáraiba. Igazából nem feltétlenül szeretnék írási jogot adni a konténernek azokra könyvtárakra, de egyelőre nem jöttem rá, hogy lehetne-e máshová tetetni vele az említett fájlokat.

Androidos telefonra telepítettem a play-ből a jellyfin alkalmazást. Semmi bonyolultság nincs benne (legalábbis első ránézésre), lehet keresni benne és lejátszást indítani. Ami meglepett, hogy át lehet küldeni chromecast-ra a lejátszást. Az én chromecast-om nem google tv, így nem lehet rá alkalmazást telepíteni, de így simán át tudtam küldeni a tv-re a filmet. Ami nem tetszett, hogy az átküldés után semmit se tudtam csinálni a filmmel, nem volt hozzá kezelőfelület az androidos alkalmazásban. Egy hirtelen ötlettől vezérelve elindítottam a telefonon a (google) Home alkalmazást, és abban már tudtam kezelni a lejátszást, hangerőt változtatni, oda-vissza tekerni. Most jut eszembe, hogy felirattal kapcsolatos beállítás viszont nem volt benne... Lehetséges, hogy a telefonon elindítva a filmet be kell állítani a kívánt feliratot, és csak utána átküldeni a chromecast-ra, és ez megoldást jelenthet...

Azt írtam, hogy nincs szükségem átkódolásra. Első nekifutásra ki is kapcsoltam minden átkódolási lehetőséget (központilag nem, de egyesével a usereknél valóban ki lehet kapcsolni). Elindítottam egy filmet, mire kiírta, hogy nem tudja lejátszani a telefon. Visszakapcsoltam minden átkódolási lehetőséget, így már simán elindította a telefonon a lejátszást. Néztem a jellyfin logjait a szerveren, ffmpeg-gel átkódolta a fájlt. Egy i7-3770-es proci van a gépben, egy döccenés se volt :) Meglehetősen gyorsan kódolta át a két órás filmet (a /var/cache/jellyfin/transcodes könyvtárban láttam, hogy meddig nőtt a fájlok darabszáma). Próbáltam oda-vissza tekergetni a filmben (30-50 perceket), 1-2 másodperc múlva már tudta folytatni. A lejátszás befejezése, megszakítása esetén az átkódolt fájlokat törli a rendszer, szóval minden lejátszáskor újra fogja kódolni.

A telefon 5 GHz-es wifin volt, a szerver azon a gigabites switch-en van (gigás kapcsolattal), amelybe az ap-k vannak bekötve. Gyorsan kipróbáltam egy másik telefonnal is (az is ugyanazon az 5 GHz-es wifin volt). Másik usert hoztam létre neki a jellyfin szerveren, és egy másik filmet indítottam el azon a telefonon (egyszerre indítottam a két különböző film lejátszását a két telefonon). A két telefonon egyszerre történő lejátszás semmilyen problémát nem jelentett, bár így jóval tovább tartott az ffmpeg általi átkódolás, de még így is sokkal gyorsabb volt, mint a film lejátszása (lehet, hogy ha egyből a film végére akartam volna ugrani, akkor kellett volna várnom, de normál lejátszás mellett nem volt döccenés sem).

Ily módon a pi-kre nincs szükségem - legalábbis egyelőre -, mindent át tudok küldeni a chromecast-ra. Azt majd ki kell tapasztalnom, hogy milyen felbontású, kódolású stb. fájlokat érdemes beszereznem, mert biztos van egy határ, aminél jobbat úgyse tudok ezen a módon lejátszani. A leírás szerint a pi-ket (kodi-kat) is lehetne jellyfin plugin-nal használni (https://jellyfin.org/docs/general/clients/kodi/#jellyfin-for-kodi). Kíváncsi lennék, hogy azoknak is átkódolná-e a fájlokat, hiszen azok eddig simán le tudták játszani bármelyik fájlt. Majd kipróbálom, ha lesz rá időm... Simán lehetséges, hogy így a dts, akármi hangok és a 4k/8k felbontású lejátszás nem megy (még nem igazán tesztelgettem, épp csak elindultak a dolgok), de végszükség esetén a pi-ken keresztül meg tudok nézni bármit, ami a szerveren fent van, csak be kell kapcsolnom őket. Igaz, a tv-m egy full hd plazma, szóval nem tud 4k lejátszást se, ez a része eddig se izgatott a dolognak :)

Ami még előnynek tűnik, hogy bár csak lokális hálózati lejátszásra gondoltam az induláskor, ez a felállás lehetővé teszi az interneten keresztüli lejátszást is (például egy reverse-proxy-val: https://jellyfin.org/docs/general/networking/), természetesen az upload függvényében - találtam beállítási lehetőséget a szerverben, "internetes streaming bitráta limit" elnevezéssel ("Ez egy opcionális adatfolyam sebesség korlát a hálózaton kívüli eszközök számára. Ez akkor hasznos, amikor az eszközök magasabb bitrátát kérnek, mint amennyit az internetkapcsolat képes kezelni. Ez megnövelheti a szerver CPU terhelését, hogy átkódolja a videókat egy alacsonyabb bitrátára."). (Hálózat alatt itt a lokális hálózatot érti.)

Köszi mindenkinek az ötleteket, hozzászólásokat! Ha van további ötlet, javaslat a fentiek fényében, akkor szívesen fogadom.