Filmek optimális lejátszása 2.0
Jócskán elszaladt az idő, mióta utoljára frissítettem a filmlejátszós cikkemet. Sokat változott azóta a technika, de én is egész másképp nézek már erre a hobbira. Szóval inkább nem állok neki tovább foltozni, hanem egy egyszerűbb, aktuálisabb és lényegretörőbb új változatot készítek belőle.
A lényeg az, hogy ha tényleg úgy érdekel a filmnézés mint egy komoly hobbi, tehát rászánod az időt, a figyelmet, a pénzt és igyekszel minden körülményt úgy alakítani, hogy a lehető legideálisabb állapotban történjen meg az adott mű befogadása, akkor érdemes pár órára elmerülni a lejátszás szoftveres oldalában, mert sajnos igen kacifántos és zavaros egy dolog ez. Hidd el, megéri a befektetett időt!
Kicsit utánaolvasva gyorsan kiderül, hogy a maximalistáknak nincs más lehetőség, mint a madVR video renderelő használata. Most már egy csomó lejátszóval kompatibilis, iszonyú részletesen konfigurálható és minden más megoldásnál jobb.
Mi kell hozzá:
– Jó kijelző, gyors számítógép, DirectX 11 kompatibilis videokártya. Nem árt ha van kraft, mert a komolyabb algoritmusok megizzasztják a gépet.
– Kompatibilis médialejátszó (a madVR oldal listájából). Szerintem még mindig a MPC-BE a legjobb lejátszó, de mindegyik megteszi.
– madVR video renderer. A megjelenítés lelke, minden fontos funkciót ez lát el.
– CRU vagyis Custom Resolution Utility. Opcionális, de 60 Hz-hez kötött monitoroknál igen jól jön.
Windows beállítások:
A gyártók közt (intel, AMD, Nvidia) vannak különbségek, de a fontos funkciók ugyanazok.
– Minden képmódosítással kapcsolatos funkciót le kell tiltani.
– Pulldown legyen bekapcsolva.
– RGB 4:4:4 képpont formátum.
– 0-255 teljes dinamikatartomány.
– Ha tudja a kijelző, akkor 10 bit színmélység.
– A videolejátszó színbeállításainak használata (a gyártói felülírás helyett).
Médialejátszó beállítása:
Tengernyi lehetőség, a legfontosabbak egyértelműek és/vagy nem lényegesek a megjelenítés szempontjából.
A szűrő beállításokat jellemzően nem kell piszkálni.
– Le kell tölteni a madVR-t, ki kell csomagolni valahova, figyelembe véve, hogy ott is fog maradni (az installálás nem rakja át sehova). Rendszergazdai jogosultsággal install.bat.
– A lejátszó video kimenetét át kell állítani madVR-re.
madVR beállítások:
devices:
A kijelzők tulajdonságainak beállítása. Minden kijelzőre külön kell beállítani. Hozok rá példát.
properties:
A windows beállításoknak megfelelően.
– 0-255 (PC levels) teljes dinamikatartomány.
– Lehetőség szerint 10 bit színmélység.
– 3D format... Na ne vicceljünk! :D
calibration:
Ha a kijelző kalibrált és megvan, hogy mi alapján készült a művelet, annak megfelelően kell beállítani. Ha nincs kalibrálva, a legáltalánosabb beállítás megfelelő lesz:
– This display is already calibrated.
– BT.709.
– pure power curve / 2.20.
display modes:
A különböző felbontások és a képfrissítési frekvenciák beállítása. Esszenciális a folyamatos, nem ugráló képhez.
Célszerű úgy beállítani, hogy akkor váltson át a kijelző a megfelelő módba, ha teljes képernyőre kapcsolunk:
– switch to matching display mode when media player goes fullscreen.
– restore original display mode when media player leaves fullscreen.
Tulajdonképpen az a lényeg, hogy a kijelző frekvenciája ugyanannyi vagy többszöröse legyen film képkockasebességének. A TV-k most már jellemzően minden fontos frekvenciát tudnak kezelni (23,976 / 24 / 25 / 29,97 / 30 / 50 / 59,94 / 60 fps és Hz). A monitorok viszont közel sem ilyen barátságosak. Rosszabb esetben csak a 60 Hz megy. A custom modes fülön megjelennek a kijelző gyártó által előkészített képmódjai. De szerencsére nem kell ehhez ragaszkodnunk, trükközéssel elő lehet majd csalogatni a szükséges üzemmódokat. Az én két kijelzőm pont bemutatja a végleteket, úgyhogy jöjjenek a példák.
TV beállítása:
A fullHD Panasonic plazma TV-m alapból ismeri az összes szükséges módot, így a beállítás egyszerű. A natív (maximális) felbontásához hozzá kell rendelni az összeset:
– list all display modes madVR may switch to:
1080p23, 1080p24, 1080p25, 1080p29, 1080p30, 1080p50, 1080p59, 1080p60
monitor beállítása:
Ha egy 60 Hz-hez kötött monitorral áldott meg minket a sors, akkor kicsit bele kell piszkálni a windows-ba, hogy át tudjon váltani - az amúgy jó eséllyel igen rugalmasan használható - monitorunk a megfelelő frissítésére. Itt jön képbe a CRU, de minden lehetőség lefedésére a madVR mélyebb buherálása is szükséges lesz.
Kezdjük ott, hogy a legfontosabb frissítés a 23,976 Hz (amerikai filmek java ennyi fps), ami általában csak 23-ként szerepel. Emellett igen fontos a 24 Hz (európai filmek java ennyi fps), ez pedig 24-ként szerepel. Az esetek többségében ez a kettő (és talán a 25 Hz) elég is, de az összes forrás lefedésére sem kell vészesen sok időt fordítanunk. (A dolgot kicsit az bonyolítja meg, hogy a pöpecül használható CRU-ban a 60 Hz-en kívül csak három másik módot tudunk hozzáadni, a madVR vonatkozó beállításában meg az egymáshoz közeli frekvenciák közül mindig csak az egyik aktiválódik (23,976 és 24 fps ilyen), de a kettő kombinációjával meg lehet oldani ezt is.)
– Indítsuk el a CRU-t. Bal felül válasszuk ki a beállítani kívánt kijelzőt.
– detailed resolutions > add:
A parameters-ben a CRU alapból beállítja a kijelző maximális felbontását és az ehhez szükséges további paramétereket. Ezeket itt nem kell piszkálni, de a madVR-hez majd kelleni fognak.
– A frequency-nél a refresh rate-hez írjuk be a kívánt értékeket:
23.976 Hz. (Tizedespontot ismer csak!) OK.
Újra add és jöhet a 24.000 Hz.
Ugyanez 25 Hz-cel.
– Be is zárhatjuk a CRU-t az OK-val.
– Restart illetve 64 bites windowsban Restart64-el indíttasuk újra a windows-al a megjelenítést.
Villog a kép stb.
– Az asztalon jobb klikk > képernyő-beállítások > speciális megjelenítési beállítások > kijelző kiválasztása > frissítési időköz:
Itt válasszuk ki és teszteljük le, hogy rendesen működik e a most beállított három frekvencia. (Ha nem, akkor ugrál a kép, a fele látszik csak vagy semmi. Ilyenkor a videokártya vagy a monitor vagy a kettő együtt nem elég rugalmas és sajnos le kell mondanunk a valóban ugrálásmentes filmlejátszásról.)
Ha valaki nem akar bajlódni a többi frekvenciával, mert úgyse néz 29,97; 30; 50; 59,94 fps mozgóképet az továbbléphet a color & gamma menüpontra. A kitartóaknak mehet tovább:
– Vissza a madVR beállításokba. devices > kijelző kiválasztása > display modes > custom modes fül:
Ha kivesszük a pipát a show native res modes only elől, akkor látjuk, hogy igazából rengeteg üzemmódja van a monitornak.
– add-dal adjuk hozzá a fennmaradó módokat. Először felugrik egy ablak, itt ismét a kijelző maximális felbontása kell és a beállítani kívánt frekvencia hivatkozása két számmal (!). Ezek rendre 29, 30, 50, 59 lesznek. (Én ebből itt a 30-at elspóroltam, mert soha nem kellett még.)
– a madVR alapból megsaccolja az értékeket, de jellemzően nem találja el. Segítségül kell hívnunk a CRU-t, amiben ha ideiglenesen kitöröljük az egyik újonnan beállított frekvenciát és hozzáadjuk a madVR-ben beállítani kívántat, akkor át tudjuk másolni a CRU által helyesen megadott paramétereket. Figyeljünk arra, hogy nem csak a 6 felső - más sorrendben megadott - paramétert, hanem a sync polarity-t és a pixel clock-ot is külön át kell írnunk. (A CRU-ból cancel-lel kilépve nem veszik el az elmentett beállításunk.)
– Ha kijön a results in sorban a kívánt frekvencia (vagy legalábbis egy nagyon közeli érték), akkor jól csináltuk. Jöhet a test mode. Ha sikeres, akkor le tudjuk OK-zni. Majd esetleg a CRU féle restart után (a reset gpu a madVR-ben nálam nem nagyon ment) ki tudjuk próbálni a windows-ban, hogy működik e.
– Ha hozzáadtuk mindegyik kívánt módot, akkor a display modes fülre visszalépve írjuk be a list all display modes madVR may switch to sorba a kívánt frekvenciákat. 4K monitor esetén, az összeset felvéve így kell kinéznie:
2160p23, 2160p24, 2160p25, 2160p29, 2160p30, 2160p50, 2160p59, 2160p60
color & gamma:
Ezeket a beállításokat jobb esetben nem kell használnunk.
hdr:
Ha HDR képes a kijelzőnk és szeretnénk is használni, akkor passthrough HDR to display.
Ha nem, akkor tone map HDR using pixel shader az alábbi beállításokkal:
– target peak nits valahol 200 körüli értékkel. Nálam sötét szobában 150 a jó. Ki kell tesztelni.
– tone mapping curve: BT.2390
– color tweaks for fire & explosions: balanced
– highlight recovery strength: none
processing:
deinterlacing:
Itt azt tudjuk megadni, hogy váltott soros megjelenítés során miként aktiválódjon a deinterlacing. Az alábbi beállítások jellemzően jól működnek:
– Automtically activate deinterlacing when needed.
– If in doubt, deactivate deinterlacing
– Only look at pixels in the framce center.
Megjegyzendő, hogy DirectX 11-el gond szokott lenni és valamiér nem aktiválódik. Ekkor a beállítások > belső szűrők > videó dekóderek > video decoder konfiguráció > használjon D3D11 dekódernél ki kell venni a pipát.
artifact removal:
A tömörítési és egyéb zavaró képhibákra vannak elég jól működő, elfedő algoritmusok. Túl erősre nem érdemes állítani őket, mert akkor már felesleges mértékben belenyúlnak a képbe. Ami bevált:
– Reduce banding artifacts.
default banding strength: low
strength during fadein/out: high
– Reduce ringing artifacts.
– Reduce compression artifacts.
strength: 2
activate only if it comes for free.
image enhancements:
Itt további képmódosító algoritmusokat lehet bekapcsolni, de megfelelő forrás esetény ezekre semmi szükség.
zoom control:
Felirat eltolása, levágatlan fekete sávok érzékelésével és levágásával kapcsolatos beállítások. Szintén: megfelelő forrás esetén nem kell foglalkoznunk velük.
scaling algorithms:
Az átméretezési algoritmusok minőségi beállításai. Erősen teljesítményfüggő, ezért érdemes eljátszadozni a beállításokkal. Van egy kis segítő táblázat, hogy melyik milyen pozitív vagy negatív tulajdonsággal bír, ezt érdemes használni. Jellemzően a legjobb algoritumsok irreálisan sok erőforrás elégetésével dolgoznak.
chroma upscaling:
Színek felskálázása. Minden esetben aktiválódik, de a végső képre nincs akkora hatással, mint a képméretezések.
Ideális beállítás: Jinc + activate anti-ringing filter
Erőforrásigényes: super-xbr + sharpness: 100 + activate anti-ringing filter vagy NGU és a határ a csillagos ég.
image downscaling:
Kép leskálázása. A felhasználói szokásoknak megfelelően és a 4K kijelzőek elterjedésével ez kerül legkevésbé fehasználásra, bár ha a többszörös felskálázást aktiváljuk a következő pontban, akkor azért lehet fontos szerepe.
Ideális beállítás: Jinc + scale in linear light + activate anti-ringing filter (relaxed)
Erőforrásigényes: SSIM + 2D - strength 100% + scale in linear light + activate anti-ringing filter (relaxed)
image upcaling:
Kép felskálázása. Elég fontos része a képalkotásnak. Van lehetőség kényszeríteni, hogy mindenképpen duplázza vagy négyszerezze a képet, amivel bekerül a leskálázás is az elvégzendő műveletek sorába, úgyhogy elég erőforrásigényes, de kétségtelenül így lehet a legideálisabb képet előállítani. Szerintem amúgy nem éri meg.
Ideális beállítás: Jinc + activate anti-ringing filter + scale in sigmoidal light
Erőforrásigényes: doubling + NGU Anti-alias (medium) stb.
upcaling refinement:
További módosítási lehetőségek, nagyjából ugyanazok, mint a processing > image enhancements-nél. Ott inkább, itt egyértelműen nem ajánlott a használatuk.
rendering:
Rengeteg beállítás, de a javával nem kell foglalkozni. Ami érdekes lehet:
general settings:
– delay playback start until render queue is full.
– use Direct3D 11 for presentation + present a frame every VSync.
esetleg: enable automatic fullscreen exclusive mode (ha valamiért anomáliák lépnek fel, nem elég erős a gép, stb.)
smooth motion:
Ha nem jutunk dűlőre a frekvenciákkal, akkor a kép ismétlés vagy kihagyás elfedésére egy egész jó pótmegoldás.
dithering:
Árnyalás, ami elég fontos a jó képhez.
– Error Diffusion - option 2 + use colored noise + change dither for every frame
Ellenőrzésre lejátszás közben CTRL+J billentyűkombinációt érdemes használni. Itt a madVR fontos információkat mutat arról, hogy minden rendben megy e, milyen algoritmus aktiválódott, stb. Amire figyelni kell:
– 1 frame repeat every xx.xx minutes. Minél ritkább, annál jobb.
– dropped / repeated / delayed frames és presentation glitches ne legyen. Indításnál, képernyőmód váltásnál szokott lenni, az nem gond. Ha sok a hiba, akkor vessük össze az average stats értékét a vsync-kel. Ha előbbi a több, akkor a gép nem tudja elég gyorsan kiszámolni a képet.
Nagyjából ennyi lenne. Egy csomó útmutatót és anyagot felhasználtam az idők során, de a legtöbbet ennek a részletekbe menő beállításnak köszönhetem. Jó filmezést!