TeknolojiSes Kartlarında Kullanılan API’Ler

Ses Kartlarında Kullanılan API’Ler

Sponsorlu Bağlantılar

Konunun başında da belirtiğim gibi her kart firması kafasına göre bir 3D teknolojisi kullanıyor. Dolayısıyla bu teknolojilerin en sık kullanıldığı mekan olan oyunlarda hangi teknolojiyi destekleyeceğini şaşırmış durumdalar. Bu durum tıpkı grafik dünyasındaki OpenGL, Direct3D ve Glide arasında yaşayan API çekişmesine benziyor. Burada API tanımını anlaşılır şekilde yapalım.

3D ses API’sı aslında sadece 3D sesi size iletmek isteyen programcının kullandığı ve sesin 3 boyutlu uzayda hangi konumdan ve hangi şiddette geleceğini ses kartına söylemesine yarayan komutlar topluluğudur.
Şimdi kısaca bu teknolojilerin (ya da API’lerin) hepsine biraz göz atalım. Unutmadan bir ses kartının birden fazla API kullanabileceğini ve bir oyununda birden fazla API için yazılmış olabileceğini hatırlatalım.

Ses Kartlarında Kullanılan API’Ler

DirectSound 3D

Microsoft’un geliştirdiği Direct Sound 3D, aslında DirectX’in bir parçasıdır. Bu sebepten DirectX destekli her yeni PCI ses kartı tarafından rahatlıkla kullanılabiliyor, bu yakınlık sayesinde de en sık karşımıza çıkan 3D ses API’sıdır. Oyun programcılarının da kolayına geldiği için çok kullanılıyor. Ancak çok fazla tercih edildiği söylenemez, nedenine gelince programcıya sunduğu imkanlar bugünün oyunlarında kısıtlıdır. Bu kısıtlı ortamdan sıyrılmak isteyen ilk firma Aureal oldu ve DirectX3 ile çalışmalarına başlayarak A3D’yi ortaya koydu.

A3D

Modern ses kartlarında en sık rastlayacağınız 3D API’si olan A3D, ana işlemciye fazla yüklenmemesi ile dikkat çekiyor. Donanımdan 3D ses hızlandırılması olayının atası olarak sayılabilir. A3D, aslında Direct Sound3D komutlarını kendi algoritmaları ile kullanıyor ve biraz karışıktır. Asıl tereddüte düşebileceğimiz nokta ise bu A3D’yi kullanan kartların çeşitleri. Bunlardan birincisi emülatörler, oyundan gelen A3D bilgilerini alarak sahte bir A3D.dll dosyası ile DirectSound3D altında işliyorlar, yani bir anlamda oyunu kandırıyorlar. Creative’in Sound Blaster Live ses kartı bunun güzel bir örneğidir. A3D kullanan ikinci tür kartlar DSP tabanlı ürünlerdir. Bunlardan programlanabilir bir DSP işlemcisi var, bu generic işlemci üzerine A3D’nin algoritmaları işleniyor böylece A3D donanım hızlandırıcılı bir ses kartınız oluyor. Bu tip kartların 3D ses başarısı tamamen sözünü ettiğimiz DSP’nin kapasitesi ile doğru orantılı. Son olarak A3D kategorisinde karşımıza Vortex 1 ve Vortex 2 yongaları çıkıyor. Vortex 1, 8 adet de 2D ses işleyebiliyor, en gelişmiş A3D kullanıcısı Vortex 2’de ise imkanlar ve kaliteçok daha geniş. Diamond MX-300 bu yongayı kullanmaktadır.

EAX

