ÅbenAL | |
---|---|
Type | API |
Forfatter | Loki software |
Udvikler | kreativ teknologi |
Skrevet i | C [1] |
Operativ system | på tværs af platforme |
Første udgave | juni 2000 |
nyeste version | 1.1 (installationsprogram 2.1.0.0) ( november 2009 ) |
Licens | proprietære |
Internet side | openal.org _ |
OpenAL ( Engelsk Open A udio Bibliotek ) er en applikationsprogrammeringsgrænseflade (API ) på tværs af platforme til at arbejde med lyddata. Nøglefunktionen er at arbejde med lyd i 3D -rum og bruge EAX -effekter . Understøttet af Creative .
OpenAL blev skabt af Loki Software som et værktøj til deres virksomhedsoverførsel af spil fra Microsoft Windows til GNU/Linux . Efter lukningen af virksomheden blev projektet udviklet i nogen tid af det frie softwarefællesskab - det tilføjede funktionaliteten af lydchipsættet indbygget i NVIDIA nForce . I dag er projektet hostet på Creative Technologys server , og for det meste udvikles det af det.
Efter udgivelsen af version 1.1-specifikationen blev den oprindelige implementering af OpenAL lukket, i stedet foreslås det at bruge en proprietær implementering udviklet af Creative. Som svar skabte det frie softwarefællesskab deres egen implementering baseret på den overlevende kildekode fra den oprindelige implementering. [2]
Selvom OpenAL- charteret siger, at projektet skal have et "Architecture Review Board" (ARB), svarende til OpenGL ARB- projektet , har ingen organisation hidtil taget ansvaret for at danne en OpenAL teknisk specifikationsstandard. OpenAL-specifikationer findes i udkastform, diskuteret af udviklere via e-mail og på offentlige postlister.
Hovedfunktionerne i OpenAL-biblioteket er kildeobjekter , lydbuffere og en enkelt lytter . Kildeobjekter inkluderer en buffermarkør, hastighed, position, retning og lydintensitet. Lytteren indeholder hastigheden, positionen, retningen og den samlede forstærkning af lyden som helhed. Buffere indeholder lyddata i PCM -format i 8-bit eller 16-bit format, samt i mono eller stereo . Lydgengivelsesfunktionen udfører de nødvendige beregninger, såsom bestemmelse af afstand, Doppler-effekt og så videre.
For slutbrugeren giver resultatet af behandlingen af disse OpenAL-komponenter en helt naturlig lyd, når man flytter karakterer i en virtuel 3D-verden. Og en programmør kan sagtens bruge OpenAL i sit færdige 3D OpenGL-program.
I modsætning til OpenGL-specifikationerne omfatter OpenAL-specifikationerne to API'er : kernen, som inkluderer OpenAL-funktionskald, og ALC (Audio Library Context), en API, der bruges til at styre gengivelseskonteksten, kontrollere ressourceforbrug og aktivere låse i flertrådede beregninger. Der er også ALUT - et bibliotek, der giver funktioner på højt niveau for at forenkle at skrive et program, det ligner GLUT -biblioteket for OpenGL.
OpenAL kan udvides: programmører eller virksomheder, der ikke er OpenAL-udviklere, kan tilføje deres egne udvidelser til det. For eksempel for at "lære" biblioteket at bruge funktionerne på deres enheder med lukkede specifikationer. Udvidelser kan forfremmes til ARB-niveau, det vil sige indtast OpenAL-specifikationerne i dens nye version.
Til avanceret digital signalbehandling eller hardwarelydacceleration kan EFX (Effects Extension) eller EAX bruges .
Spil [3] :
Andre applikationer: