Ana içeriğe geç

Capturable Sound Wave

Genel Bakış

Yakalanabilir bir ses dalgası, akış ses dalgasından türetilmiştir. Mikrofon gibi giriş cihazlarından ses verisi yakalamayı ve aynı bir içe aktarılmış ses dalgası gibi (geri sarma, SoundCue'larda kullanım vb. dahil) oynatmayı destekler. Hatta sesi aynı anda yakalayıp oynatabilirsiniz, hiçbir sınırlama yoktur.

ipucu

Ses Aktivite Tespiti (VAD) için bu sayfaya bakın.

not

Yakalanabilir ses dalgası, yakalama başlatıldığında iOS ve Android'de otomatik olarak mikrofon izinleri ister.

Temel Kullanım

Bir Yakalanabilir Ses Dalgası Oluşturma

İlk olarak bir yakalanabilir ses dalgası oluşturmalısınız.

Create Capturable Sound Wave düğümü

uyarı

Yakalanabilir ses dalgasını erken yok olmayı önlemek için güçlü bir referans olarak ele almalısınız (örneğin, Blueprints'te ayrı bir değişkene atayarak veya C++'ta UPROPERTY() kullanarak).

Kullanılabilir Giriş Cihazlarını Alma

Bu özelliği kullanmak için öncelikle yakalama için kullanılabilecek tüm mevcut ses giriş cihazlarını almanız gerekir.

Get Available Audio Input Devices node

Yakalamayı Başlatma ve Durdurma

Kullanılabilir cihazları aldıktan sonra, giriş cihazından ses verisi yakalamaya başlayabilir ve ihtiyaç duyulduğunda durdurabilirsiniz.

Yakalamayı Başlat ve Durdur düğümleri

bilgi

DeviceId, önceki adımda elde edilen mevcut cihazlar dizisindeki cihazın indeksidir. Varsayılan ses giriş cihazını kullanmak için Blueprints'te -1 veya C++'da Audio::DefaultDeviceIndex (ki bu INDEX_NONE değerine eşittir) geçirin, çünkü bazen sıfır indeksi varsayılan cihaz olmayabilir.

Yakalama Durumunu Kontrol Etme

Ses dalgasının şu anda ses yakalayıp yakalamadığını kontrol edebilirsiniz:

Is Capturing node

Gelişmiş Özellikler

Yakalamayı Sessize Alma ve Sesi Açma

Yakalama işlemini kesmeden, ses verisi birikimini önlemek için ses yakalamayı sessize almayı veya sesini açmayı seçebilirsiniz.

Toggle Mute düğümleri

Motor Sürümü Farkları

UE 5.3 ve daha yenisi: Yakalama başlatma ve durdurma artık takılmalara neden olmaz, bu nedenle ToggleMute, StartCapture/StopCapture ile aynı etkiye sahiptir. Performans optimizasyonu için ToggleMute kullanmanıza hiç gerek olmayabilir.

UE 5.2 ve daha eski: StartCapture aracılığıyla yakalamayı başlatmak küçük takılmalara neden olabilir. Bu sürümlerde, yakalamayı sık sık açıp kapatmak için ToggleMute kullanılması önerilir. Yakalamayı ilk olarak daha az kritik bir zamanda (örneğin bir yükleme ekranında) başlatmalı ve ardından ses verilerinin ne zaman gerçekten biriktirileceğini kontrol etmek için sessize alma/sesi açma işlevlerini kullanmalısınız.

Önceki Motor Sürümleri için Performans Optimizasyonu

UE 5.2 veya daha eski bir sürüm kullanıyorsanız ve hafif donmaları ortadan kaldırmak istiyorsanız, yakalamayı bu donmanın önemsiz olabileceği bir zamanda başlatmayı düşünün. Örneğin, yakalamayı oyununuzun yükleme ekranı sırasında başlatabilir, hemen ardından yakalanabilir ses dalgasını sessize alabilir ve daha sonra herhangi bir takılma olmadan ses verilerini yakalamak için ihtiyaç duyulduğunda yakalanabilir ses dalgasının sesini açabilirsiniz.

Tam Örnek

İşte yakalanabilir bir ses dalgası kullanımının tam bir uygulama örneği:

Yakalanabilir bir ses dalgası kullanım örneği