Slik aktiverer du 3D-lyd i spill på Windows 7/8/10

Slik aktiverer du 3D-lyd i spill på Windows 7/8/10
Sannsynligvis vet nesten alle at med utgivelsen av Windows Vista tilbake i 2007, og etter den i alle påfølgende versjoner av Windows, ble DirectSound3D lyd-API fjernet fra Windows, og de nye API-ene XAudio3 og X2DAudio begynte å bli brukt i stedet for DirectSound og DirectSound3D . Som et resultat har EAX-lydeffekter (miljølydeffekter) blitt utilgjengelige i eldre spill. I denne artikkelen vil jeg fortelle deg hvordan du returnerer samme DirectSound3D/EAX til alle gamle spill som støtter disse teknologiene når du spiller på Windows 7/8/10. Selvfølgelig vet erfarne spillere alt dette, men kanskje artikkelen vil være nyttig for noen.

Gamle spill har ikke blitt sendt til historiens søppelkasse, tvert imot er de etterspurt blant både eldre og yngre brukere. Gamle spill ser bedre ut på moderne høyoppløselige skjermer, mods er utgitt for mange spill som forbedrer teksturer og shaders, men til å begynne med var det ikke hell med lyden. Med utgivelsen av neste generasjon av Windows Vista, etter Windows XP, anså Microsoft-utviklere DirectSound3D for å være foreldet - den var begrenset til 6-kanals lyd, støttet ikke lydkomprimering, var prosessoravhengig og ble derfor erstattet av XAudio2/X3DAudio . Og siden Creatives EAX-teknologi ikke var et uavhengig API, slik A3D fra Aureal var på en gang, men bare en utvidelse av DirectSound3D, ble Creatives lydkort liggende igjen. Hvis du ikke bruker spesielle programvarepakker, vil menyelementer som inkluderer EAX ikke være aktive når du spiller på Windows 7/8/10 i gamle spill. Og uten EAX vil ikke lyden i spill være like rik, voluminøs eller posisjonert.

For å løse dette problemet utviklet Creative ALchemy wrapper-programmet, som omdirigerer DirectSound3D- og EAX-anrop til OpenAL API på tvers av plattformer. Men dette programmet fungerer offisielt med Creative lydkort, og til og med ikke helt samme modell. For eksempel fungerer ikke et moderne Audigy Rx-kort med en CA10300 maskinvare DSP-prosessor offisielt. For eiere av andre lydkort, for eksempel innebygd Realtek, må du også bruke driverprogramvaren Creative Sound Blaster X-Fi MB, som koster penger. Du kan også prøve det opprinnelige 3DSoundBack-programmet, men det ble ikke fullført av Realtek - det stoppet på betaversjonsstadiet, det fungerer ikke bra og fungerer ikke med alle sjetonger. Men det er en bedre måte, den er enklere å bruke og gratis.

Den første måten

Jeg begynner med ASUS lydkort. ASUS DGX/DSX/DX/D1/Phoebus-lydkort er basert på C-Media-brikker, og til og med ASUS AV66/AV100/AV200-brikker er de samme ommerkede C-Media-brikkene. Egenskapene til disse lydkortene sier at de støtter EAX 1/2/5. Alle disse brikkene arvet fra forgjengeren CMI8738 DSP-programvare-maskinvareblokk EAX 1/2, EAX 5 er allerede programvare.

Eiere av kort i Xonar-serien er veldig heldige, alle har sett GX-knappen på driverpanelet, men kanskje ikke alle vet hva den gjør. Jeg skal vise deg i skjermbilder fra AIDA64-programmet, dette er hvordan DirectX-lydfanen ser ut når knappen ikke er aktiv og for eiere av innebygde Realtek-lydkort i Windows 7/8/10:

Slik aktiverer du 3D-lyd i spill på Windows 7/8/10
Alle lydbuffere er null, alle APIer er inaktive. Men umiddelbart etter å ha slått på GX-knappen ser vi

Slik aktiverer du 3D-lyd i spill på Windows 7/8/10
De. veldig praktisk - du trenger ikke å starte flere programmer som Creative ALchemy og kopiere dsound.dll-filen til hver spillmappe. Det store spørsmålet oppstår, hvorfor gjorde ikke Creative dette i driverne sine? Dessuten, i alle nye Sound Blaster Z/Zx/AE-modeller bruker den ikke en maskinvare DSP-prosessor for å behandle EAX, men gjør det i programvare gjennom en driver som bruker forenklede algoritmer. Noen tror at programvarebasert lydbehandling er tilstrekkelig fordi moderne CPUer er mye kraftigere enn lydkortprosessorene for 10 år siden, som behandlet lyd i maskinvare. Det er ikke sånn i det hele tatt. CPU-en er optimalisert for å behandle x86-kommandoer, og DSP-en behandler lyden fra sentralprosessoren mye raskere, akkurat som skjermkortet produserer rasterisering raskere enn CPU-en. Den sentrale prosessoren er nok for enkle algoritmer, men høykvalitets etterklang med mange lydkilder vil ta for mange ressurser selv av en kraftig CPU, noe som vil påvirke fallet i FPS i spill. Microsoft har allerede erkjent dette og har allerede returnert støtte for lydbehandling med DSP-prosessorer i Windows 8, samt Sony, som la til en egen brikke til PS5-konsollen for behandling av 3D-lyd.

