Forum PCLab.pl: Kapitalne pozycjonowanie 3D i jakość dźwięku w grach - customowe biblioteki dsound.dll, x3daudio1_7.dll, OpenAL32.dll - Forum PCLab.pl

Skocz do zawartości


Otwarty

Ikona Najnowsze pliki

Strona 1 z 1
  • Nie możesz rozpocząć nowego tematu
  • Nie możesz odpowiadać w tym temacie

Kapitalne pozycjonowanie 3D i jakość dźwięku w grach - customowe biblioteki dsound.dll, x3daudio1_7.dll, OpenAL32.dll Najlepszy dźwięk w grach - dsoal/InditectSound/Alchemy/X3D Audio HRTF

#1 Użytkownik jest niedostępny   deton24 

  • beware
  • PipPipPipPipPip
  • Grupa: Forumowicze
  • Postów: 7309
  • Dołączył: So, 27 Lis 10

Napisany 24 Luty 2018 - 01:17

Kapitalne pozycjonowanie 3D i jakość dźwięku w (czasem także nowych) grach -
dsoal, Inditect Sound, Alchemy, 3D SoundBack, Xear3D EX.

Czyli jak przywrócić efekty dawnej sprzętowej akceleracji audio
(i nie tylko)
porzuconej części składowej pakietu DirectX - DirectSound, za pomocą jednej z bibliotek dsound.dll (a do tego wstrzyknąć OpenAL)
a także sprawdzanie zasadności ich stosowania w nowszych tytułach,
przywracanie EAX w starszych grach
+ upgrade eax.dll do v. 4.0 w dowolnym tytule z EAX starszej wersji).
Do tego kilka słów o OpenAL, problemach z działaniem, a także odpalaniem HRTF (również za pomocą dsound.dll, czy x3daudio1_7.dll)

Jak zapewne zorientowani w tematach architektury systemów operacyjnych wiedzą, wraz z premierą Windows Vista, dobrotliwy Micro$oft, pozbył się Hardware Abstraction Layer (HAL), a w konsekwencji przestała działać sprzętowa akceleracja w kartach dźwiękowych. W rezultacie, EAX w grach przestał działać, a posiadacze kart Creative, i nie tylko, problemy te zaczęły się od premiery Windows Vista. Poradzono sobie z tym na bardzo wiele sposobów, a dokładniej, różnych implementacji bibliotek dsound.dll na potrzeby przywrócenia dawnych utraconych funkcjonalności. Biblioteki te robią to samo co kiedyś karty dźwiękowe sprzętowo, ale na warstwie programowej, z małym narzutem na CPU (problem ponoć na kartach X-Fi potrafi rozwiązać w jakimś stopniu włączenie Game Mode, przynajmniej w niektórych tytułach).


Tutaj dla rozjaśnienia jest też tabela starszych gier, gdzie wyszczególnione jest, który tytuł ma wsparcie DirectSound, a który OpenAL. Niektóre mają wsparcie dla obu (czasem np. wtedy dsound z Alchemy działa lepiej). Np. w grach z Miles odpowiednia komenda włącza DirectSound lub EAX (jeśli obecny). Lista zalinkowana zaraz poniżej jest też o tyle istotna, że czasem można tam znaleźć jak w ogóle włączyć w niej DirectSound w danej grze, już nie wspominając że znajduje się tam cała lista ustawień dla Alchemy:
http://web.archive.o...s/AllItems.aspx

Co większość wie, owe przywrócenie dawnych funkcjonalności dla dźwięku, przez odpowiednią bibliotekę dsound.dll równa się przywróceniu EAX. Ponieważ praktycznie żadne nowe gry nie wspierają EAX, to i zainteresowanie tematem bibliotek DirectSound przycichło. Ale mało osób wie, że zastosowanie odpowiedniej biblioteki dsound.dll, równa się też w różnych przypadkach, z przywróceniem dźwięku DirectSound3D czyli efektu przestrzennego 3D (z kapitalnym efektem - również w stereo) w grach które obsługiwały w momencie premiery DirectSound, mimo że np. nie mają EAX; a także same odwołania DirectSound (choć to de facto prawie wszystkie tytuły DirectX, ale w przypadku nowszych tytułów, nie używające DirectSound w równym stopniu co dawniejsze gry). W praktyce, nawet do względnie nowych gier jak Battlefield 3, Max Payne 3 (w mniejszym stopniu GTA V), z powodzeniem można używać np. Alchemy, pomimo iż sam EAX od początku nie był wspierany przez silnik RAGE, ale który posiadał, i posiada tam wsparcie dla DirectSound, orzy czym warto zauważyć, że pierwsze GTA które wyszło na tym silniku (IV), zostało wypuszczone w czasach gdy Windows XP miał się całkiem dobrze - gra na XP może brzmieć inaczej niż na Vista+; przy czym DirectSound jest niczym innym jak częścią pakietu DirectX, stąd jej umieszczenie w katalogu gry, analogicznie do bibliotek Reshade/SweetFX w postaci D3D9/D3D10/D3D11/DXGI.dll, może być nadal używane (choć w różnym stopniu) a biblioteka gdy zostaje wstrzyknięta, może być widoczna np. w wykazie bibliotek w wypadku błędu aplikacji, w logach systemowych dziennika zdarzeń, lub nie mogąc dać się usunąć podczas działania aplikacji w tle (choć jest wyjątek w postaci GTA V gdzie Process Explorer pokazuje odwołania do dsound.dll, a biblioteka może zostać usunięta w trakcie działania gry, przy czym sama gra używa głównie XAudio2, i odwołuje się do x3daudio2_7.dll, której implementacji w postaci x3daudio1_7_hrtf można używać równolegle po zmianie nazwy biblioteki (która również może zostać usunięta w trakcie gry). Dlaczego w obecnej sytuacji spektogramy pokazują różnice w dźwięku w porównaniu do zwykłej wersji gry, i w dodatku je słyszę, choć bibliteki dają się usunąć? Mogę wysnuć hipotezę, że biblioteka jest ładowana do pamięci, przynajmniej w części, w momencie pierwszego uruchomienia dźwięku w grze, lub po maksymalizacji (na własne oczy doświadczyłem błędu podczas wstrzykiwania SweetFX, gdy działał on pomimo usunięcia biblioteki, choć usunięcie takie po włączeniu aplikacji jest na ogół zawsze niemożliwe). Warto też wiedzieć, że czasami dsound.dll bywał w grach wykorzystywany do wstrzykiwania innych bibliotek. Generalnie dziś dsound.dll nadal znajduje się w systemach, tylko że mikser współcześnie zachowuje się inaczej przy próbie jej użycia niż przy systemach 9.x.
Co za tym idzie, z powodzeniem można używać implementacji biblioteki dsound.dll do przywrócenia EAXu, i efektów dawnej akceleracji sprzętowej w nowych grach, ale również DirectSound - ale od teraz, kiedy EAX już nie jest wspierany, a wyparły go zaawansowane silniki dźwiękowe poszczególnych gier, to we współczesnych tytułach z efeketem uzyskania trochę lepszego efektu przestrzennego, lub kosmetycznie innej lub lepszej jakości dźwięku; lub kiedy gra wspiera natywnie DirectSound - z ogromnym zyskiem dla przestrzenności i często jakości dźwięku, i pozostaje tutaj bez znaczenia czy gra w ogóle wspiera EAX, bo biblioteka będzie nadal działać tłumacząc same odwołania DirectSound z gry (z pewnymi wyjątkami, o których niżej). Pierwotnie przywrócenie EAX było głównym celem popularnego oprogramowania Creative Alchemy, które jest jedną z implementacji bibliotek dsound.dll dla współczesnych systemów). Aplikacja Alchemy, lub my, kopiujemy po prostu dsound.dll do folderu z grą (+ dodatkowe dll, czy ini, czasem stosownie edytując je) i to wszystko. Jeśli w danym tytule nie działa prawidłowo (błędy, lub przekłamania) po prostu warto sprawdzić inną z wymienionych niżej bibliotek.
Czasami też trzeba włączyć EAX w opcjach gry (niektóre gry wymagają tego by dopuścić do nadawania odwołań DirectSound), rzadziej trzeba dopisać jakąś linijkę czy zmienić wartości jakiejś komendy w pliku konfiguracyjnym gry czy jej konsoli żeby EAX zadziałało. W większości, i we współczesnych tytułach, nie ma na ogół takiej potrzeby. Za to spotkałem się nawet, że gra potrafi wyłączyć wsparcie sprzętowe, czy prawidłową obsługę wstrzykiwania dsound.dll gdy nie będzie w trybie kompatybilności z Windows XP SP2 (WOW, Timeshift). Czasami też, (jak np. w IndirectSound) można zagłębić się w readme, i plik konfiguracyjny dsound.ini (również w przypadku Creative Alchemy), czy przy DSOAL - alsoft.ini. Generalnie wujek Google potrafi wiedzieć jak we współczesnych systemach zmusić do działania w danym starszym tytule DirectSound.

