OpenAL

OpenAL (Open Audio Library), çoklu platform ses uygulama programlama arayüzü. Çok kanallı üç boyutlu seslerin verimli bir şekilde işlenmesi için tasarlanmıştır. Uygulama programlama arayüzü tarzı ve kuralları bilerek OpenGL'e benzetilmiştir. Kütüphanenin ilk sürümleri açık kaynaktır fakat sonraki sürümleri tescillidir.

Tarihçe
OpenAL ilk olarak 2000 yılında Loki Software tarafından, Windows oyunlarını Linux'a aktarma işlerinde yardımcı olması için geliştirildi. Loki Software'in kapanmasından sonra proje özgür yazılım ve açık kaynak topluluğu tarafından devam ettirildi ve NVIDIA nForce ses kartlarına ve anakartlarına uyarlandı. Kütüphane, günümüzde Apple, Blue Ripple Sound ve özgür yazılım sevenlerin desteğiyle Creative Technology tarafından geliştirilmektedir.

OpenAL ana sözleşmesi her ne kadar OpenGL ARB'yi örnek alan bir Mimari Değerlendirme Kurulu olacağını söylese de böyle bir organizasyon hiç kurulmamıştır ve OpenAL özellikleri genellikle kamuya açık e-posta listesinde ele alınmakta ve tartışılmaktadır.

1.1 sürümünden itibaren Creative tarafından geliştirilen uyarlama tescilli bir proje oldu. Bu uyarlamanın özgür lisanslı son sürümü hala projenin Subversion kaynak kod deposu üzerinden erişilebilir durumdadır. Bununla birlikte OpenAL Soft isimli yaygın bir şekilde kullanılan ve güncel bir özgür alternatifi bulunmaktadır.

UPA yapısı ve işlevselliği

Dezavantajları

Desteklenen platformlar
Uygulama programlama arayüzü aşağıdaki platformlarda mevcuttur:

İşletim sistemleri:
 Android
 AmigaOS
 Bada
 BlackBerry 10
 BlackBerry PlayBook
 BSD
 iOS
 IRIX
 Linux
 Mac OS X
 Microsoft Windows
 MorphOS
 OpenBSD
 Solaris
 QNX
 AROS

Oyun konsolları:
 GameCube
 PlayStation 2
 PlayStation 3
 Xbox
 Xbox 360
 Wii
 PlayStation Portable

Uygulamaları

Oyunlar
Creative Labs'a göre aşağıdaki oyunlar OpenAL'ı kullanmaktadır:

0 A.D. 
America's Army
Amnesia: The Dark Descent
Armed Assault
Battlefield 2
Battlefield 2142
Broken Sword 5: The Serpent's Curse
Bioshock
Colin McRae: DiRT
Dead Hungry Diner
DiRT 2
Doom 3
Enemy Territory: Quake Wars
Euro Truck Simulator 2
FlightGear
Freedom Fighters
Hitman
IHF Handball Challenge
ioquake3
Jedi Knight II: Jedi Outcast
Jedi Knight: Jedi Academy
Kane & Lynch 2: Dog Days
Kane & Lynch: Dead Men
Minecraft
Mirror's Edge
OpenArena
Osmos
Penumbra: Black Plague
Postal²
Prey
Psychonauts
Quake 4
Race Driver: GRID
Regnum Online
Running With Rifles
S.T.A.L.K.E.R.
Tremulous
Unreal II: The Awakening
Unreal Tournament 2003
Unreal Tournament 2004
Unreal Tournament 3
War§ow
Warzone 2100
Wolfenstein
Wurm Online

Diğer uygulamalar
 Blender - 3B modelleme ve tarama aracı dahili oyun motoru için OpenAL'ı kullanır.
 3DMark - Oyuncular için başarım ölçme ve kıyaslama aracı.
 Dolphin (emülatör) - Gamecube ve Wii emülatörü
 Vanda Engine - Vanda Engine, 2B ve 3B sesleri simüle etmek için OpenAL 1.1'i kullanır.

Uyarlamaları
OpenAL SI OpenAL Sample Implementation, Loki'nin ilk olarak geliştirdiği ve şu anda devam ettirilmeyen uyarlamadır.

OpenAL Soft OpenAL Soft, LGPL lisanslı, çok platformlu yazılım uyarlamasıdır. Kütüphane, hem artık kullanılmayan OpenAL Sample Implementation için uyumlu bir güncelleme hem de artık tescilli olan OpenAL için özgür bir alternatif olarak düşünülmüştür. OpenAL Soft tek kanal, çift kanal, 4 kanal, 5.1, 6.1 ve 7.1 çıktılarını desteklemektedir.

AeonWave-OpenAL AeonWave-OpenAL, AeonWave 4D-audio kütüphanesi tarafından sağlanan donanım hızlandırmasından yararlanan LGPL lisanslı OpenAL emülasyon katmanıdır. Bu uyarlama AeonWave kütüphanesinin kullanılmasıyla HRTF'nin yanı sıra sekiz hoparlöre kadar üç boyutlu çevresel ses desteği sunar.

Rapture3D OpenAL Sürücüsü Rapture3D OpenAL, Blue Ripple Sound tarafından sadece Windows için geliştirilen, özgür olmayan, ticari bir yazılım uyarlamasıdır. Kütüphane, diğer uyarlamalara yüksek performanslı bir alternatif olarak tasarlanmıştır.

Ayrıca bakınız
 OpenCL
 OpenGL
 OpenSL ES
 OpenML
 OpenMAX AL
 FMOD

Dış bağlantılar
 OpenAL Soft
 OpenAL'ı konu alan bir Türkçe günlük
 OpenAL hakkında bir günlük yazısı

Uygulama programlama arayüzü
Video oyunu geliştirme