音訊設定 AAOS 旗標

Android Automotive OS (AAOS) 會使用旗標和設定來提供 功能,從動態轉送到更通用的功能旗標,例如 。音訊目前的 AAOS 設定旗標 下文將詳細說明

檢舉 目的
audioUseDynamicRouting 車輛服務設定檔所定義 啟用 AAOS 轉送。 這項設定必須設為 true。發生false時, 系統會停用轉送功能和 CarAudioService 功能,以及 OS 會改回使用 設定音訊政策
audioUseCarVolumeGroupMuting 在車輛服務設定檔中定義,用於啟用個別的變異功能 音量群組設為 false (預設值) 時,忽略以下元素: 已停用個別磁碟區群組。而是會關閉主節點靜音。 設為 true 時,系統會啟用車輛音量群組靜音功能, 個別音量群組可以分開靜音。發生true時, 必須在 音訊控制 HAL
audioUseHalDuckingSignals 在車輛服務設定檔所定義,啟用 使用 IAudioControl#onDevicesToDuckChange API 通知 HAL 的時機 鴨子。如果 true (預設值),API 會收到指出哪些信號 以及哪些使用情況具有焦點。發生false時, 未呼叫 API除非呼叫 音訊控制 HAL 實作鴨子。
config_oemCarService 在汽車服務設定檔所定義,這是車輛服務設定檔所定義 原始設備製造商 (OEM) 自訂服務原始設備製造商 (OEM) 可選擇導入這項服務 針對不同政策自訂汽車服務動作。如果原始設備製造商選擇 就必須實作服務 OemCarService 由 car-lib 公開,然後實作 必要的元件服務原始設備製造商 (OEM) 僅適用於汽車音訊服務 實作任何音訊子服務來管理音訊動作。適用對象 詳細資料,請參閱 Car Audio 外掛程式服務。 如果元件名稱無效,CarService 無法連結 提供技術支援服務元件名稱不得為第三方套件。這項服務 必須預先安裝。
audioVolumeAdjustmentContextsVersion

在車輛服務設定檔所定義,設定會選取 版本調整情境優先順序清單的版本

版本 1 包含所有音訊內容,其順序如下:

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

第 2 版會按照順序包含下列內容。

預設版本為 1

  • CALL
  • MUSIC
  • ANNOUNCEMENT
  • VOICE_COMMAND
audioPersistMasterMuteState 定義於車輛服務設定檔,用於保存全域設定 靜音狀態。當 true (預設值) Android 還原 啟動期間的全域靜音狀態audioUseCarVolumeGroupMutingtrue,這不會影響設為靜音狀態的持續忽略變更 都是根據個別磁碟區群組來做調整預設值為 true,且在主要執行個體靜音不應遭到覆寫時必須覆寫 保留在裝置上
audioVolumeKeyEventTimeoutMs

由車輛服務設定檔所定義,用於表示 逾時,而汽車音量群組視為啟用 音量控制項在音量重要事件期間會隨之變化使用這個設定 如下所示:

  • 逾時功能可用來判斷是否播放音訊 (相關音訊音量 的相關技術) 仍可自動考慮 。
  • 逾時也可用來做為自動切換間隔時間所需的暫停時間長度 調整音量來變更使用者的調整內容

預設值為 3000 毫秒,且應為此值 根據原始設備製造商 (OEM) 進行調整,提供專屬的使用者體驗。

audioUseCarVolumeGroupEvent 由車輛服務設定檔所定義,用於啟用回呼的設定 事件傳送至音量群組當 true 時,用戶端會收到回呼 到 ICarVolumeGroupEvent為止 群組。啟用後:

  • 我們強烈建議這些供應商也提供支援 「IAudioControl#setModuleChangeCallback」和 使用 IAudioControl#registerGainCallback 記錄事件和變更 音訊硬體
  • 如果 CarVolumeCallbackCarVolumeGroupEventCallback 的註冊身分 磁碟區群組索引和磁碟區群組靜音回呼 透過 CarVolumeGroupEventCallback。 因此,我們強烈建議所有應用程式改用新版應用程式。 回呼介面,以確保一致的效能。
  • 預設值為 false。我們建議您將這項設定 變更為 true,因為支援舊版磁碟區的 API 回呼已淘汰,不久後也將完全移除。

config_useFixedVolume frameworks/base/core/res/res/values/config.xml 中定義。 必須設為 true,才能讓車輛音訊服務管理 調整音量。config_useFixedVolume 標記不是 設為「或」設為「false」(預設值),應用程式就可以呼叫 AudioManager 的磁碟區管理 API,並將音量調至 串流類型。這可能不是理想的結果 以及潛在的 軟體混合器可能會使得 才接通收到的訊號尚未採用的新裝置 已設定,且設為 true 可接收磁碟區變更 透過 AudioManager 音量和靜音 API
config_handleVolumeKeysInWindowManager 定義於frameworks/base/core/res/res/values/config.xml,必須 設為 true 可讓車輛音訊服務攔截 音量鍵事件如果音量設為 false (預設值) 重要事件可以轉送至前景應用程式,而且可能會導致不良 。

汽車音訊服務設定

在 Android 13 以下版本中,系統已覆寫車輛服務設定 含有產品設定疊加層 (詳情請參閱 使用資源疊加層自訂建構) packages/services/Car/service/res/values/config.xml 檔案。

PRODUCT_PACKAGE_OVERLAYS := <path_to_overlay>

設定檔的位置,從 <path_to_overlay> 到實際 地區應包含 packages/services/Car/service/res/values/

汽車維修服務 RRO

從 Android 13 開始,AAOS 也開始支援 執行階段資源重疊。透過 RRO 變更 值。舉例來說,請參閱 汽車cuttlefish參考資源: device/google/cuttlefish/shared/auto/rro_overlay/。 以下設定會覆寫 audioUseDynamicRouting 設定: device/google/cuttlefish/shared/auto/rro_overlay/CarServiceOverlay/res/values/config.xml

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

資源疊加層地圖包含在 device/google/cuttlefish/shared/auto/rro_overlay/CarServiceOverlay/res/xml/overlays.xml:

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

以下項目中定義的資源疊加層資訊清單: device/google/cuttlefish/shared/auto/rro_overlay/CarServiceOverlay/AndroidManifest.xml 包含設為 com.android.car.updatabletargetPackage

如需更多資訊,請參閱以下資源:

功能啟用的 API

如果該功能在裝置上啟用,此方法會傳回 true;否則, false。在 CarAudioManager#isAudioFeatureEnabled API 中,參數 傳入的 必須是下列其中一個:

  • AUDIO_FEATURE_DYNAMIC_ROUTING
  • AUDIO_FEATURE_VOLUME_GROUP_MUTING
  • AUDIO_FEATURE_OEM_AUDIO_SERVICE
  • AUDIO_FEATURE_VOLUME_GROUP_EVENTS
  • AUDIO_FEATURE_AUDIO_MIRRORING