Zanim przejdziemy do rzeczy, polecam odwiedzić stronę z polecanymi słuchawkami do gier: https://www.audiofan...wki-dla-gracza/
a potem lekturę tego poradnika naszego zaprzyjaźnionego forumowicza:
https://pokazywarka....sound-in-games/
pod kątem poprawnej konfiguracji karty dźwiękowej w grach na przykładzie SBZ.
Gwoli dobrego startu z tematem dobrego pozycjonowania w grach.

Lista różnych implementacji bibliotek DirectSound, wraz z krótkim nakreśleniem różnic:

1. Creative Alchemy - przywraca dźwięk 3D (tłumaczy odwołania DirectSound na OpenAL), i EAX. Zasadniczo tylko dla posiadaczy kart Creative, ale jak zajrzycie tutaj, to dowiecie się że ktoś sprytny opracował jak odpalić Alchemy na wszystkich kartach:
http://forums.thedar...-any-soundcard/
Alternatywnie zobaczcie jeszcze tutaj:
http://forum.halomap...c&topicID=50211

Normalnie Alchemy jest dostępne wraz ze sterownikami do danego modelu karty dźwiękowej, na stronie: http://support.creative.com/

Zasadniczo mój najczęstszy wybór spośród innych bibliotek jak dsoal i IndirectSound. Zapewnia najwyższą jakość dźwięku, choć trochę słabsze pozycjonowanie niż wymienione dwa, choć nadal wiele lepsze niż domyślny dźwięk w wielu, niekoniecznie najstarszych grach uruchamianych na współczesnych systemach.

Ktoś np. kiedyś zgłaszał problemy z dźwiękiem z Alchemy w CS:GO. W podobnym wypadku, warto spróbować innej biblioteki niż Alchemy.
Alchemy ma swoje własne .ini konfiguracyjne, kopiowane razem z biblioteką przez dedykowaną aplikację Alchmy. Dla niektórych tytułów zalecana jest edycja ini lub parametrów wg. zaleceń stąd:
http://web.archive.o...s/AllItems.aspx
https://gbatemp.net/...ettings.348191/

Warto też uprzedzić, że po instalacji Alchemy w systemie, mogą pojawić się jakieś problemy w ew. wykorzystywaniu innych bibliotek wymienionych w następnych punktach, w późniejszym czasie. Czasem przestawały działać, i już, a czasem w przypadku tytułu natywnie obsługującego OpenAL, jeden z potencjalnych problemów miał dotyczyć wymuszania zmieniania pliku soft_oal.dll na ct_oal.dll od momentu instalacji Alchemy. Zaś w innym poradniku kazali to samo zmieniać na OpenAL32.dll. Warto poczytać zalinkowane niżej wątki w razie problemów. Ale jak dobrze pójdzie, to unikniecie wszelkich problemów jak ja. Na aktualnym W10 na obecną chwilę wszystkie biblioteki działają na zmianę, bez zarzutów. Nie sprawdzałem tylko żadnych tytułów z natywnym OpenAL, ale przy tych zasadniczo nie stosuje się bibliotek Alchemy/dsoal/IndirectSound i innych, tylko najwyżej aktualizuje stare wersje bibliotek OpenAL. W starszych grach czasem trzeba uaktualnić OpenAL dla włączenia HRTF:
https://amp.reddit.c...necraft/cagd3lb
http://kcat.stranges...l.html#download (odnowiony link z wpisu).
W grach z natywnym OpenAL można zamienić sterownik na wspaniały Rapture3D z Dirt 3 z własnym HRTF.

HOAL

Dla kart Creative, które są bazowane na Host OpenAL (HSOAL) (wszystkie po X-Fi, które nie mają już wykonywania akceleracji sprzętowej) zmiana nazwy pliku z sens_oal.dll na ct_oal.dll w lokalizacji c:\windows\syswow64 (64 bit) lub c:\windows\system32 (32 bit) wymusi na Alchemy używanie sterownika Host OpenAL zamiast domyślnej biblioteki, w rezultacie zapewniając lepszą jakość dźwięku w grach, czy też - bardziej uwydatni efekt 3D, zwłaszcza na słuchawkach.

Notatka stąd:
https://pcgamingwiki...d_card#Creative

Rozwiązanie to ma nie działać na Audigy, X-Fi i X-Fi Titanium. Lista wspieranych kart przez Host OpenAL jest tutaj:
https://www.touslesd...23&v_code=56040


Jest jednak jeden filmik, gdzie typ odpala jednak HSOAL na X-Fi Xtreme Gamer:
https://www.youtube....h?v=V2IiNemRjmw
Trochę tam widać jakie pliki są, i co robi. Wychodzi jednak na to, że na tych kartach HSOAL działa wtedy tylko gdy gra jest na OpenAL. Chyba nie zadziała to na Alchemy.

Gdyby ktoś miał problemy na HSOAL z nieprawidłowym, znikającym dźwiękiem, należy użyć wersji 2.17. Wszystkie od 2.40 są wadliwe w niektórych grach. Instrukcja po angielsku znaczyła mniej więcej tyle co:
- pobierz SB X-Fi Series Support Pack 4.0, tylko nie instaluj zawartych sterowników. Zainstaluj z tego pakietu tylko XFTI_PCDRV_LB_2_17_0009.exe

Podmiana wersji EAX gry
W tym miejscy warto wspomnieć, że mało osób wie, ale biblioteki EAX od co najmniej wersji 2.0 da się "po chamsku" podmienić na wersje nawet 4.0 w obrębie folderu gry, np. stąd:
https://www.dll-files.com/eax.dll.html (v. 4.0.1.0 - nowszej v.4 nie znalazłem nigdzie, od v.5 nie ma już kompatybilnej wstecz biblioteki eax.dll którą by tak po prostu można podmienić).
W konsekwencji podmiany dostajemy już EAX Advanced HD 4.0, co oznacza że od teraz, wszystkie reverby będą w znacznie wyższej jakości. Testowałem co prawda na razie w dwóch tytułach (Max Payne 2, Far Cry 2), ale nic nie stoi na przeszkodzie by sprawdzić ten sposób w innych.

