Ve výchozím stavu přesouvají Windows zvuk mezi aplikacemi a tvým zvukovým hardwarem v 10milisekundových bufferech, a je to vlastní číslo Microsoftu, ne odhad: "by default all applications in Windows 10 and later will use 10-ms buffers to render and capture audio". Všechno ostatní — efekty, prostorové zpracování, převzorkování, bezdrátová linka — se přidává na tuhle podlahu. Pokud ti kroky přicházejí až po záblesku z hlavně, důvodem může být jedna z těch přidaných věcí, a oddíly níže je probírají jednu po druhé.
Cesta, kterou zvuk projde, s vlastními čísly Microsoftu
Dokument Low Latency Audio od Microsoftu rozděluje cestu přehrávání na fáze a k těm, které řídí, uvádí čísla. Krátká verze:
| Fáze | Kolik stojí | Zdroj |
|---|---|---|
| Hra zapíše zvuk do bufferu | — | — |
| Zvukový engine ho přečte a zpracuje, přičemž načte efekty jako audio processing objects (APO) | 1,3 ms ve Windows 10 a novějších, dřív ~12 ms pro aplikace ve float a ~6 ms pro celočíselné | Microsoft |
| Každý efekt v řetězci přidá svoje | "The latency of the APOs varies based on the signal processing within the APOs" — žádné pevné číslo | Microsoft |
| Engine zapíše do bufferu, ze kterého čte ovladač | 10 ms ve výchozím stavu; minimum deklaruje zvukový ovladač | Microsoft |
| Ovladač ho přesune do hardwaru, který ho může zpracovat znovu | Závisí na zařízení, nezveřejněno | — |
| Reproduktor nebo sluchátka | Fyzika | — |
Dva fakty z toho dokumentu stojí za to nosit s sebou:
- Těch 10 ms není zákon, je to výchozí hodnota. Od Windows 10 deklaruje ovladač nejmenší buffer, který zvládne, a aplikace si o něj může říct. Příklad Microsoftu: zabudovaný ovladač HDAudio "has been updated to support buffer sizes between 128 samples (2.66ms@48kHz) and 480 samples (10ms@48kHz)".
- Říct si o to může jedině aplikace. "If an application needs to use small buffers, then it needs to use the new AudioGraph settings or the WASAPI
IAudioClient3interface, in order to do so." Neexistuje žádné nastavení Windows ani hodnota v registru, která by hru donutila požádat o menší buffer. Žádný ladicí software to za tebe neudělá, ten náš nevyjímaje.
Plyne z toho jeden zajímavý důsledek. Microsoft uvádí, že když si o malý buffer řekne jedna aplikace, "all applications that use the same endpoint and mode will automatically switch to that small buffer size", a engine se vrátí na 10 ms, jakmile ta aplikace skončí. Nízkolatenční aplikace, která už na stejném výstupu běží, tak může zmenšit buffer, který používá tvoje hra, aniž by o tom hra věděla.
Příčina 1 — bluetooth sluchátka, která otevřou mikrofon
Pokud používáš bluetooth sluchátka a zároveň do nich mluvíš, tahle příčina se tě týká, a je zdokumentovaná, ne folklor.
Windows hrají stereo přes A2DP a pro mikrofon používají Hands-Free Profile — a obojí najednou neumí. Stránka Bluetooth Classic Audio od Microsoftu říká, že na Windows 11 přepnou Windows z A2DP na HFP ve chvíli, kdy "an application opens the input (microphone) endpoint" nebo kdy "an application creates an output (playback) stream with the category set to Communications". HFP běží na 8 kHz (úzkopásmově) nebo 16 kHz (širokopásmově), v monu, a "Windows automatically resamples audio as needed for the currently selected profile" — takže hra hrající zvuk na 48 kHz se převzorkuje dolů na linku v kvalitě telefonního hovoru v tom okamžiku, kdy tvůj hlasový chat otevře mikrofon.
Proto sluchátka znějí v menu dobře a v zápase hrozně: není to stejná zvuková cesta.
Co s tím:
- Na soutěžní hraní použij drátová sluchátka nebo vyhrazená bezdrátová sluchátka na 2,4 GHz s vlastním přijímačem USB. Ta drží jednu cestu a profily nepřepínají.
- Pokud musíš zůstat na Bluetoothu, použij samostatný mikrofon, aby nic neotevřelo vstupní endpoint sluchátek a zařízení zůstalo na A2DP.
- Zkontroluj si, jaký kodek jsi vlastně dostal. Windows vyberou první kodek, který podporují obě strany, v pořadí aptX Adaptive, AAC, aptX Classic, SBC — tabulka dostupnosti podle verze Windows je na téže stránce Microsoftu.
- Pokud se zařízení špatně páruje nebo endpointy úplně zmizí, je to jiná závada: opravná karta na ni je Bluetooth.
Bluetooth linka přidává čas na zakódování, přenos a dekódování v obou směrech a žádný výrobce nezveřejňuje jediné číslo, které by platilo napříč čipsety a adaptéry — takže tady žádné tisknout nebudeme. Co dokumentace výrobců doloží, je mechanismus a přepnutí profilu popsané výš. Na rozhodnutí to stačí.
Příčina 2 — vzorkovací frekvence, kterou je potřeba převádět
Pokud hra vydává 48 kHz a tvoje zařízení je nastavené na 44,1 kHz — nebo naopak — engine převzorkovává, což je práce a není zadarmo. Windows nabízejí příznak, který si aplikace může nastavit, když "it is important to avoid resampling in the audio engine", a to ti říká, že ta konverze je natolik skutečná, že Microsoft dal vývojářům způsob, jak se jí vyhnout.
Co s tím:
- Klikni pravým na ikonu reproduktoru, otevři Nastavení zvuku a pak vlastnosti svého výstupního zařízení.
- Najdi výchozí formát (obvykle pod Upřesnit) a nastav ho na 24 bitů, 48000 Hz, pokud dokumentace tvého hardwaru neříká něco jiného. Hry i Windows pracují v 48 kHz.
- Nastav stejnou frekvenci i v konfiguračním softwaru svých sluchátek, pokud nějaký mají.
- Něco pusť a ověř, že to pořád funguje. Pokud se rozbije konkrétní aplikace, vrať nastavení zpátky — tohle je vratné a nestojí to za to, přijít kvůli tomu o aplikaci.
Příčina 3 — stoh efektů, o kterém jsi nevěděl, že je zapnutý
Každý efekt v cestě je audio processing object a vlastní formulace Microsoftu je, že se jejich latence liší podle zpracování uvnitř nich. Prostorový zvuk, virtuální surround, „vylepšení“, vyrovnávání hlasitosti, EQ od výrobce sluchátek a neztlumený druhý výstup — každý z nich přidává fáze.
Prostorové zpracování je pro hráče ta zajímavá položka, protože je to skutečná výměna, ne omyl: existuje proto, aby se dal snáz odhadnout směr, a je to další fáze v řetězci. Posuď ho uchem, ne principiálně.
Co s tím:
- Otevři vlastnosti svého výstupního zařízení a najdi záložku s vylepšeními nebo efekty. Vypni všechno a poslouchej.
- Dočasně vypni prostorový zvuk a zahraj si kolo v čistém stereu. Pokud se zhoršil směr a zlepšilo časování, znáš teď svou vlastní výměnu.
- Stejným způsobem vypni EQ a virtualizaci v softwaru svých sluchátek. Jedno po druhém.
- Zapni zpátky jen to, co ti chybělo.
Správná odpověď tady neexistuje a kdokoli ti tvrdí, že existuje, ten test na tvých uších s tvými sluchátky nespustil.
Příčina 4 — exkluzivní režim: co si koupíš a co to stojí
Aplikace může zařízení otevřít v exkluzivním režimu a Microsoft přesně popisuje, co to znamená: "the data bypasses the audio engine and goes directly from the application to the buffer where the driver reads it from. However, if an application opens an endpoint in exclusive mode, then there's no other application that can use that endpoint to render or capture audio."
Vlastní stránka Microsoftu o exkluzivním režimu je ještě přímější: "Exclusive-mode streams seize the audio endpoint—all system sounds, notifications, and audio from other applications are silenced."
Tatáž stránka nese i důležitou moderní výhradu. Od Windows 10 dovoluje IAudioClient3 používat velmi krátké periody i proudu ve sdíleném režimu, což "provides latency comparable to exclusive mode while preserving system sound mixing and interoperability" — exkluzivní režim tedy už není ta automatická výhra, kterou byl v roce 2010.
Zaškrtávátko ve Windows — Povolit aplikacím, aby měly nad zařízením výhradní kontrolu — samo o sobě nic do exkluzivního režimu nepřepne. Rozhoduje jen o tom, jestli to aplikace, která si o to řekne, smí dostat. Nechat ho zapnuté nestojí nic; vypnout ho znamená, že aplikace, které o to stojí, to nedostanou.
Pro hru, u které potřebuješ i hlasový chat, prohlížeč a systémové zvuky, je exkluzivní režim obvykle špatná výměna. Řekni si to nahlas, než ho půjdeš hledat.
Co tady w0a dělá a co ne