EAX’ın açılımı Environmetal Audio Extensions. Creative tarafından geliştirilen bu API’ye geçmeden önce reverb kavramına biraz deyimemiz gerekli. Duyduğumuz sesler iki bileşenden meydana geliyor; orijinal kaynaktan yola çıkan ses ve bu sesin kulağımıza ulaşıncaya dek çevreden aldığı etkiler. Örneğin duvarlar, etrafımızdaki insanlar ya da diğer objeler seste bir deformasyona yol açar. İçinde bulunduğumuz oda ya da ortamın şekli, içerdiği materyallerin büyüklüğü ve çeşidinin oluşturduğu etki reverb olarak tanımlanır. İşte Creative’de bu yüzden API’sine çevresel ses anlamına gelen Environmetal Audio adını koymuş. Creative’nin yapmak istediği şudur: programcıya içinde hazır çevresel efektler bulunan bir reverb motoru sunuyor ve “al bunu oyuncunun 3D ortamı hissetmesi için hangisi uygun geliyorsa kullan” diyor. EAX’da aslında bir DirectSound3D uzantısı, yani o da tıpkı A3D gibi DS3D komutlarını kullanıyor ama kendi algoritmalarıyla.

Q3D

Qsound firmasının bir ürünü olan Q3D henüz pek yaygın olarak kullanılmıyor. Amacı diğerlerinde olduğu gibi sadece 2 hoparlör aracılığı ile 3D ses ortamı oluşturmaktır. Programcı firmanın iddiasına göre aslında kulaklık üzerinde çalışmak üzere geliştirilmiş olan Head Related Transfer Functions (HRTF), 2 hoparlör üzerinde doğru çalışmıyor ve kayıplara yol açıyor. Bu yüzden Q3D bu tekniğin yanı sıra çapraz konuşma (cross talk) adı verdiği bir tekniği de kaynaştırmış. Tıpkı diğer API’lerde olduğu gibi Q3D’nin de 2.0’ı tamamlanmış. Sanıyorum ileride daha fazla etkisini hissettirecektir. Unutmadan belirtelim Q3D, DVD kullanımı için Qsurround adını verdiği yeni bir teknoloji de kullanıyor. Buna göre AC-3 ( ya da herkesin bildiği adıyla Dolby Digital 5,1 ) kodlarını çözebilen bir yazılım kullanıldığında Q3D kartlar ile film seyredilebiliyor. Aslında bunu hemen her API yapabiliyor, örneğin Vortex2 yongasına sahip Diamond MX300‘de A3D API’sını kullanarak bu sinyalleri çözebiliyor.

Sensaura

Yamaha’nın bu teknolojiyi kullanmaya başlaması ile adını duyuran Sensaura, temelde diğer API ‘ler ile büyük farklılıklar taşımıyor. HRTF olayına yeni bir boyut kazandıracak olan ve bir metreden yakın mesafelerde iyi sonuçlar vermek üzere tasarlanan MacroFX ile, yakınlaşan objelerin dinleyiciye yaklaştıkça farklı sesler de verebilmesini sağlayan ZoomFX (trenin yaklaştıkça duyulabilecek seslerinin de –örneğin tekerlek yada ray sesi– aktarabilmesi) özellikleri Sensaura’nın öne çıkan yeni teknolojileridir.

Sonuç olarak 3D ses özellikli her ses kartı kullandığı API ne olursa olsun (ister Q3D ister A3D ya da EAX ) kendiliğinden DirectSound3D uyumlu hale gelir. Bir örnekle açıklayacak olursak DS3D programlanan oyun çalıştırıldığında sistemde ses için bir 3D donanımını arayacak ve bulduğunu kullanacaktır, bu sebepten herhangi bir 3D ses kartında temel 3D konumlandırmalarını gerçekleştirecektir. Sonuç olarak 3D ses kartlarının verdikleri sesin 3D kalitesinde tüm bu saydığımız API’lerin DS3D’yi nasıl kullandıkları belirleyici olarak karşımıza çıkmaktadır.

 
Sponsorlu Bağlantılar
 

İlginize Değer ›

 
 
 
elbehemce - 05 Mayıs 2012
 
 

Nasıl Buldular? ›

 
q3d dosyası nedir Q3D NEDİR
 
 

0 Yorum ›

 

Ses Kartlarında Kullanılan API’Ler Hakkında Yorum Yap

Dikkat: Mesaj yazarken Ses Kartlarında Kullanılan API’Ler ile ilgili bilgi verirseniz site kullanıcıları da bu bilgilerinizden yararlanacaktır. Konu hakkında bilgi içeren mesajlarınızı bekliyoruz.