Oboe ile Yüksek Performanslı Oyun Sesi

Oboe, Android'de yüksek performanslı ses uygulamaları oluşturmayı kolaylaştıran bir C ++ kitaplığıdır. Öncelikle, geliştiricilerin birden çok API düzeyinde çalışan basitleştirilmiş bir API'yi API düzeyi 16'ya (Jelly Bean) hedeflemesine izin vermek için oluşturulmuştur.


Görsel Referansı


Android 8.1 (API seviyesi 27) ve üstü çalıştıran Android cihazlarda Oboe, Android 4.1 (API seviyesi 16) ve üstü ile geriye dönük uyumluluğu (OpenSL ES kullanarak) korurken AAudio'nun gelişmiş performansından ve özelliklerinden yararlanır. Oboe; ayrıca yeniden örnekleme, format dönüştürme ve dinamik gecikme ayarı gibi ses geliştirici deneyimini iyileştirmek için platform API'lerinin üzerine temel özellikler ekler.


Oboe Entegrasyonu


Oboe kitaplığı hazırlamalarını projenize dahil etmenin iki ana yolu vardır. CMake ile birlikte Android Gradle eklentisi sürüm 4.1.0 veya üzerini kullanıyorsanız ve paylaşılan STL kullanıyorsanız veya etkinleştirebiliyorsanız, Oboe'u etkinleştirmek Gradle bağımlılıklarınıza Oboe eklemek, hazır yapıları etkinleştirmek ve CMakeLists dosyanız.


Ayrıca, Android Oyun SDK'sını kullanarak statik olarak bağlanarak Oboe'u entegre edebilirsiniz. Kitaplığı indirip kaynak kontrol sisteminize kontrol ederek başlayın. NDK sürüm 18 veya üzeri ile minSdkVersion 16 veya üzeri kullanmanız gerekir. Ardından, verilen ABI, API seviyesi, NDK ve STL kombinasyonu için derlenen bağlantı kurulacak oyun SDK'sının sürümünü belirtmek için, bu formda bir derleyici dahil etme yolu ekleyin:

gamesdk/libs/[architecture]_API[apiLevel]_NDK[ndkVersion]_[stlVersion]_ReleaseExample: gamesdk/libs/arm64-v8a_API24_NDK18_cpp_static_Release

Ses çıkışı sağlamak için, akış yeni veri gerektirdiğinde kullanılan bir geri arama dahil olmak üzere, gerekli özelliklere sahip bir akış oluşturarak başlarsınız.

oboe::AudioStreamBuilder builder;
builder.setPerformanceMode(oboe::PerformanceMode::LowLatency)->setSharingMode(oboe::SharingMode::Exclusive)->