2. dsoal -
Download:
http://kcat.strangesoft.net/dsoal.zip
Wątek autora:
http://www.gamesas.c...eax-t82876.html
Wersja 2018
http://kcat.stranges...t/dsoal-bin.zip
2018 + tablice HRTF: https://yadi.sk/d/z9ub_Pbj3aQgXz

Tłumaczy odwołania DirectSound na OpenAL. To drugie jest zasadniczo spadkobiercą EAXa, i w założeniu posiada sporo efektów z tego pierwszego. Ponieważ standard jest nadal wspierany, i do tego otwarty (no może nie tak do końca), to i w konsekwencji lepszy. DSOAL opiera się na OpenAL Soft, który jest aktywnie rozwijany. Wspiera np. HRTF który można użyć do spersonalizowanej kalibracji dźwięku przestrzennego na swoich słuchawkach (HRTF zaprojektowano głównie z myślą o słuchawkach - manualna kalibracja HRTF - https://amp.reddit.c...ecraft/cagd3lb)
W brzmieniu biblioteki, w odniesieniu do Alchemy, dostajemy jeszcze lepsze pozycjonowanie, zdarza się najczęściej, że i lepszą jakość dźwięku.
Spoiler
Warto też zwrócić uwagę, że na różnych kartach, tryby 5.1 i 2.0 potrafią się lekko różnić w kwestii dźwięku; oczywiście poza samą zmiana sposobu pozycjonowania dźwięku na wszystkie kanały, co np. w GTA V, można zmienić niezależnie od ustawienia w Panelu Sterowania, w opcjach gry.
W przypadku starszych gier, biblioteka DSOAL sama w sobie ma nie wspierać wersji EAX powyżej 2.0, ale emuluje 2.0, używając na wyjściu OpenAL ("EAX 2.0 calls will also be appropriately translated"). Nie wiem co prawda, co będzie na wypadek użycia wersji 3.0 i wyższych przez grę, ale entuzjaści EAXa w starych grach mogą też pokombinować z linkiem na forum thedarkmod z punktu 1 - Alchemy dla wszystkich, i uzyskać działanie również nowszych wersji EAX (zwłaszcza w grach opublikowanych ze starszą wersją biblioteki niż 4, do której można podmienić każdą starszą).
Generalnie autor pisał te biblioteki głównie z myślą o Wine i Linuxie, i zaznaczał że kompletnie nie jest w stanie przewidzieć jej działania pod Windowsem... ale jak widać na załączonym obrazku - działa, i jest moją ulubioną biblioteką zaraz po Alchemy które ma lepszą jakość dźwięku, choć słabsze pozycjonowanie, nawet porównując obie z wyłączonym HRTF.

DSOAL może powodować problemy na W10 1809.

Alternatywny link z instrukcją:

https://www.nexusmod...gas/mods/65094/
(możemy tu także wyczytać że dla poprawnego działania HRTF ustawienia próbkowania w Panelu Sterowania powinny pokrywać się z używanym HRTF [choć to też nie jest tak, że przy ustawienieniu np. 192kHZ całkowicie 3D przestaje działać - jest sporo słabsze, choć w efekcie dźwięk może mieć mniej efektu studni])

Żródła DSOAL:

http://repo.or.cz/w/dsound-openal.git

Aktualizacja dsoal-aldrv.dll plikiem BIN\Win32\soft_oal.dll na aktualny, po zmianie nazwy, zawsze stąd:

https://openal-soft.org/#download

Obszerna lista gier wspierających DirectSound:
https://docs.google....I-gVTpyhc/edit#

Lista gier z wbudowanym HRTF:
https://docs.google....WiTYx6Ss8k/edit
Dolby Atmos jest słabe w kwestii obsługi HRTF (tak nawiasem, polecam testy IDrinkLava na YT w Overwatch).


3. IndirectSound - otwarta konkurencja dla Creative Alchemy, z wyłączonym póki co wsparciem EAX, choć, tak jak powyższe biblioteki, wykorzystuje trick, który sprawia że gra myśli że ma do czynienia z urządzeniem ze wsparciem EAX, i często dzięki temu otwiera swoje podwoje dla tego standardu (oczywiście w tym wypadku również obliczenia przebiegają programowo - stąd w grach z problemami z płynnością, może pojawić się do pewnego stopnia zauważalny narzut na CPU, ale na ogół znikomy).
IndirectSound od dsoal odróżnia to, że jest stworzone do pracy w sposób nie wykorzystujący OpenAL, tylko XAudio2. Brzmieniowo ustępuje Alchemy, a następnie dsoal, ale zapewnia lepsze pozycjonowanie od Alchemy, ustępując temu w dsoal który wyposażony jest w HRTF. IS może posiadać lepsze wsparcie dla pewnych tytułów, w których powyższe nie działają (choć Alchemy działa niemal zawsze). Biblioteka jest nadal rozwijana przez autora, który zbiera różne zastrzeżenia i udziela aktywnego supportu, np. w tym wątku:
https://www.vogons.o...680081be9a5cae8

4. Realtek 3D SoundBack - biblioteka działająca na podobnej zasadzie co Alchemy. Po prostu przywraca DirectSound, i najprawdopodobniej znów stara się emulować w swój własny sposób EAX, (z tego co pamiętam) dając OpenAL na wyjściu. Wrzucam gdyby te powyższe nie działały, lub ktoś był spragniony testów. Biblioteka jest od dawna porzucona w wersji 0.1 beta.
https://community.pc...k-3d-soundback/
Bodaj nie udało mi się odpalić tego na karcie która nie była Realtekiem.

5. Xear3D EX - dla kart na chipsecie C-Media (czyli także trochę Asusów, np. co najmniej niektóre Xonar).
Dostępne w sterownikach danej karty, w panelu:
"Open the Asus control panel
Tick "GX" mode
In games configuration files, force native implementation name as reported by ALC_ENUMERATION_EXT in EnumerateWin32
Notes
Turning off GX mode after playing games is advised to avoid glitches in other applications"


Uwaga
Na samym końcu wspomnę o fakcie, że biblioteka dsound.dll była w przeszłości wykorzystywana do różnych celów przez moderów w GTA V. W niektórych poradnikach znajdziecie instrukcje, by usuwać min. dsound.dll przed wejściem do GTA Online. Nie mogę zagwarantować że nie wyłapiecie za tą bibliotekę bana w trybie multiplayer. Zwłaszcza że tam bana można dostać za byle co obecnie (albo za nic).

Wątpię co prawda by były jakieś cheaty oparte na dsound.dll w CS:GO, ale tutaj analogicznie zalecam ostrożność, i poczytać we własnym zakresie. Bo sam nie wiem. Swego czasu chodziły słuchy że nawet za Reshade/SweetFX można było wyłapać bana.
Doczytałem że musi być jeszcze w config.cfg w C:\Program Files (x86)\Steam\steamapps\common\Counter-Strike Global Offensive\csgo\cfg\cfg
wklepane:
snd_legacy_surround="1" żeby gra nadawała DirectSound. [ta komenda tyczy się ponoć każdej gry na silniku Source]
Dobrą robotę robi(ło) kiedyś też ponoć snd_occlusion="1"
dsp_enhance_stereo="1"
Potem config.cfg ustawiamy we właściwościach tylko do odczytu. Bo inaczej gra go resetuje przy każdym uruchomieniu.

W ogóle jakiś czas temu w CS:GO włączono HRTF, ale przyznam że nie wiem czy zaimplementowano to na OpenAL, czy jakoś inaczej.
Po prostu jeszcze nie tak dawno mówiono, że taki był silnik gry - pozycjonowanie było jak w CS:S, i w przypadku jak komuś nadal było za mało, to bardzo dobrze sprawował się tryb Scout w nowszych kartach od Creative (np. SoundBlaster Z) - to takie coś niby lepszego od CMSS3D, choć przy poprawnej konfiguracji karty, i dobrych słuchawkach, stosowanie tych systemów może być zbędne). Ale generalnie obecnie dźwięk w CS:GO słychać że jest trochę przebajerzony pod względem pozycjonowania, i mnie się obecnie w miarę podoba, choć jest jest pewien efekt studni. W opcjach CS:GO niektórzy mają HRTF. Ja np. nie miałem, choć efekt był. HRTF zasadniczo nie działa poprawnie na głośnikach - został zaprojektowany pod kątem słuchawek, ale zdarza się że i na głośnikach pomaga. W wypadku CSGO nie wiem tylko, czy brak pojawienia się jako takiej opcji HRTF (pomimo że działał) nie był związany z brakiem wybrania słuchawek w opcjach gry i/lub w Panelu Sterowania.


