Ses yapılandırması AAOS işaretleri

Android Automotive OS (AAOS), dinamik yönlendirmeden araç hizmetinden ses seviyesi kontrolü gibi daha genel özellik işaretlerine kadar farklı özellikleri etkinleştirmek için işaretler ve yapılandırmalar kullanır. Ses yönetimi için geçerli AAOS yapılandırma işaretleri burada açıklanmıştır.

İşaretle Amaç
audioUseDynamicRouting AAOS yönlendirmesini etkinleştirmek için araç servisi yapılandırma dosyasında tanımlanır. Yapılandırma true olarak ayarlanmalıdır. false, yönlendirme ve CarAudioService'un büyük bir kısmı devre dışı bırakıldığında işletim sistemi, Ses politikalarını yapılandırma bölümünde açıklanan varsayılan davranışa geri döner.
audioUseCarVolumeGroupMuting Ses gruplarının tek tek kapatılmasını sağlamak için araç hizmeti yapılandırma dosyasında tanımlanır. false (varsayılan değer) olarak ayarlandığında, ayrı ses gruplarının sessize alınması devre dışı bırakılır. Bunun yerine, sessize alma işlemi ana sessize alma düğmesini etkinleştirir. true olarak ayarlandığında, araç ses grubu sessize alınır ve her ses grubu ayrı ayrı sessize alınabilir. true olduğunda, ses grubu sessize alma işlemi Ses Kontrol HAL'de uygulanmalıdır.
audioUseHalDuckingSignals IAudioControl#onDevicesToDuckChange API'nin HAL'i ne zaman eğilmesi gerektiği konusunda bilgilendirmesini sağlamak için araç hizmeti yapılandırma dosyasında tanımlanır. true (varsayılan değer) olduğunda API, hangi çıkış cihazlarının karartılacağı ve hangi kullanımların odakta kalacağını belirten sinyaller alır. false olduğunda API çağrılmaz. Ses Kontrolü HAL ses azaltma özelliğini uygulamadığı sürece API çağrılmaz.
config_oemCarService Araç servisi yapılandırma dosyasında tanımlanan bu ad, OEM özelleştirme hizmetinin bileşen adıdır. OEM'ler, araç servisi işlemlerini farklı politikalar için özelleştirmek amacıyla bu hizmeti uygulamayı tercih edebilir. OEM'ler bu bileşeni uygulamayı seçerse car-lib tarafından sunulan OemCarService öğesini genişletecek bir hizmet uygulamalı ve ardından gerekli bileşen hizmetlerini uygulamalıdır. Özellikle araç ses hizmeti için OEM'ler, ses işlemlerini yönetmek amacıyla ses alt hizmetlerinden herhangi birini uygulayabilir. Ayrıntılar için Car Audio Plugin Service başlıklı makaleyi inceleyin. Bileşen adı geçersizse CarService hiçbir OEM hizmetine bağlanmaz. Bileşen adı üçüncü taraf paketi olamaz. Önceden yüklenmiş olmalıdır.
audioVolumeAdjustmentContextsVersion

Araba servisi yapılandırma dosyasında tanımlanır. Ses seviyesi ayarlama bağlam öncelik listesinin sürümünü seçmek için kullanılan yapılandırma.

1. sürüm, tüm ses bağlamlarını şu sırayla içerir:

  • NAVIGATION
  • CALL
  • MUSIC
  • ANNOUNCEMENT
  • VOICE_COMMAND
  • CALL_RING
  • SYSTEM_SOUND
  • SAFETY
  • ALARM
  • NOTIFICATION
  • VEHICLE_STATUSEMERGENCY

2. sürüm, aşağıdaki bağlamlarla sınırlıdır.

Varsayılan sürüm 1'tir.

  • CALL
  • MUSIC
  • ANNOUNCEMENT
  • VOICE_COMMAND
audioPersistMasterMuteState Araba hizmeti yapılandırma dosyasında tanımlanır. Genel sessiz durumunu devam ettirmek için yapılandırma. true (varsayılan değer) olduğunda Android, başlatma sırasında genel sessiz durumu geri yükler. audioUseCarVolumeGroupMuting true olduğunda, sessize alma değişiklikleri her ses grubuna göre yapıldığından bu durum kalıcı sessize alma değişikliklerini etkilemez. Varsayılan değer true olarak ayarlanmıştır ve bir cihazda ana sessize alma özelliğinin devam etmemesi gerektiğinde bu değerin üzerine yazılmalıdır.
audioVolumeKeyEventTimeoutMs

Araba servisi yapılandırma dosyasında tanımlanır. Ses anahtarı etkinlikleri sırasında ses kontrolü değişiklikleri için bir araba ses grubu etkin kabul edilirken milisaniye cinsinden zaman aşımını belirten yapılandırma. Yapılandırma aşağıdaki gibi kullanılır:

  • Zaman aşımı, oynatma işlemi (oynatma işleminin ses kullanımıyla ilişkili ses seviyesi) durdurulduktan sonra otomatik ses seviyesi seçimi için dikkate alınıp alınamayacağını belirlemek amacıyla kullanılır.
  • Zaman aşımı, kullanıcının ayarladığı sesi değiştirmek için otomatik ses ayarları arasında gereken duraklatma süresi olarak da kullanılır.

Varsayılan değer 3000 milisaniyedir ve OEM'ler tarafından kullanıcı deneyimine göre ayarlanmalıdır.

