Avatar

László

Adminisztrátor

High-end médialejátszó Windows rendszerre
Nyolcadik hozzászólás tartalmát nézd meg.

Hosszas tesztelés után megjelent Foobar2000 zenelejátszó szoftver 2.0 verziója, amelynek immár elérhető 64 bites változata a modernebb rendszerekhez. Véleményem szerint sokat fejlődött. Frissítve lett hozzá az ASIO-t támogató komponens is. És itt nem állnak meg, már 2.1-es változatot építik és tesztelik. Foobar2000 zenelejátszó szoftvernek két nagy előnye van: Egyszerű és ingyenes. Ráadásul a megfelelő beállításokkal elég jó zeneminőséget produkál. Összességében jobbat, mint most bármi más. Körülbelül úgy kell elképzelni karakterügyileg, mintha CD/szalagos lejátszót cserélne az ember másik típusra.
Kép
Avatar

László

Adminisztrátor

Re: Médialejátszók
Miután sikerült megtalálni azt a beállítást, hogy a zenéket a memóriából játssza le a Foobar2000 v2.0 is, mindenhogy jobb lett a hangminősége, nem csak összességében. Ezenfelül megadtam neki is a real-time szál prioritást. Tehát nem túlzás kijelenteni, hogy Foobar2000 v2.0 lett az egyik legjobb zenelejátszó, megelőzve a Jrivert.
Avatar

László

Adminisztrátor

Re: Médialejátszók
Továbbra is meggyőző teljesítményt nyújt a Foobar2000 v2.0 x64 bites verziója optimalizált Windows 10 rendszeren. MMCSS beállítások szerintem alapértelmezetten a legjobbak. Minden máshoz hozzá kellett nyúlni. És ugye mivel jobban szólnak vele a zenék, és meglepően jól, mi javult még?
► Show Spoiler
Szóval tényleg csak dicsérni tudom a fejlesztőjét, és a közreműködőket, akik tesztelték vagy éppen dekódert készítettek hozzá. Több évtizedes tapasztalat meghozta a gyümölcsét minden téren. Egyedül a track váltással van némi probléma, lassan működik, a program nem tölti be előre a következő fájlt a memóriába, csak a váltáskor. Beállítások megváltoztatásával ezen lehet javítani, csak akkor optimalizált SoC minősége veszik oda, tehát ez így marad.
Avatar

László

Adminisztrátor

Re: Médialejátszók
Megjelent foobar2000 v2.1 végleges verziója. Szerencsére hangminőségileg nem lett rosszabb, mint az előző kész verzió, igaz, kicsit máshogy szól. Viszont érdemes használni, mivel tartalmaz olyan javításokat és továbbfejlesztéseket, amiket az előző nem. A 2.1-es béta verziók eleinte messze nem szóltak olyan jól, mint a 2.0 végleges, így külön öröm, hogy ezt is sikerült javítani a végleges kiadásban.

A program ingyenesen elérhető a következő linken:
https://www.foobar2000.org/download
Kép
Avatar

László

Adminisztrátor

Re: Médialejátszók
Memória alapú zenelejátszás, ASIO-n keresztül továbbítva a legkisebb bufferrel, valósidejű prioritással javítja Foobar2000 hangminőségét. Viszont ami még hátrányos, főleg az a Szálprioritás automatikus beállításának hiánya időkritikusra a foobar alkalmazáson belül. Érdekes módon az ASIO kiegészítőjénél ez már megvan. Ehelyett van 1-7-ig opció, ami messze nem éri el az időkritikus állapotot. Ez nem jó. Mert minden zenelejátszásánál át kell állítanom időkritikusra, amennyiben a legjobb hangminőség megtalálása a cél, olyan szinten, ami már részben hozza az LP "varázsát", mindenféle sistergések nélkül. Ami alapján már mindegy, hogy miről megy, csak jól teljesítsen. Tehát itt még van hova fejlődni, mert nem kényelmes folyamatosan átállítani ezt a tényezőt.
Kép
Avatar

László

Adminisztrátor

