OpenAL (Open Audio Library) é uma API livre e multiplataforma desenvolvida para lidar com audio multicanal tridimensional. É usado normalmente com OpenGL.
História OpenAL foi originalmente desenvolvido pela empresa Loki Software com o objetivo de facilitar a portagem de jogos criados em Windows para o sistema operacional Linux. Após o fim da empresa o projeto foi mantido pela comunidade de software livre, atualmente o projeto pertence à Creative Technology onde recebe grande apoio da empresa norte-americana Apple e entusiastas do software livre.
API e Funcionalidades As funcionalidades da biblioteca estão baseadas em três conceitos: source objects (objetos que emitem som), audio buffers (som que será emitido por algum objeto) e um único listener (ouvinte da cena). Um source object conterá uma referência para um buffer além de também atributos como velocidade, posição, direção e intensidade. O ouvinte é determinado através dos atributos velocidade, posição e direção. A biblioteca é capaz de criar efeitos de atenuação de acordo com a distância e efeito Doppler automaticamente.
Diferente da especificação do OpenGL, a especificação do OpenAL inclui duas seções diferentes da API: o núcleo consistindo de toda a base do sistema e o ALC (Audio Library Context) que é utilizado para conectar o núcleo da biblioteca ao sistema operacional presente. Também existe uma biblioca de funcionalidades auxiliar denominada ALUT (análoga à biblioteca GLUT do OpenGL).
Com o objetivo de proporcionar novas funcionalidades no futuro, OpenAL utiliza um mecanismo para lidar com extensões. Diferentes fabricantes de hardware de som podem incluir suas próprias extensões para o OpenAL em seu equipamento.
Plataformas OpenAL está disponível nas seguintes plataformas: Mac OS X iPhone GNU/Linux BSD Solaris IRIX Microsoft Windows Xbox Xbox 360 MorphOS
Aplicativos Diversos aplicativos bastante conhecidos utilizam OpenAL em seu desenvolvimento (principalmente jogos).
Doom 3 Jedi Knight 2 Jedi Knight: Jedi Academy Quake 4 Prey Unreal 2 Unreal Tournament 2003 Unreal Tournament 2004 Unreal Tournament 3 Postal Hotline Miami America's Army Battlefield 2 Battlefield 2142 Freedom Fighters Hitman Psychonauts Colin McRae: DiRT Colin McRae: DiRT 2 Penumbra: Black Plague Race Driver: GRID Minecraft Blender (aplicativo de modelagem 3D) Unity (ferramenta para criação de jogos)
Ver também OpenGL GLUT
Ligações externas
- Tutoriais de OpenAL na DevMaster.net
Categoria:Interface de programação de aplicações Categoria:Desenvolvimento de jogos eletrônicos Categoria:Bibliotecas de áudio Categoria:APIs do Linux