XAudio2 Sesleri
Üç tür XAudio2 ses nesnesi vardır: kaynak, altve seslerde ustalık. Kaynak sesler, istemci tarafından sağlanan ses verileri üzerinde çalışır. Kaynak ve alt miks sesleri çıkışlarını bir veya daha fazla alt karıştırma veya ana sese gönderir. Submix ve mastering sesleri, onları besleyen tüm seslerden gelen sesi karıştırır ve sonuç üzerinde çalışır. Seslerde ustalaşarak ses verileri bir ses cihazına yazılır.
Tüm Sesler Tarafından Gerçekleştirilen Eylemler
Tüm sesler, hareket eden ses üzerinde sırasıyla aşağıdaki eylemleri gerçekleştirir.
- Tüm ses kanallarını etkileyen genel ses ayarı. Bkz. IXAudio2Voice::SetVolume.
- Yerleşik yankı veya IXAPO arabirimi tarafından tanımlanan kullanıcı etkisi gibi bir veya daha fazla DSP efektinin istemci tarafından belirtilen isteğe bağlı zinciri. Bkz. XAudio2 Ses Efektleri .
- Kanal başına çıkış ses düzeyi ayarlaması. Bkz. IXAudio2Voice::SetChannelVolumes.
- Hedef seslerin her birine veya seslerde ustalık sağlamak için ses çıkış cihazına ayrı matris karışımı ekleyin. Bu karışım, gerekirse sesteki kanal sayısını değiştirir.
Kaynak Sesler
XAudio2 işlem hattına ses verileri göndermek için kaynak sesleri kullanın. Bunlar, XAudio2 Ses Grafıgiriş noktalarıdır. Ses verilerini doğrudan veya ara alt seslerden duyulacak bir ana sese göndermeniz gerekir.
Tüm sesler tarafından gerçekleştirilen eylemlere ek olarak, kaynak sesler aşağıdaki eylemleri gerçekleştirir.
- Gerekirse kod çözücü, kodlanmış kaynak verileri Pulse Code Modulation'a (PCM) dönüştürmek için önce çalışır.
- Değişken oranlı örnek hızı dönüştürme (SRC), sesin kaynak ses verilerini, gerekirse hedef seslerinin beklediği örnek hızına dönüştürür ve ayrıca dinamik ses perdesi değişikliklerini destekler.
- İsteğe bağlı durum değişkeni filtresi, sesi çeşitli şekillerde renklendirmek için kullanılabilir. Bkz. IXAudio2Voice::SetFilterParameters.
- Ses çıkışlarına isteğe bağlı bir filtre uygulanabilir. Bkz. IXAudio2Voice::SetOutputFilterParameters.
Submix Voices
Alt miks sesi öncelikle performans iyileştirmeleri ve efektlerin işlenmesi için kullanılır. Veri arabelleklerini doğrudan alt seslere gönderemezsiniz. Bir ustalık sesine göndermediğiniz sürece sesli olmayacaktır. Belirli bir ses veri kümesinin aynı biçime dönüştürülmesini sağlamak ve kolektif sonuç üzerinde belirli bir etki zincirinin işlenmesini sağlamak için bir alt ses kullanabilirsiniz.
Tüm sesler tarafından gerçekleştirilen eylemlere ek olarak, alt sesler aşağıdaki eylemleri gerçekleştirir.
- Sabit oranlı bir SRC, sesi hedef sesleri tarafından beklenen örnek hızına dönüştürmek için gerekirse sesin çıkışında çalışır.
- İsteğe bağlı durum değişkeni filtresi, sesi çeşitli şekillerde renklendirmek için kullanılabilir. Bkz. IXAudio2Voice::SetFilterParameters.
- Ses çıkışlarına isteğe bağlı bir filtre uygulanabilir. Bkz. IXAudio2Voice::SetOutputFilterParameters.
Seslerde Ustalık
Ses çıkış cihazını temsil etmek için ana ses kullanın. Veri arabelleklerini doğrudan ana seslere gönderemezsiniz, ancak diğer ses türlerine gönderilen verilerin duyulması için ana sese gitmesi gerekir.
Tüm sesler tarafından gerçekleştirilen eylemlere ek olarak, ustalık sesleri aşağıdaki eylemleri gerçekleştirir.
- Ana sesi, ses cihazı tarafından desteklenmeyen açık bir InputSampleRate değeriyle oluşturursanız, cihaz tarafından desteklenen en yakın örnek hızına dönüştürmek için sabit hızlı bir SRC kullanılır.
- Çıkış cihazının gerektirdiği son çıkış sesini kırpın.
İlgili konular