Re: Médialejátszók
Sikerült összebalhézni a fejlesztői fórumon néhány taggal az időkritikus szálprioritás opcionális beállításának kérése miatt. De megvan a siker. Igaz, alig aludtam, mert egész éjjel programoztam, kerestem a rést a pajzson, végül csak sikerült megváltoztatni automatikusan a szálprioritást időkritikusra. Itt tartunk 2025-ben. Foobar2000 programot kellett injektálni, és megfelelően módosítani a szálprioritásokat, hogy automatikusan Time critical legyen mind. 10 másodpercenként fut az injektált program, ami pont elég arra, hogy ne fusson állandóan, de folyamatos legyen az időkritikus szálbeállítás és mindez csak foobar2000 alkalmazáson belül történjen.
Kép
Avatar

László

Adminisztrátor

Re: Médialejátszók
Emeljük a tétet! Az időkritikus szálprioritás alapértéke 15 alapprioritásnak felel meg. Ezt a prioritást akkor kapja meg a Foobar2000 és ASIO komponens szálai, ha foobar alapjogosultsággal fut, tehát nem rendszergazdai módban. Legelső módosításom csak a szálprioritást változtatta meg időkritikusra, míg az alapprioritást több esetben "visszafokozta" 15-re, köszönhetően annak, hogy Foobar2000 MMCSS Audio módban volt. Ami "gyárilag" felvitte 21-re az alapprioritást, míg a szálprioritás alacsonyabban maradt, mint az időkritikus szálprioritás. A Windows belsőleg az alapprioritás és a szálprioritás kombinációjával határozza meg az adott szál végső ütemezési prioritását. Habár első módosítással is elég erős előrelépés történt vele hangminőségileg, de ha maximális prioritásokat akarjuk, ami még éppen nem kernelszintű, további fejlesztéseket igényel a program. A módosított új program normál jogosultságokkal ugyanúgy működött, mint eddig. Összességében mindenhogy jobb volt vele a hang, mint eddig bármivel. Viszont rendszergazdai módban 31 értékű az alapprioritás, valósidejű programprioritás és időkritikus szálprioritás mellett. Ennél tovább nincs, ez a max. felhasználói módban, kernelszintre felvinni viszont már a gyökérség kategóriája lenne, teljesen megfelelő így. Windows fejlesztői határozták meg, hogy mi érthető el alapjogosultságokkal, rendszergazdai jogosultságokkal és kernel szinten.
Kép
Avatar

László

Adminisztrátor

Re: High-end médialejátszó Windows rendszerre
High-end minőség elérése Windows alapú rendszereken v3

Foobar2000 legfrissebb 64 bites verziója (v2.24.5) elérhető itt: https://www.foobar2000.org/download
ASIO: https://www.foobar2000.org/components/view/foo_out_asio

Foobar2000-hez a legújabb programom elérhető itt:
datasheet/TotoWoodFoobar.zip
Telepítés:
  1. Másold a mappa tartalmát a C:\App mappába. (Ha nincs App mappa, hozd létre)
  2. Futtasd az install_totowoodfoobar-t rendszergazdai jogosultsággal.
A programot ne nyisd meg külön, mivel Windows szolgáltatásként működik!

Ez a szolgáltatás valós idejű prioritást, időkritikus szálprioritásokat és maximális alapprioritásokat állít be a foobar2000 alkalmazás illetve a 64 bites ASIO komponens szálaihoz. Nagyon alacsony erőforrás-igényű. A program szolgáltatásként üzemel, Windows rendszerrel együtt indul és záródik be.

Előző program továbbfejlesztett változata. Ha régebbi verziót telepítetted, annak mindkét fájlját töröld a foobar2000 főmappájából. A zenelejátszó sokkal jobban szól akkor, ha megkapja a maximális alapprioritásokat és a valósidejű prioritást. Viszont, hogy ne kelljen rendszergazdai módban elindítani, így annak módosítását kiköltöztettem külön programba, ami helyettesíti a rendszergazdai módot, amivel a legmagasabb prioritások elérhetőek. Továbbá legyen szó akármilyen Windows verzióról, vagy Foobar2000-ről, sokkal kompatibilisebb így, tehát ha programon belül akármit változtat a fejlesztője, az elérhető maximális prioritás mindig maradni fog. A program mingw64-el lett lefordítva, és annak függőségei integrálva. CRC32: 66B0E85A értékű program teljes mértékben megbízható. Lehetőleg ne adjál foobarhoz további bővítményeket, mert ha foobar ez miatt megakad, fagyhat a rendszer!