Den andre måten

Dette alternativet passer for brukere av et innebygd lydkort i hovedkortet, som er flertallet. Det finnes et slikt prosjekt DSOAL er en programvareemulering av DirectSound3D og EAX som bruker OpenAL (OpenAL må være installert på systemet) og krever ikke maskinvareakselerasjon. Hvis lydbrikken din har noen maskinvarefunksjoner for lydbehandling, vil de bli brukt automatisk. Programmet fungerer så bra at jeg gjennom det fikk EAX til å jobbe på alle mine gamle spill som hadde avkrysningsboksen EAX i innstillingene. Slik ser AIDA64-vinduet ut hvis du kopierer DSOAL-filene til programmappen:

Slik aktiverer du 3D-lyd i spill på Windows 7/8/10

Hvis dette ikke skjer og du har et bilde som i det aller første skjermbildet, er det innebygd Windows dsound.dll tillater deg ikke å avskjære API-en, slik tilfellet var i mitt tilfelle. Da vil denne metoden hjelpe - du må starte opp fra et Windows Live-CD-bilde og slette filen dsound.dll ikke uten hjelp av Unlocker-verktøyet (etter å ha laget en kopi i tilfelle en tilbakeføring) fra katalogen C:WindowsSysWOW64 og skriv ned de samme i stedet dsoal-aldrv.dll и dsound.dll. Jeg gjorde dette, og for meg fungerte både Windows selv og alle spillene uten feil, og det er enda mer praktisk - du trenger ikke å kopiere disse filene til mappene med spill hver gang, i ekstreme tilfeller kan du returnere den originale tilbake dsound.dll på plass. Riktignok er denne metoden egnet hvis du ikke bruker andre ASUS- eller Creative-lydkort, fordi i dette tilfellet vil DirectSound3D alltid fungere bare gjennom DSOAL, og ikke gjennom den opprinnelige driveren eller ALchemy.

Du kan lytte til DSOAL i denne videoen:

→ Last ned Den siste versjonen av det ferdige biblioteket finner du her

Ved å sammenligne hvordan EAX høres ut på forskjellige lydkort, ble jeg overrasket over å finne at den innebygde Realtek EAX høres bedre ut enn på Asus eller på Audigy Rx. Hvis du leser dataarkene, støtter nesten alle Realtek-brikker DirectSound3D/EAX 1&2. Kjører AIDA64 fra Windows XP kan du se:

Slik aktiverer du 3D-lyd i spill på Windows 7/8/10
Det viser seg at Realtek, i motsetning til ASUS og Creative lydkort, også støtter en slags I3DL2 (ikke alle Realtek dataark sier dette). I3DL2 (Interactive 3D Audio Level 2) er en åpen industristandard for arbeid med 3D interaktiv lyd, og er en utvidelse til DirectSound3D for arbeid med etterklang og okklusjon. I prinsippet er det analogt med EAX, men det høres finere ut - mer behagelig etterklang i trinnspill, når en karakter løper gjennom en hule eller et slott, mer realistisk lyd av surroundlyd i rom. Derfor, hvis det gamle spillet kjører på Windows XP, så spiller jeg bare på XP, kanskje lydmotoren vil kunne bruke I3DL2. Selv om DSOAL er et åpent prosjekt og hvem som helst kan forbedre det, vil det aldri kunne bruke I3DL2, fordi OpenAL fungerer ikke med I3DL2, men kun med EAX 1-5. Men det er gode nyheter - fra og med Windows 8 er I3DL2 inkludert i XAudio 2.7-bibliotek. Så lyden i nye spill under Windows 10 vil være bedre enn under Windows 7.

Og til slutt vil jeg minne deg på at alle disse 3D-lydteknologiene ble utviklet for hodetelefoner; på 2 høyttalere vil du knapt høre 3D-lyd. For å nyte hodetelefoner med detaljert lydnivå SVEN AP860 vil ikke passe, fra rimelige hodetelefoner du trenger til å begynne med Axelvox HD 241 – det vil allerede være forskjell med SVEN AP860som himmel og jord. Orienter deg på en eller annen måte slik.

Slik aktiverer du 3D-lyd i spill på Windows 7/8/10

Slik aktiverer du 3D-lyd i spill på Windows 7/8/10

Kilde: www.habr.com

Legg til en kommentar