audioUseCarVolumeGroupEvent Araba hizmeti yapılandırma dosyasında tanımlanan, ses grubuna geri çağırma etkinliklerini etkinleştiren yapılandırma. true olduğunda, istemciler ICarVolumeGroupEvent üzerinden hacimli grupları etkileyen etkinlikler için geri arama alır. Etkinleştirildiğinde:

  • Tedarikçi firmaların, ses donanımında gerçekleşen etkinlikler ve değişiklikler için IAudioControl#setModuleChangeCallback ve IAudioControl#registerGainCallback özelliklerini de desteklemesini önemle tavsiye ederiz.
  • Hem CarVolumeCallback hem de CarVolumeGroupEventCallback aynı uygulama tarafından kaydettirildiğinde ses grubu dizini ve ses grubu sessize alma geri çağırma işlevleri yalnızca CarVolumeGroupEventCallback üzerinden yapılır. Bu nedenle, tutarlı performans sağlamak için tüm uygulamaların yeni geri çağırma arayüzüne taşınmasını önemle tavsiye ederiz.
  • Varsayılan değer: false. Eski ses geri çağırmalarını destekleyen API'lerin desteği sonlandırıldığı ve yakında tamamen kaldırılacağı için bu ayarı true olarak belirlemenizi öneririz.

config_useFixedVolume frameworks/base/core/res/res/values/config.xml dosyasında tanımlanır. Araç ses hizmetinin ses seviyesi kontrolünü yönetmesine izin vermek için true olarak ayarlanmalıdır. config_useFixedVolume işareti ayarlanmadığında veya false (varsayılan değer) olarak ayarlandığında uygulamalar, AudioManager ses yönetimi API'lerini çağırabilir ve yazılım karıştırıcıda ses düzeyini akış türüne göre değiştirebilir. Bu, diğer uygulamalar üzerindeki olası etkisi ve yazılım karıştırıcıda ses azaltmanın, donanım amplifikatöründe alındığında sinyaldeki önemli bit sayısının azalmasına neden olabileceği gerçeği nedeniyle istenmeyebilir. Yapılandırılmamış ve ses ve sessize alma API'leri aracılığıyla true ses değişikliklerini AudioManager alacak şekilde ayarlanmış yeni cihazlar.
config_handleVolumeKeysInWindowManager frameworks/base/core/res/res/values/config.xml içinde tanımlanır. Araba ses hizmetinin ses anahtar etkinliklerini engellemesine izin vermek için true olarak ayarlanmalıdır. false (varsayılan değer) olarak ayarlanırsa ses düğmesi etkinlikleri ön plan uygulamasına yönlendirilebilir ve ses düğmesi etkinliği yönetimi, araç ses hizmetinin dışında olumsuz sonuçlara yol açabilir.
audioUseMinMaxActivationVolume Minimum ve maksimum etkinleşme hacmini etkinleştirmek için araç hizmeti yapılandırma dosyasında tanımlanır. true olduğunda, minimum ve maksimum etkinleşme ses seviyesi yönetimi nedeniyle ses kazancı dizini ayarlanabilir. false (varsayılan değer) olduğunda minimum ve maksimum etkinleştirme hacmi geçerli olmaz.

Araç ses sistemi hizmeti yapılandırmaları

Android 13'ten önce, araba servisi yapılandırmalarının üzerine packages/services/Car/service/res/values/config.xml dosyası için bir ürün yapılandırma yer paylaşımı (daha fazla bilgi için Derlemeyi kaynak yer paylaşımlarıyla özelleştirme başlıklı makaleyi inceleyin) yazılıyordu.

PRODUCT_PACKAGE_OVERLAYS := <path_to_overlay>

Yapılandırma dosyasının <path_to_overlay> ile gerçek konum arasındaki konumu packages/services/Car/service/res/values/ içermelidir.

Araç servisi RRO'ları

Android 13'ten beri AAOS, çalışma zamanında kaynak yer paylaşımlarını destekler. Araç ses yapılandırmasının değerini değiştirmek için RRO kullanın. Örneğin, device/google/cuttlefish/shared/auto/rro_overlay/'daki otomotiv cuttlefish referansı için RRO'lara bakın. audioUseDynamicRouting yapılandırması, device/google/cuttlefish/shared/auto/rro_overlay/CarServiceOverlay/res/values/config.xml içinde geçersiz kılındı.

<resources>
    <bool name="audioUseDynamicRouting">true</bool>
...

Kaynak yer paylaşımı haritası device/google/cuttlefish/shared/auto/rro_overlay/CarServiceOverlay/res/xml/overlays.xml içinde yer alır:

<overlay>
...
  <item target="bool/audioUseDynamicRouting"
value="@bool/audioUseDynamicRouting" />
...
</overlay>

device/google/cuttlefish/shared/auto/rro_overlay/CarServiceOverlay/AndroidManifest.xml bölümünde tanımlanan kaynak yer paylaşımı manifesti, targetPackage değerini com.android.car.updatable olarak ayarlar.

Daha fazla bilgi için şu kaynaklara göz atın:

Özellik etkin API

Cihazda özellik etkinse yöntem true değerini, aksi takdirde false değerini döndürür. CarAudioManager#isAudioFeatureEnabled API'sinde iletilen parametre şunlardan biri olmalıdır:

  • AUDIO_FEATURE_DYNAMIC_ROUTING
  • AUDIO_FEATURE_VOLUME_GROUP_MUTING
  • AUDIO_FEATURE_OEM_AUDIO_SERVICE
  • AUDIO_FEATURE_VOLUME_GROUP_EVENTS
  • AUDIO_FEATURE_AUDIO_MIRRORING