Jak zwiększyć priorytet aplikacji/procesu/usługi odpowiadającej za wydobywający się dźwięk?

0

Mam różne procesy działające w OS'ie, jak np audiodg.exe, RealtekAdSrv.exe, etc. ale żadna nie jest strictly odpowiadająca za dźwięk, bezpośrednio, bo jeśli wymutuje je w mixerze audio, to dźwięk z komputera nadal się wydobywa.

Jeśli natomiast np wyłącze sterownik dźwięku, to dźwięk przestaje grać.

Więc jest coś w systemie co odpowiada za dźwięk wydobywający się z komputera bezpośrednio - chciałbym temu czemuś zwiększyć priorytet, na wyższy, wysoki (oprócz oczywiście czasu rzeczywistego). Jak to zrobić?

0

Chyba nie rozumiem co masz na myśli przez zmiane priorytetu. Coś jak nice/renice ?

0
KamilAdam napisał(a):

Chyba nie rozumiem co masz na myśli przez zmiane priorytetu. Coś jak nice/renice ?

Mam na komputerze nie wiedzieć czemu wysokie opóźnienia DPC (latency), i czasem audio przegrywa walkę (jak rozumiem), i nie wydala z odtwarzaniem dźwięku, pojawiają się opóźnienia w dekodowaniu audio.

Chciałbym jakoś zwiększyć priorytet procesu/usługi dźwięki, w nadziei że problemy znikną.

0

No to renice na -20 powinno pomóc

0
KamilAdam napisał(a):

No to renice na -20 powinno pomóc

A tag Windows pan widział? :D

1

Kurde, przeczytałem: Mam różne procesy działające w iOS'ie

Albo alko, albo brudny monitor :D

Ale żeby nie było Windows renice się ciekawie googluje

0

Z tego co wiem to jakikolwiek załadowany sterownik w systemie jako rozszerzenie kernela musi mieć priorytet czasu rzeczywistego (jeszcze były jakieś podkategorie aby rozwiązywać problemy typu karta dzwiękowa jest na szynie USB która też potrzebuje sterownika). Jedynie czym można manipulować to priorytet procesu który "nadaje dźwięk" w stylu że odtwarzacz muzyki będzie miał priorytet wyższy zamiast normalny. Choć gdzieś kiedyś znalazłem info ze w windows 10 zmiana priorytetu u menadżerze zadań nie zawsze działa przez głęboko idące optymalizacje aby np. w counter-strike FPS nie spadał z 400 na 350. Ale jeśli u ciebie dźwięk ścina w różnych aplikacjach to problem jest raczej w jakimś konflikcie sterowników typu GPU vs Karta dźwiękowa bo dzisiaj to chyba każde GPU ma też część odpowiedzialną za dźwięk w celu przesyłania go po HDMI.

0

Kolega @Riddle wciąż walczy z tym nieszczęsnym DPC?
Już równo cztery miesiące :)

Tu koledze napisano: Jak obniżyć latencję DCP wywołaną najpewniej przez ACPI.sys?

0
Jedajo napisał(a):

Z tego co wiem to jakikolwiek załadowany sterownik w systemie jako rozszerzenie kernela musi mieć priorytet czasu rzeczywistego (jeszcze były jakieś podkategorie aby rozwiązywać problemy typu karta dzwiękowa jest na szynie USB która też potrzebuje sterownika). Jedynie czym można manipulować to priorytet procesu który "nadaje dźwięk" w stylu że odtwarzacz muzyki będzie miał priorytet wyższy zamiast normalny.

Zrobiłem to i to nic nie zmienia.

1
matix napisał(a):

Kolega @Riddle wciąż walczy z tym nieszczęsnym DPC?
Już równo cztery miesiące :)

Tu koledze napisano: Jak obniżyć latencję DCP wywołaną najpewniej przez ACPI.sys?

Tak, napisano 2 linki do dokumentacji Microsoftu, 3 linki do wikipedii, link acpica.org oraz wiki.osdev.org/AML. I teraz co konkretnie można z tego wyciągnąć?

Ze stron dwóch z dokumentacją wynika że żeby ogarnąć problem należy najpierw zainstalować tracelog.exe, a to z kolei można jak się jest częścią Windows Insider Program.

Także nie sądzę że lista linków, z czego 3 są linkami do wikipedii można uznać za odpowiedź.

0
Riddle napisał(a):

Zrobiłem to i to nic nie zmienia.

A dobra teraz doczytałem tu i w innych tematach że chodzi o zbyt długi czas pracy sterownika od acpi. Tu rzeczywiście na nic zmiana priorytetów zadań (obsługa DPC jest ponad tym) a debug tego bez dokumentacji sterownika oraz sprzętu/firmware jest zajęciem na wiele miesięcy o ile w ogóle możliwy. Ciężko tu coś doradzić oprócz wyliczania co można w biosie/systemie zmienić bo mogą to być rzeczy niepowiązane jak np. karta wifi (wg. tego wątku paru osobom pomogła wymiana link )

1

@Riddle: Możesz spróbować ustawić afiniczność CPU dla obsługi przerwań -> grzebiąc w rejestrze (https://docs.microsoft.com/en-us/windows-hardware/drivers/kernel/interrupt-affinity-and-priority) albo używając narzędzi typu (https://www.techpowerup.com/download/microsoft-interrupt-affinity-tool/)

Jeśli masz kolejkę różnych procesów do CPU#0, to przerwanie programowe też trafia do takiej kolejki. Jeśli masz danego core zajechanego to obsługa przerwań będzie wolniejsza. Przypisanie przerwania do dedykowanego CPU może poprawić sytuację.

Kolejna sprawa, Twój sterownik dźwięku pewnie ma przypisane jakieś przerwanie IRQ i można spróbować wymusić ustawienie większego priorytetu na obsługę takowego przerwania.
W rejestrze dodajesz klucz IRQ<numer przerwania>Priority i ustawiasz wartość na 1.

screenshot-20220830110116.png

W menadżerze urządzeń masz widok "Resource by type" i tam sekcję "Interrupt request", gdzie powinno się dać namierzyć przerwanie sterownika dźwięku.

0
yarel napisał(a):

Kolejna sprawa, Twój sterownik dźwięku pewnie ma przypisane jakieś przerwanie IRQ i można spróbować wymusić ustawienie większego priorytetu na obsługę takowego przerwania.
W rejestrze dodajesz klucz IRQ<numer przerwania>Priority i ustawiasz wartość na 1.

A jak znaleźć ten numer przerwania?

1
Riddle napisał(a):

A jak znaleźć ten numer przerwania?

  1. Start->uruchom -> msinfo32 -> Hardware resources -> IRQs -> i oglądasz listę : IRQ vs urządzenie
  2. Via power shell:
    a) pobierasz listę urządzeń dźwiękowch:
  Get-CimInstance -class Win32_SoundDevice | Select-Object -Property DeviceID,Name

U mnie wygląda to tak:
screenshot-20220831114323.png

b) Patrzysz na przydzielone do urządzenia IRQ dla danego ID urządzenia:

Get-CimInstance -class Win32_PnPAllocatedResource | where {$_.Antecedent -like '*IRQ*' } | where {$_.Dependent -like '*0285*'}

screenshot-20220831114428.png

0
yarel napisał(a):
Riddle napisał(a):

A jak znaleźć ten numer przerwania?

  1. Start->uruchom -> msinfo32 -> Hardware resources -> IRQs -> i oglądasz listę : IRQ vs urządzenie

Nie widzę tutaj Realtek High Definition Audio, co to znaczy?

1 użytkowników online, w tym zalogowanych: 0, gości: 1