Android Automotive OS (AAOS) menggunakan tanda dan konfigurasi untuk mengaktifkan berbagai fitur, mulai dari perutean dinamis hingga tanda fitur yang lebih umum, seperti kontrol volume dari layanan mobil. Tanda konfigurasi AAOS saat ini untuk pengelolaan audio dijelaskan di sini.
Flag | Tujuan |
---|---|
audioUseDynamicRouting |
Ditentukan dalam file konfigurasi layanan mobil untuk
Enable AAOS routing.
Konfigurasi harus disetel ke true . Jika false ,
pemilihan rute dan sebagian besar CarAudioService dinonaktifkan dan OS
melakukan penggantian ke perilaku default yang dijelaskan dalam
Mengonfigurasi kebijakan audio.
|
useCoreAudioRouting |
Ditentukan dalam file konfigurasi layanan mobil untuk
mengaktifkan pengelolaan perutean audio inti AAOS.
Jika nilai disetel ke true , layanan audio mobil akan menggunakan
konfigurasi yang disiapkan dengan
mesin kebijakan audio yang dapat dikonfigurasi.
Jika nilai disetel ke false , pengelolaan perutean akan kembali
menggunakan definisi campuran kebijakan audio dinamis layanan audio mobil seperti
yang dikonfigurasi menggunakan audioUseDynamicRouting .
|
useCoreAudioVolume |
Ditentukan dalam file konfigurasi layanan mobil untuk
mengaktifkan pengelolaan volume audio inti AAOS.
Jika nilai ditetapkan ke true , layanan audio mobil akan menggunakan
penyiapan definisi grup volume dengan
mesin kebijakan audio yang dapat dikonfigurasi.
Jika nilai disetel ke false , pengelolaan volume akan kembali
menggunakan definisi grup volume default layanan audio mobil seperti yang dikonfigurasi
menggunakan audioUseDynamicRouting .
|
audioUseCarVolumeGroupMuting |
Ditentukan dalam file konfigurasi layanan mobil untuk mengaktifkan penonaktifan masing-masing
grup volume. Jika disetel ke false (nilai default), pembisuan
grup volume individual akan dinonaktifkan. Sebaliknya, membisukan akan mengaktifkan/menonaktifkan bisu utama.
Jika disetel ke true , peredaman grup volume mobil diaktifkan dan setiap
grup volume dapat diredam secara terpisah. Saat true ,
pembisuan grup volume harus diterapkan di
HAL Kontrol Audio.
|
audioUseHalDuckingSignals |
Ditentukan dalam file konfigurasi layanan mobil untuk mengaktifkan
IAudioControl#onDevicesToDuckChange API untuk memberi tahu HAL kapan harus
meredam. Jika true (nilai default), API akan menerima sinyal yang menunjukkan perangkat output mana yang harus diredam dan penggunaan mana yang harus difokuskan. Saat false ,
API tidak dipanggil. API tidak dipanggil kecuali jika
Audio Control HAL
menerapkan peredaman.
|
config_oemCarService |
Ditentukan dalam file konfigurasi layanan mobil, ini adalah nama komponen untuk
layanan penyesuaian OEM. OEM dapat memilih untuk menerapkan layanan ini guna
menyesuaikan tindakan layanan mobil untuk berbagai kebijakan. Jika OEM memilih untuk
menerapkan komponen ini, mereka harus menerapkan layanan untuk memperluas
OemCarService yang diekspos oleh car-lib, lalu menerapkan
layanan komponen yang diperlukan. Khusus untuk layanan audio mobil, OEM
dapat menerapkan salah satu sub-layanan audio untuk mengelola tindakan audio. Untuk
detailnya, lihat
Layanan Plugin Audio Mobil.
Jika nama komponen tidak valid, CarService tidak akan terhubung
ke layanan OEM mana pun. Nama komponen tidak boleh berupa paket pihak ketiga. Aplikasi
harus sudah diinstal sebelumnya. |
audioVolumeAdjustmentContextsVersion |
Ditentukan dalam file konfigurasi layanan mobil, konfigurasi untuk memilih versi daftar prioritas konteks penyesuaian volume. Versi 1 mencakup semua konteks audio, dalam urutan ini:
Versi 2 terbatas pada konteks berikut, dalam urutan ini. Versi defaultnya adalah
|
audioPersistMasterMuteState |
Ditentukan dalam file konfigurasi layanan mobil, konfigurasi untuk mempertahankan status senyap global. Jika true (nilai default), Android akan memulihkan
status senyap global saat booting. Jika audioUseCarVolumeGroupMuting adalah
true , hal ini tidak akan memengaruhi perubahan senyapkan yang tetap ada karena perubahan
senyapkan didasarkan pada grup volume individual. Nilai default ditetapkan ke
true dan harus ditimpa jika bisu utama tidak boleh
dipertahankan untuk perangkat. |
audioVolumeKeyEventTimeoutMs |
Ditentukan dalam file konfigurasi layanan mobil, konfigurasi untuk menunjukkan waktu tunggu dalam milidetik saat grup volume mobil dianggap aktif untuk perubahan kontrol volume selama peristiwa tombol volume. Konfigurasi digunakan sebagai berikut:
Nilai defaultnya adalah |
audioUseCarVolumeGroupEvent |
Ditentukan dalam file konfigurasi layanan mobil, konfigurasi untuk mengaktifkan peristiwa
callback ke grup volume. Saat true , klien menerima callback
melalui ICarVolumeGroupEvent ke peristiwa yang memengaruhi grup
volume. Jika diaktifkan:
Nilai default-nya adalah |
config_useFixedVolume |
Ditentukan dalam frameworks/base/core/res/res/values/config.xml .
Harus disetel ke true agar layanan audio mobil dapat mengelola
kontrol volume. Jika tanda config_useFixedVolume tidak
ditetapkan, atau ditetapkan ke false (nilai default), aplikasi dapat memanggil
API pengelolaan volume AudioManager dan mengubah volume menurut
jenis streaming di mixer software. Hal ini mungkin tidak diinginkan karena
kemungkinan efek pada aplikasi lain dan fakta bahwa atenuasi volume di
mixer software dapat menghasilkan lebih sedikit bit signifikan yang tersedia dalam
sinyal saat diterima di amplifier hardware. Perangkat baru yang belum
dikonfigurasi dan yang disetel ke true menerima perubahan volume
melalui API volume dan mute AudioManager .
|
config_handleVolumeKeysInWindowManager |
Ditentukan dalam frameworks/base/core/res/res/values/config.xml , harus
ditetapkan ke true untuk mengizinkan layanan audio mobil mencegat
peristiwa tombol volume. Jika disetel ke false (nilai default), peristiwa tombol volume dapat diteruskan ke aplikasi latar depan dan dapat menyebabkan hasil yang merugikan dari pengelolaan peristiwa tombol volume di luar layanan audio mobil. |
audioUseMinMaxActivationVolume |
Ditentukan dalam file konfigurasi layanan mobil untuk mengaktifkan
volume aktivasi minimum dan maksimum. Saat
true , indeks perolehan volume dapat disesuaikan karena
pengelolaan volume aktivasi minimum dan maksimum. Jika
false (nilai default), volume aktivasi minimum dan maksimum tidak berlaku.
|
audioUseFadeManagerConfiguration |
Ditentukan dalam file konfigurasi layanan mobil untuk mengaktifkan
perilaku kehilangan fokus audio yang diterapkan sistem. Saat true ,
framework audio mobil mem-parsing definisi konfigurasi fade audio mobil dan
menerapkan FadeManagerConfiguration masing-masing saat mengirim
kehilangan fokus audio. Jika false (nilai default), sistem tidak
menerapkan perilaku fade saat aplikasi kehilangan fokus audio.
|
Konfigurasi layanan audio mobil
Sebelum Android 13, konfigurasi layanan mobil ditimpa
dengan overlay konfigurasi produk (untuk mempelajari lebih lanjut, lihat
Menyesuaikan build dengan overlay resource)
untuk file packages/services/Car/service/res/values/config.xml
.
PRODUCT_PACKAGE_OVERLAYS := <path_to_overlay>
Lokasi file konfigurasi dari <path_to_overlay>
ke lokasi sebenarnya
harus mencakup packages/services/Car/service/res/values/
.
RRO servis mobil
Sejak Android 13, AAOS mendukung
Overlay resource runtime. Gunakan RRO untuk mengubah nilai konfigurasi audio mobil. Misalnya, lihat RRO untuk referensi
cuttlefish
otomotif di
device/google/cuttlefish/shared/auto/rro_overlay/
. Konfigurasi
audioUseDynamicRouting
diganti di
device/google/cuttlefish/shared/auto/rro_overlay/CarServiceOverlay/res/values/config.xml
.
<resources>
<bool name="audioUseDynamicRouting">true</bool>
...
Peta overlay resource dimuat dalam
device/google/cuttlefish/shared/auto/rro_overlay/CarServiceOverlay/res/xml/overlays.xml
:
<overlay>
...
<item target="bool/audioUseDynamicRouting"
value="@bool/audioUseDynamicRouting" />
...
</overlay>
Manifes overlay resource yang ditentukan dalam
device/google/cuttlefish/shared/auto/rro_overlay/CarServiceOverlay/AndroidManifest.xml
berisi targetPackage
yang ditetapkan sebagai com.android.car.updatable
.
Lihat referensi berikut untuk mengetahui informasi selengkapnya:
API yang mendukung fitur
Metode ini menampilkan true
jika fitur diaktifkan di perangkat, atau false
jika tidak. Di CarAudioManager#isAudioFeatureEnabled
API, parameter yang diteruskan harus salah satu dari:
AUDIO_FEATURE_DYNAMIC_ROUTING
AUDIO_FEATURE_VOLUME_GROUP_MUTING
AUDIO_FEATURE_OEM_AUDIO_SERVICE
AUDIO_FEATURE_VOLUME_GROUP_EVENTS
AUDIO_FEATURE_AUDIO_MIRRORING