X3D Audio HRTF -
Implementacja x3daudio1_7.dll wstrzykująca HRTF w grach bazujących na Unreal Engine 4 lub innych używających X3dAudio, XAudio2, takich jak Arma 3, Skyrim, Fallout 4 (i z tego co wiem PUBG).
Lista znajduje się tutaj: link (nie wszystkie gry na UE4 muszą używać XAudio2, zobacz)

Download: https://github.com/k...3daudio1_7_hrtf

Polecam używać jeśli podmiana którejś z dsound.dll powyżej nie przyniesie oczekiwanych rezultatów.

Aby użyć innego profilu HRTF z mojego linka z dsoal (tam jest cała paczka, w tym nawet dwa profile 24 bit 48000 lub 44100) wystarczy podmienić wewnątrz katalogu HRTF wybrany preset na tą samą nazwę, stary w folderze usuwając (w razie crasha w danej aplikacji, można sprawdzić czy pomoże przywrócenie domyślnego HRTF, lub biblioteki dla innej architektury 32/64).



(OpenAL) Rapture3D -
Jest chyba najwspanialszą implementacją OpenAL, i w grach z co najmniej tej listy (używających natywnego OpenAL) powinna działać (są tam też wyszczególnione instrukcje instalacji):
Mój link
Otrzymujemy kapitalny HRTF (Amber) do włączenia w Speaker Layout>Headphone Stereo (Compat.).
W Dirt 3 brzmi nieziemsko. Instrukcja instalacji dla Dirt 3:
PCGamingWiki

Demonstracja:
Mój link Mój link

Download:
http://www.bluerippl...e_2.7.4_win.exe (strona producenta) https://yadi.sk/d/1DGrbOde-Ana0g (to samo + wypakowane dll do ew. wrzucenia obok exe gry)

Na przykładzie S.T.A.L.K.E.R.a ktoś może stwierdzić, że dźwięki z Rapture3D mocno odbiegają od oryginału, ale są różne HRTF do wyboru. Niemniej nie możemy używać własnych plików mhr. Możemy też wyłączyć całkowicie HRTF, używając samej tylko tej implementacji OpenAL, wybierając głośniki w Layout (domyślne ustawienie po instalacji).

Warto jeszcze spojrzeć tutaj:
http://satsun.org/audio/
Gdzie jest napisane, że gry z Miles przechodzą również czasem przez OpenAL, głównie tytuły na silniku Source (gdzie obsługę dsound.dll włącza się komendą snd_legacy_surround 1).
Jest też informacja że gry na Unreal Engine 2.5 też używają OpenAL - lista gier: https://pcgamingwiki...real_Engine_2.5 ale należy wyłączyć w opcjach audio w grze używany sterownik systemowy (odznaczyć opcję "system driver"). Wtedy gra zamiast dsound.dll używa OpenAL.
Warto zajrzeć na wyżej wymienioną stronę. Jest sporo ciekawych informacji pod tamtejszą listą gier odnośnie różnych problemów.

______
Niewykluczone, że jeśli dany tytuł wspiera natywnie OpenAL, większość, lub wszystkie z wymienionych implementacji bibliotek dsound.dll nie będą miały w większości przypadków zastosowania. Poza tym też warto wspomnieć, że w każdym z tytułów, poszczególne biblioteki mogą działać inaczej. W razie problemów w grach z natywnym OpenAL, zapraszam tutaj (zwłaszcza po sprawdzeniu działania wymienionego niżej w punkcie 2. - dsoal).
https://steamcommuni.../?id=1185662247 (tutaj w pewnych przypadkach pomaga też w starszych tytułach, usunięcie openal32.dll z folderu gry, aby włączyć wsparcie sprzętowe, lub nawet instalacja Alchemy i pochodnych).
W kwestii OpenAL w grach, polecam jeszcze spojrzeć na ten poradnik https://steamcommuni...1&insideModal=1
Dla gier używających natywnego OpenAL. Do użycia customowej biblioteki w takiej grze, można po prostu na stałe podmienić bibliotekę soft_oal.dll stąd http://openal-soft.org/#download w katalogu Windows:
"On a 64-bit machine, copy the DLL from \openal\bin\Win32 to Windows\SysWOW64 and the one from \openal\bin\Win64 to Windows\system32.
On a 32-bit machine, only copy the DLL from \openal\bin\Win32 to Windows\system32." Tylko polecam przynajmniej kopię sobie wcześniej zrobić.
Albo ew. podmienić soft_oal/OpenAL32 wewnątrz katalogu gry.
Tutaj jeszcze trochę więcej informacji:
https://www.systemsh...hp?topic=8371.0

Polecam zagłębić się w temat poszczególnych implementacji samego OpenAL. Jest OpenAL soft (na którym oparty jest DSOAL), jest oficjalna zamknięta od Creative, i jest też Adalin AeonWave 3.40, i zaawansowana, płatna - Rapture3D, która charakteryzuje się jeszcze lepszymi efektami 3D od dsoal z HRTF (bazowane na OpenAL soft). Darmowo dostępna jest edycja game, którą można ściągnąć.


Zasadniczo nic też nie stoi na przeszkodzie, aby przetestować w danej grze z OpenAL, zarówno natywny plik OpenAL32.dll w naszym katalogu Windows (czyli implementację od Creative) vs implementację OpenAL Soft. Warto tylko wiedzieć, że wersje 32 i 64 bit tych bibliotek używają tej samej nazwy, zatem OpenAL32.dll z katalogu SysWOW64 będzie raczej wersją 64 bit. Z katalogu System32 - 32 bit.

Więcej do poczytania o EAX, DirectSound, DirectSound3D:
https://pclab.pl/art17707-8.html

Więcej do poczytania o dźwięku przestrzennym, i rozmaitych rozwiązaniach odnośnie wirtualizacji dźwięku:
https://pcgamingwiki...irtual_surround