És ez még nem minden... Nagyon nem...
Futtasd a Windows-eszközöknél megtalálható Parancssort rendszergazdaként. És másold bele a következő parancsokat, feltéve ha rendszered hangminőségének további javítása a cél:

Kód: Egész kijelölése

bcdedit /set useplatformtick true
bcdedit /set disabledynamictick true
reg add "HKLM\System\CurrentControlSet\Control\Session Manager\kernel" /v GlobalTimerResolutionRequests /t REG_DWORD /f /d 1
Mit csinálnak ezek a beállítások?

Kód: Egész kijelölése

bcdedit /set useplatformtick true
  • Kényszeríti a rendszert, hogy az rendszer hardveres időzítőit használja a szoftveres időzítés helyett.
  • Stabilabb és pontosabb időzítést eredményez, ami csökkentheti a jittert (időzítési ingadozást).

Kód: Egész kijelölése

bcdedit /set disabledynamictick true
  • Letiltja a dinamikus időzítőt, így a rendszer nem csökkenti az időzítő felbontását energia-megtakarítás céljából.
  • Javíthatja a valós idejű audio alkalmazások stabilitását, mivel az időzítő állandó marad.

Kód: Egész kijelölése

reg add "HKLM\System\CurrentControlSet\Control\Session Manager\kernel" /v GlobalTimerResolutionRequests /t REG_DWORD /f /d 1
  • Engedélyezi, hogy a rendszer folyamatosan nagyobb időzítő felbontással működjön.
  • Egyes audio alkalmazások (pl. foobar2000 ASIO mód, DAW-ok) profitálhatnak ebből, mivel csökkenti a késleltetést.

Add hozzá ezt a .reg fájlt a regisztrációs adatbázishoz! (töltsd le mentés másként, és nyisd meg)
Letöltés: datasheet/mmcss.reg

Mit csinál a REG fájl?
  • Elsődlegesen MMCSS beállításokat javítja, amit alapértelmezett beállítással Foobar2000 is használ.
  • Prioritást ad az audio folyamatoknak, mind az általános, mind a professzionális audio alkalmazások számára.
  • Leállítja az audio háttérként való kezelését, így mindig kiemelt CPU-erőforrást kap.
  • Maximális időzítési precizitást állít be (Clock Rate, GlobalTimerResolutionRequests), csökkentve az audio latency-t.
  • GPU prioritást is megemeli, ha az audio-folyamat GPU-t is használ.
  • Jobb multitasking és kisebb jitter, mert a SystemResponsiveness értéke 10-re van állítva.
  • Letiltja az USB Selective Suspend funkciót, ami jobb audio teljesítményt eredményezhet.
  • Teljesen kikapcsolja a hibernációs fájlt (hiberfil.sys).
  • Letiltja a Modern Standby (Connected Standby) módot, ami egy újabb energiatakarékossági funkció a Windowsban.
Ezek a beállítások minimalizálják az audio drop-outokat, a latency-t és maximalizálják a teljesítményt professzionális és alacsony latency-s környezetben.

Ezek után indítsd újra a rendszered.
Természetesen egyéb megszokott módon is javítható a rendszer hangminősége. (pl. energiatakarékosság kikapcsolásával stb...)
Windows 11 24H2 rendszer hangminősége mostantól high-end.
Kép
Avatar

László

Adminisztrátor

Re: High-end médialejátszó Windows rendszerre
Egyelőre a foobar2000 v2.24.5 stabil verziója tűnik a legjobbnak az általam eszközölt módosításokkal (egy hozzászólással feljebb), nem pedig a fejlesztés alatt álló v2.25. Lehetséges, hogy ez később módosulni fog, abban az esetben frissítem ezt a posztot. v2.25 működésben jelentősen eltér már most, kérdés, hogy hangminőségileg sikerül-e a régebbi szintjét a későbbiekben elérni?
Válasz küldése