Co dělá. Stránka Regedit tweaky má ve skupině ZVUK přesně jednu položku a jmenuje se Priorita zvukových vláken (MMCSS). Nastavuje Scheduling Category úlohy Audio multimediálního plánovače na High, pod HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Multimedia\SystemProfile\Tasks\Audio. Stránka k té jedné položce jsou Zvukové tweaky.
K mechanismu buď přesný. Zvýšení plánovací priority buffer nezmenší — způsobí, že zvukové vlákno spíš poběží ve chvíli, kdy přijde jeho termín. Na vytíženém počítači to odstraní pozdní buffery a lupance, které s nimi chodí, a to slyšíš. Na nečinném počítači tam není co získat.
Co nedělá. Nemění velikost tvého bufferu — o tu si může říct jedině aplikace. Nemění tvoji vzorkovací frekvenci. Neinstaluje zvukový ovladač. Nesahá na prostorový zvuk. A nezapisuje SystemResponsiveness, který je v každém internetovém seznamu ladění zvuku: pod 10 se ta hodnota stejně chová jako výchozí a na počítači, který už na 10 nastavený je, jsme naměřili, že zápis 0 věci zhorší. Stránka Fix ji přesto umí opravit na výchozí hodnotu Windows, pokud ji změnil starší nástroj.
Na stránce Optimalizace je příbuzný přepínač — Držet profil plánovače her v kategorii High (MMCSS Games) — a zaslouží si stejnou poctivost. Týká se jen titulů a zvukových stohů, které si opravdu zaregistrují úlohu u multimediálního plánovače. Hry, které si žádnou nezaregistrují, nechává beze změny, a produkt přesně proto u toho přepínače netvrdí nic o snímkové frekvenci.
Pokud je rozbitý sám zvukový stoh — zvuk vypadává, zařízení zmizelo, starší nástroj nechal plánovací hodnotu někde podivně — opravná karta Zvuk restartuje zvukové služby a zapíše zpátky výchozí hodnotu Windows. To je oprava, ne tweak, a nezávisí na tom, jestli tu změnu udělal w0a.
Co tady software nedokáže
- Nedokáže donutit hru požádat o menší buffer. To je rozhodnutí aplikace, v kódu té aplikace.
- Nedokáže odstranit čas na zakódování a dekódování na bezdrátové lince.
- Nedokáže zabránit Windows v přepnutí bluetooth sluchátek na hands-free profil, když něco otevře jejich mikrofon — tohle chování je záměrné a zdokumentované.
- Nedokáže odstranit minimální velikost bufferu deklarovanou ovladačem. To je to, co tvůj hardware umí.
Zbývá krátký poctivý seznam toho, co je opravdu tvoje: přenos (drát proti bezdrátu), vzorkovací frekvence, stoh efektů a to, jestli se zvukové vlákno naplánuje včas. Projdi si ty čtyři věci a odstranil jsi všechno, co odstranit jde.
Související
- Zvukové tweaky
- Zvuk
- Bluetooth
- Jak snížit latenci (input lag): co software dokáže zkrátit a co ne
- Proč mi míření připadá opožděné
Ze zhruba tuctu fází mezi kliknutím a změnou pixelu vlastní software tři, zbytek patří firmwaru, obrazovce a hře: Jak snížit latenci (input lag): co software dokáže zkrátit a co ne
Pomohla ti tahle stránka?
Co chybělo, nebo co nefungovalo? Čteme každou jednu takovou zprávu.
Jestli tahle stránka problém nevyřešila, napiš nám — uveď, který článek jsi četl, a my ten článek opravíme.