Na koniec ciekawostka.
dsound.dll z Alchemy w trybie Game Mode odciąża CPU np. w Winamp lub Foobar używając wsparcia sprzętowego karty dźwiękowej. Wystarczy wkleić dsound.dll (Alchemy) wraz z .ini obok głównego exe w lokalizacji zainstalowanego odtwarzacza (lub użyć do tego aplikacji Alchemy).

Jedna z customowych wersji Alchemy dla Audigy w okolicach 2008 (Creative ALchemy 1.00.03 for Live!), naprawiała akcelerację sprzętową dla wszystkich trybów karty dźwiękowej - normalnie działa to tylko w Game Mode.

http://forum.pclab.p...-Windows-Vista/

Możliwe że konieczna jest instalacja całej paczki po wcześniejszym odinstalowaniu, bo wklejony dsound.dll z ini crashuje Foobara, lub zwraca błąd odtwarzania, a z normalnym Alchemy działa bez zarzutów (dsound.dll w katalogu odtwarzacza po włączeniu muzyki w trybie DS jest wtedy chroniony przed usunięciem - dla ASIO i WASAPI odciążenie raczej nie będzie miało zastosowania).
Generalnie też odsłuch z plikiem dsound.dll z działającego Alchemy, nie przyniósł jak dla mnie zbyt pozytywnych rezultatów brzmieniowych. A przypominam że używamy na wyjściu w Foobarze wtedy DS, czyli DirectSound. Generalnie do użycia w Foobarze OpenAL jest zupełnie inna wtyczka - Crystal Mixer, i ona rzeczywiście robi porządną robotę.

Co jeśli chcemy HRTF w grze która nie wspiera DirectSound (DSOAL) lub XAudio2 (x3daudio1_7_hrtf) lub nie posiada go natywnie?

Aby użyć HRTF w takiej grze, należy użyć systemu wirtualizacji dźwięku.
Polecanym narzędziem dostępnym dla wszystkich kart jest HeSuVi, min. ze względu na obsługę tablic HRTF z DSOAL/OpenALSoft.
Inne podobne znane narzędzia to CMSS3D i Scout Mode (Creative), Xear 3D Virtual (ASUS, C-Media), Pure Virtual 7.1/5.1 (ASUS Xonar, Creative Sound BlasterX series).
I dla wszystkich kart: Windows Sonic, Dolby Atmos, Razer Surround.
https://pcgamingwiki...irtual_surround

Ten post był edytowany przez deton24 dnia: 14 Wrzesień 2019 - 06:23


#2 Użytkownik jest niedostępny   deton24 

  • beware
  • PipPipPipPipPip
  • Grupa: Forumowicze
  • Postów: 7309
  • Dołączył: So, 27 Lis 10

Napisany 25 Luty 2018 - 14:31

Lista gier, w tym kilku nowszych tytułów, ze wsparciem DirectSound i wykaz silników dźwiękowych w grach:
http://satsun.org/audio/

Dodatkowa lista starszych gier (& OpenAL):
http://web.archive.o...s/AllItems.aspx
https://gbatemp.net/...ettings.348191/

https://en.m.wikiped...ith_EAX_support (niektóre tytuły na liście tak na prawdę nie mają EAX, ale mają wsparcie dsound lub OpenAL)

RWAudioCore, Miles i inne silniki dźwiękowe na liście, wykorzystywane w grach jeszcze w czasach Windows 9.x/XP miewają najlepszą kompatybilność z bibliotekami powyżej, gdyż z myślą o istnieniu działającego poprawnie DirectSound były pisane, czasami są też niezbędne do przywrócenia 5/7.1, ale czasami też wpływają trochę na brzmienie w tych grach które są nowsze, a raczej DirectSound na pozór nie wykorzystują (a przynajmniej gdzie DirectSound nie stanowi głównego API renderującego dźwięk), jednak wywołania biblioteki przez wrzucenie jej do folderu z grą i tak następuje, bo dsound.dll jest po prostu częścią pakietu DirectX. (np. tak jest w The Crew). Co za tym idzie, Creative Alchemy, dsoal, IndirectSound, można przetestować we właściwie każdej grze z DirectX. Załadowanie biblioteki z lokalizacją można przetestować np. crashując grę, i przeglądając dziennik zdarzeń.

...
Dodatkowe tytuły spoza listy Creative Alchemy:
GTA V (prawdopodobnie wszystkie części; V może też działać z x3daudio1_7_hrtf i dsound.dll, choć żaden nie wstrzykuje HRTF jako takiego, ale coś tam się w dźwięku zmienia - https://yadi.sk/d/L1o9RhAI3aiFdJ)
Sniper Elite (prawdopodobnie wszystkie części, choć SE4 ma natywną opcję HRTF)
Max Payne (prawdopodobnie wszystkie części; w jedynce dzięki temu następuje naprawa znikających dźwięków, niekompatybilne z dsoal, w trójce też)
NFS Pro Street, Hot Pursuit 2010 (i wszystkie NFS poniżej chyba do dwójki lub trójki włącznie, w tym Most Wanted, i Carbon, Undercover)
The Crew, Battlefield 3 (tylko IndirectSound), Battlefield Bad Company 2 (tylko IS), Rayman 2, Total Overdose (po ustawieniu DirectSound w opcjach), CS GO (po zmianach w konsoli/configu).
TRON 2.0 - może zadziałać na DSOAL, nie tylko na Alchemy, po reinstalacji sterowników do karty dźwiękowej, lub wgraniu starszej wersji DSOAL.
Battlefront II (2005) - problemy z dźwiękiem może naprawić to i lub wyłączenie bass management i ustawienie 5.1 lub 7.1 w systemie lub na karcie.

PS. Znalazłem też ciekawy poradnik naszego forumowicza ReznoR-a dot. ustawień
Sound Blaster Z, Zx, ZxR pod kątem pozycjonowania w grach. Niektóre rady mogą być pomocne:
http://pokazywarka.p...sound-in-games/

Dorzucę jeszcze bardzo fajny artykuł o technikaliach dot. pozycjonowania dźwięku w grach, i o rozmaitych efektach.
Archiwalny, co prawda.
http://ixbtlabs.com/...und-technology/

Ten post był edytowany przez deton24 dnia: 29 Wrzesień 2019 - 01:15


#3 Użytkownik jest niedostępny   patrykvel 

  • Uzależniony od forum
  • PipPipPipPipPip
  • Grupa: Forumowicze
  • Postów: 2516
  • Dołączył: So, 05 Sie 06

Napisany 25 Luty 2018 - 20:44

Słyszysz, że dzwonią ale nie wiesz w którym kościele. Czekałeś z publikacją artykułu 10lat?

W nowych grach niczego nie poprawisz oraz nie przywrócisz, bo nie ma czego. EAX został prawie od razu po wprowadzeniu Visty zapomniany, więc aktywować go można tylko w starych grach które go posiadają. To samo z dźwiękiem 3D, po wprowadzeniu Visty gry zaczeły przechodzić na WASAPI przez co nie ma problemu z dźwiękiem wielokanałowym. CMSS-3D w przypadku posiadania starej karty możesz sobie aktywować w każdej gdzie bez problemu, nie trzeba robić żadnych sztuczek. Dzisiaj i tak ma to mniejsze znaczenie, bo windows 10 posiada 2 algorytmy do HRTF, własny windows Sonic oraz płatny Dolby Atmos, co nie zmienia faktu, że większość kart i tak posiada własne algorytmy.


Cytuj

Czyli z powodzeniem można używać bibliotek do przywrócenia EAXu, i akceleracji sprzętowej w nowych grach, od teraz głównie celem uzyskania kapitalnego efektu przestrzennego, i bez znaczenia jest czy gra w ogóle wspiera EAX, bo biblioteka będzie nadal działać (z pewnymi wyjątkami, o których niżej). Loader, lub my, kopiujemy po prostu dsound.dll do folderu z grą (+ew. dodatkowe dll czy ini) i to wszystko.

No tutaj to już poleciałeś. To tak jakbyś powiedział, że do Wiedzmina 3 wprowadzisz DX9 wraz z jego nowinkami graficznymi jakie wprowadzał kopiując pliki DLL do folderu z grą.

Ten post był edytowany przez patrykvel dnia: 25 Luty 2018 - 20:52


#4 Użytkownik jest niedostępny   deton24 

  • beware
  • PipPipPipPipPip
  • Grupa: Forumowicze
  • Postów: 7309
  • Dołączył: So, 27 Lis 10

Napisany 25 Luty 2018 - 23:11

Cytuj

W nowych grach niczego nie poprawisz oraz nie przywrócisz, bo nie ma czego.

Witam pierwszego śmiałka w temacie!
Miło Cię poznać.

Wraz z premierą Visty, DirectSound został odcięty przez wprowadzenie UAA. Od tamtej pory nie ma już bezpośredniej, niskopoziomowej ścieżki dojścia do sterowników audio z poziomu aplikacji. Dopiero zalinkowane biblioteki, zajmują się ponowną implementacją DirectSound (w Alchemy i dsoal - tłumacząc dodatkowo dsound na OpenAL), występując w formie końcowej w systemie jako WASAPI, który jest ostatnim ogniwem niskiego poziomu, który pozostał w systemie, poprzez który aplikacja 3D bez natywnej implementacji OpenAL, jest w stanie działać na potrzeby dsound/openal. Ale ponieważ jest to nadal tłumaczenie - translacja, emulacja procesów DirectSound zachodzących dawniej natywnie w systemie (dzięki dsound dziejących się bezpośrednio na karcie), to od teraz CPU liczy to co wiąże się z ponownym przywróceniem działania dsound, gdzie Alchemy nawet potrafi liczyć na CPU takie efekty jak EAX (działa nawet na Realtekach, i najprawdopodobniej nie jest przez nie emulowany jak było kiedyś, ale to biblioteka zajmuje się od teraz również translacją odwołań EAX). Dopiero bardzo niedawno MS próbowało naprawić swój błąd, wprowadzając w Windows 8 sprzętowe wyładowanie wielostrumieniowego stosu WASAPI na potrzeby miksowania i DSP, ale działa to tylko w aplikacjach UWP, i nawet nie wiem specjalnie z jakim skutkiem, a samo to, też może wymagać odpowiednich implentacji po stronie gry.
MS, najprawdopodobniej z przyczyn kompatybilnościowych i wizerunkowych, nigdy nie napisał sam podobnej biblioteki, która z powodu ich własnych wewnętrznych zmian w systemowej architekturze audio, emulowała by od teraz swoje stare API, bo z potencjalnym narzutem obliczeniowym i możliwością wielu problemów kompatybilnościowych z każdą aplikacją z osobna, a to kolejne urwanie głowy. Nikomu z MS nie opłacało się ciągnąć dalej tematu. Zasadniczo OpenAL załatwia sprawę, ale jak zwróciłem uwagę, wiele gier go po prostu nie używa. Stąd nadal biblioteki będące przedmiotem tego tematu - nadal mają zastosowanie w najnowszych grach (to jest tak niedorzeczne, że aż ciężko uwierzyć, ale właśnie w taki sposób MS spaprał ludziom robotę na wiele lat, dziś o dsound mało kto pamięta).

Nie wszystkie nowe gry (mniejszość) będzie korzystała natywnie z OpenAL, że nie łykną zalinkowanych bibliotek dsound (lub dsound->OpenAL).
Próba zakotwiczenia biblioteki, jeśli pomyślna, ma natychmiastowy skutek w działaniu i odsłuchu, bez względu na wsparcie EAX.

No i jeszcze dlaczego z nowymi grami można robić takie rzeczy?
Generalnie możesz sobie hookować dll'ki do woli w każdej aplikacji, o ile dana aplikacja z niej (s)korzysta. Wystarczy sobie ją wrzucić do katalogu z exe, i będzie miała pierwszeństwo przed tymi w Windzie.
Na tej samej zasadzie działa SweetFX, i dzięki temu można odpalać gry w nowszych wersjach API DirectX (przynajmniej z takimi się zgłaszają w np. Afterburnerze). Jedynie graficznie zaraz po podmianie biblioteki dxgi/d3dx się nic nie zmienia, bo nie ma po stronie gry jak na razie żadnych załadowanych efektów, i sama nie wykorzystuje nowo dostępnych odwołań, bo nie wie o ich istnieniu. Dopiero reshade/sweetFX robi z nich pożytek. Tak w dużym uproszczeniu.
Inaczej jest z dsound. Bo tutaj chodzi o to co dawniej było wykorzystywane w systemie, a obecnie nie jest.

dsound.dll, zmusza Windowsa do zmiany sposobu miksowania. Tak jest w dokumentacji. Więc skoro tak piszą w źródłach, to nie musisz mieć racji, że Winda jest pod tym względem cacy. O szczegółach poczytasz w załączonych plikach tekstowych i zalinkowanych stronach projektów.
Twierdzenie że gry od czasów Visty, i zlikwidowania HAL, korzystają z WASAPI, jest wierutną bzdurą.
Sprawdzisz to w prosty sposób. Odpal Foobara z wtyczką WASAPI, ustaw ją w output i zobacz, że w Panelu Sterownia->dźwięk, przestają się poruszać paski obok urządzenia głośniki. Zmień teraz znów na DS (systemowe źródło domyślne) i brawo - paski znów wracają. Teraz odpal bez żadnej biblioteki z wymienionych, jakąś grę - brawo, paski się poruszają. Nie używa WASAPI.

W takim razie, jak najprościej usłyszeć zmiany wprawadzane przez DirectSound/OpenAL?
Prosty test. Wrzuć sobie dsoal do jakiejś gry. Znajdź sobie jakieś jednorodne źródło dźwięku w jednym punkcie. Rusz kamerą o 180 stopni. Teraz to samo, bez dll'ki. Brawo - dźwięk robi się kompletnie zbity, a odczuwalność lokalizacji źródła dźwięku, gdy jesteś do niego obrócony tyłem, jest dużo gorsza. Wszystko jest zbite ze sobą.

CMSS-3D jest tylko wydmuszką. Testowałem, wiem jak działa. Polega głównie na zmianie barwy dźwięku, i agresywnej ingerencji w sygnał, tak aby dodać przestrzeni, głównie kosztem wierności sygnału wejściowego. Np. muzyka brzmi w tym często źle. Dla porównania odpal sobie którąś z zalinkowanych bibliotek. Zauważysz że dźwięk jest czystszy, a nie ma jakiś dziwnych reverbów, zapiaszczenia - a dodanie przestrzeni w scenie, nie dzieje się kosztem zmiany całego sygnału, aby za wszelką cenę brzmiał przestrzennie. Bo to jest jedyne co CMSS-3D i inne efekty jak Dolby Atmos, i Windows Sonic, czy SRS, które działają z reguły na wyższej warstwie, mogą robić. To nie tylko HRTF robi całą robotę.
Bo np. IndirectSound nie wiem czy w ogóle go ma, bo nie wykorzystuje wcale OpenAL, a działa na dźwięk, w zbliżony sposób do reszty bibliotek, i może też działać na niższym poziomie (tu głównie mam na myśli zmiany w mixie i obróbkę od aplikacji przez odwołania z dsound.dll na wejściu). Czyli w dużej mierze mamy przepaść w pozycjonowaniu. HRTF jest częścią składową OpenAL. CMS3D korzysta z funkcji HRTF, ale za to zobacz z jakimi skutkami ubocznymi, i nie ma dostępu do aplikacji jako takiej. Choć muzykę sobie możemy zawsze odpalić przez WASAPI, ale to nie to samo co dostęp do części składowej pakietu DirectX przez silnik gry, jakim jest wykorzystywanie odpowiedniego dsound.dll.
Dźwięk przez biblioteki DirectSound/OpenAL zmienia się min. przez zmianę sposobu mixu na poziomie aplikacji. Jak biblioteka dokonuje translacji odwołań dsound, jak to się dokładnie wszystko dzieje - poczytaj, masz opasłe pliki readme różnych bibliotek, albo znajdź sobie innego jelenia który będzie Ci tłumaczyć jak działają,

Bo się chłopie wypowiadasz o rzeczach, o których nie masz żadnego, nawet najmniejszego choćby pojęcia, myląc je ze sobą, i mieszając co tylko się da, i powielając kompletne, wierutne bzdury. Twoja wypowiedź jest całkowitą kompromitacją, albo otwartą prowokacją.

Jedyne czego nie zaneguję w tej wypowiedzi, to że jak gra nie miała w ogóle oryginalnie EAXa, to nie da się go ponownie umieścić w grze. Jedyna rzecz zgodna z prawdą. Z tym że jedyną funkcją bibliotek(i) z tematu nie jest dodanie EAXa, ale również zmiana sposobu mixu dźwięku na poziomie aplikacji, kiedy gra wysyła swoje odwołania do dsound.dll.

Głównym punktem wyjścia w mojej wypowiedzi jest to, że to nie jedynie HRTF, na wzór CMSS-3D, SRS, Atmos, Sonic, w przypadku dsound robi robotę, ale mówiąc dla laików, ogólnopojęta zmiana sposobu odtwarzania dźwięku przez system uzyskana dzięki jednemu z dawniej działających na warstwie sprzętowej, elementów składowych pakietu DirectX, z którego korzystają gry. Te "ulepszacze" wymienione wyżej, działają na wyższej warstwie. Nie mają bezpośredniego dostępu do gry. Możesz je włączać i wyłączać niezależnie od aplikacji - działają zawsze nałożone na sygnał końcowy, ale nie mają dostępu do tego, co się dzieje wcześniej - na poziomie aplikacji, do jej odwołań. Jaki by HRTF nie był, choćby i działał, cenię go bardziej niż CMSS3D, a zdecydowanie dzięki samemu wykorzystaniu OpenAL, choć to są systemy o dwóch różnych zastosowaniach, i mogą się równocześnie uzupełniać. Wykorzystanie wspomnianych bibliotek dsound.dll jest kolejnym krokiem do uzyskania lepszego pozycjonowania. Czy z "polepszaczami" czy bez.

Na przykładowe potwierdzenie zasadności używania Alchemy i pochodnych dla gier bez EAX, ale wykorzystujących DirectSound, niech posłuży ta wypowiedź z niegdyś oficjalnej listy wsparcia Alchemy, jako przykład reprezentatywny dla wielu współczesnych tytułów:
NFS Carbon
"While this games is not EAX, NFS-Carbon is surround, and a basser/fuller sound is produced when Creative ALchemy is used." I to samo dzieje się z tuzinem innych tytułów. Znajdzie się tam u źródła też więcej wypowiedzi w podobnym tonie. W przypadku części z tych tytułów, i tak nie ma EAX, do samego wykorzystania np. Alchemy to nie gra roli.


Można narzekać na wprowadzone zmiany przez UAA, ale z perspektywy zwykłego odtwarzania muzyki w systemie, jej niektóre założenia mają uzasadnienie, bo miały z różnych przyczyn technicznych pozytywny wpływ na brzmienie. Jednak z do dziś dotkliwymi konsekwencjami w grach. HAL przepadło. Zamknięty rozdział.

Warto nawet po 10 latach o tym przypominać, bo MS w tej kwestii tak zamieszało, że mało kto już dzisiaj pamięta o co w tym wszystkim tak na prawdę z perspektywy zwykłego gracza czy słuchacza chodzi. A DirectSound, czy OpenAL, do dziś można zmusić do działania, w wielu, czy to w nowszych, czy to starszych tytułach, a to jest bardzo cenna wiedza dla ludzi lubiących dobry dźwięk w grach.

Ten post był edytowany przez deton24 dnia: 23 Lipiec 2018 - 01:08


#5 Użytkownik jest niedostępny   patrykvel 

  • Uzależniony od forum
  • PipPipPipPipPip
  • Grupa: Forumowicze
  • Postów: 2516
  • Dołączył: So, 05 Sie 06

Napisany 26 Luty 2018 - 01:12

Ale jak chcesz wprowadzać obsługę directsound kiedy gry używają innych API? Nawet sami autorzy programów które podałeś napisali, że chodzi o stare gry. Trafiły się GTA V oraz CS GO które z jakiś przyczyn posiadają to stare API(domyślnie nieaktywne), ale to tylko wyjątki. Sprawdź na innych grach(ja sprawdziłem).

Ten post był edytowany przez patrykvel dnia: 26 Luty 2018 - 01:13


#6 Użytkownik jest niedostępny   deton24 

  • beware
  • PipPipPipPipPip
  • Grupa: Forumowicze
  • Postów: 7309
  • Dołączył: So, 27 Lis 10

Napisany 26 Luty 2018 - 02:12

edit. Wspominałem już wcześniej że przy tytułach z natywnym wsparciem OpenAL z założenia nie ma co grzebać. (edit. czasem trzeba wyłączyć system diver w opcjach audio, lub inaczej).
Np. biblioteka OpenAL32.dll może znajdować się wtedy w katalogu głównym gry, obok binarki. Wszystkie inne gry używające DirectX można wypróbowywać z Alchemy czy dsoal i IndirectSound. Najlepsze efekty może to przynieść w starszych grach, i silnikach, które natywnie wykorzystywały DirectSound. Efekty mogą się różnić od aplikacji.
Generalnie można powiedzieć, że dzięki translacji na OpenAL w Alchemy lub dsoal, można osiągnąć wyższą jakość dźwięku, niż pierwotnie osiągano w danej grze w czasach Windows XP, ale i ogólnie lepszą w np. tych nowszych tytułach, które nadal nie wspierają OpenAL, a dzięki wstrzykiwaniu odpowiedniej biblioteki dsound.dll, będą mogły.

Nic też nie zaszkodzi zalinkowaniu małej listy. (Post #2)

Warto też gdzieś poszukać aktualnej listy gier z natywnym OpenAL.

Poza tym, nie tylko najnowszymi grami człowiek żyje. A także nie tylko kiedyś żył samym EAXem (i w tym temacie nie głównie o niego się rozchodzi - sam fun z lepszego dźwięku mimo braku EAXu w wielu tytułach jest bezcenny).
Stąd nadal można się tutaj czegoś ciekawego dowiedzieć, bo temat wykorzystywania bibliotek dsound pod katem współczesnych gier zupełnie nie umarł. Jedynie UWP kwestia bibliotek nie dotyczy, bo nie da się wstrzyknąć żadnej własnej konwencjonalnymi metodami (chyba że podmiana w katalogu Windows). No i warto uświadamiać ludzi co do OpenAL i HRTF, bo nie zawsze od razu działa prawidłowo po instalacji gry.

Ten post był edytowany przez deton24 dnia: 13 Grudzień 2018 - 03:36


#7 Użytkownik jest niedostępny   deton24 

  • beware
  • PipPipPipPipPip
  • Grupa: Forumowicze
  • Postów: 7309
  • Dołączył: So, 27 Lis 10

Napisany 01 Sierpień 2018 - 05:10

Mały update tutaj, a najbardziej aktualna rewizja tekstu - na blogu DP.

Chciałbym streścić ten długi wpis do jednego krótkiego.
W wielu starszych grach, i nie tylko, najoptymalniejszym wyborem biblioteki na poprawę dźwięku, który przy np. obecności DirectSound w danej grze, powoduje opad szczęki, jest
dsoal + tablice HRTF: https://yadi.sk/d/JfWiYFTT3ZebL6
Efekt jest jeszcze lepszy niż myślałem początkowo tworząc ten temat. Zatem, tam gdzie EAX nie jest potrzebne, zupełnie wystarczy dsoal zamiast Alchemy. Efekty 3D z odpowiednią wybraną przez nas tablicą HRTF są kapitalne. Jeśli coś nie działa, używacie Alchemy (nawet na integrach - http://forums.thedar...any-soundcard/) lub IndirectSound.
To są główne trzy biblioteki które mogą pomóc wycisnąć ostatnie soki z dźwięku w Waszych grach.

#8 Użytkownik jest niedostępny   kamilos69 

  • Orator
  • PipPipPipPip
  • Grupa: Forumowicze
  • Postów: 768
  • Dołączył: Cz, 03 Kwi 08

Napisany 01 Sierpień 2018 - 17:37

99 procent użytkowników PC używa zintegrowanej karty dźwiękowej + słuchawki marnej jakości.
Producenci gier bardzo dobrze o tym wiedzą.

#9 Użytkownik jest niedostępny   deton24 

  • beware
  • PipPipPipPipPip
  • Grupa: Forumowicze
  • Postów: 7309
  • Dołączył: So, 27 Lis 10

Napisany 01 Sierpień 2018 - 20:44

To nie do końca w tym rzecz.
Bo te trzy główne biblioteki są w pewnej mierze własnościowe. Tzn. często OpenSource, ale do zastosowań komercyjnych bez pytania nie mogą takiego czegoś użyć. Muszą pewnie wynegocjować jakąś zgodę.
Do tego jest kwestia interesów podmiotów trzecich których technologia jest w bibliotece. Tutaj może być podobnie
Poza tym, ostatnimi czasy już coraz mniej słyszalne są zmiany wprowadzane przez te biblioteki, nawet ta z HRTF, bo na przykładzie ostatnich iteracji Frostbite jest na tyle dobry dźwięk, że tylko właśnie dsoal z HRTF nie czynił go gorszym, niekoniecznie lepszym, a trochę innym, zaś np. Indirect Sound (jedyne co działało akurat w BF3) + poszerzone stereo w BF3 to kompletny opad szczęki. Ale to trochę inne silniki dźwiękowe stąd inna reakcja. Dlatego pisałem głównie pod kątem starszych gier lub silników, ale i dziś można w nie grać, lub znaleźć coś co powinno dobrze, lub bardzo dobrze z podobnymi działać. Np. najprawdopodobniej najnowszy Sniper Elite.

Ten post był edytowany przez deton24 dnia: 17 Sierpień 2018 - 03:45


#10 Użytkownik jest niedostępny   deton24 

  • beware
  • PipPipPipPipPip
  • Grupa: Forumowicze
  • Postów: 7309
  • Dołączył: So, 27 Lis 10

Napisany 21 Sierpień 2018 - 01:15

Nowe informacje do tematu zostały dodane:

Spoiler

Ten post był edytowany przez deton24 dnia: 13 Grudzień 2018 - 03:34


#11 Użytkownik jest niedostępny   deton24 

  • beware
  • PipPipPipPipPip
  • Grupa: Forumowicze
  • Postów: 7309
  • Dołączył: So, 27 Lis 10

Napisany 13 Grudzień 2018 - 03:33

Nowe informacje do tematu zostały dodane:
(OpenAL) Rapture3D

Ten post był edytowany przez deton24 dnia: 13 Grudzień 2018 - 03:51


#12 Użytkownik jest niedostępny   deton24 

  • beware
  • PipPipPipPipPip
  • Grupa: Forumowicze
  • Postów: 7309
  • Dołączył: So, 27 Lis 10

Napisany 08 Czerwiec 2019 - 23:23

Nowe informacje do tematu zostały dodane:

Dla kart Creative, które są bazowane na Host OpenAL (HSOAL) (wszystkie po X-Fi, które nie mają już wykonywania akceleracji sprzętowej) zmiana nazwy pliku z sens_oal.dll na ct_oal.dll w lokalizacji c:\windows\syswow64 (64 bit) lub c:\windows\system32 (32 bit) wymusi na Alchemy używanie sterownika Host OpenAL zamiast domyślnej biblioteki, w rezultacie zapewniając lepszą jakość dźwięku w grach, czy też - bardziej uwydatni efekt 3D, zwłaszcza na słuchawkach.

Notatka stąd:
https://pcgamingwiki...d_card#Creative

Rozwiązanie to ma nie działać na Audigy, X-Fi i X-Fi Titanium. Lista wspieranych kart przez Host OpenAL jest tutaj:
https://www.touslesd...23&v_code=56040


Jest jednak jeden filmik, gdzie typ odpala jednak HOAL na X-Fi Xtreme Gamer:
https://www.youtube....h?v=V2IiNemRjmw
Trochę tam widać jakie pliki są, i co robi. Wychodzi jednak na to, że na tych kartach HSOAL działa wtedy tylko gdy gra jest na OpenAL. Chyba nie zadziała to na Alchemy.

Gdyby ktoś miał problemy na HSOAL z nieprawidłowym, znikającym dźwiękiem, należy użyć wersji 2.17. Wszystkie od 2.40 są wadliwe w niektórych grach. Instrukcja po angielsku znaczyła mniej więcej tyle co:
- pobierz SB X-Fi Series Support Pack 4.0, tylko nie instaluj zawartych sterowników. Zainstaluj z tego pakietu XFTI_PCDRV_LB_2_17_0009.exe który jest interesującą nas wersją sterownika HSOAL.

Ten post był edytowany przez deton24 dnia: 09 Czerwiec 2019 - 00:58


Strona 1 z 1
  • Nie możesz rozpocząć nowego tematu
  • Nie możesz odpowiadać w tym temacie

1 Użytkowników czyta ten temat
0 użytkowników, 1 gości, 0 anonimowych