| #BOARD_USES_GENERIC_AUDIO := true |
| # |
| #AUDIO_FEATURE_FLAGS |
| ifeq ($(TARGET_USES_QMAA_OVERRIDE_AUDIO), false) |
| ifeq ($(TARGET_USES_QMAA),true) |
| AUDIO_USE_STUB_HAL := true |
| endif |
| endif |
| |
| ifneq ($(AUDIO_USE_STUB_HAL), true) |
| BOARD_USES_ALSA_AUDIO := true |
| |
| ifneq ($(TARGET_USES_AOSP_FOR_AUDIO), true) |
| USE_CUSTOM_AUDIO_POLICY := 1 |
| AUDIO_FEATURE_QSSI_COMPLIANCE := true |
| AUDIO_FEATURE_ENABLED_COMPRESS_CAPTURE := false |
| AUDIO_FEATURE_ENABLED_COMPRESS_INPUT := true |
| AUDIO_FEATURE_ENABLED_CONCURRENT_CAPTURE := true |
| AUDIO_FEATURE_ENABLED_COMPRESS_VOIP := false |
| AUDIO_FEATURE_ENABLED_DYNAMIC_ECNS := true |
| AUDIO_FEATURE_ENABLED_EXTN_FORMATS := true |
| AUDIO_FEATURE_ENABLED_EXTN_FLAC_DECODER := true |
| AUDIO_FEATURE_ENABLED_EXTN_RESAMPLER := true |
| AUDIO_FEATURE_ENABLED_FM_POWER_OPT := true |
| AUDIO_FEATURE_ENABLED_HDMI_SPK := true |
| AUDIO_FEATURE_ENABLED_PCM_OFFLOAD := true |
| AUDIO_FEATURE_ENABLED_PCM_OFFLOAD_24 := true |
| AUDIO_FEATURE_ENABLED_FLAC_OFFLOAD := true |
| AUDIO_FEATURE_ENABLED_VORBIS_OFFLOAD := true |
| AUDIO_FEATURE_ENABLED_WMA_OFFLOAD := true |
| AUDIO_FEATURE_ENABLED_ALAC_OFFLOAD := true |
| AUDIO_FEATURE_ENABLED_APE_OFFLOAD := true |
| AUDIO_FEATURE_ENABLED_AAC_ADTS_OFFLOAD := true |
| AUDIO_FEATURE_ENABLED_MPEGH_SW_DECODER := true |
| AUDIO_FEATURE_ENABLED_PROXY_DEVICE := true |
| AUDIO_FEATURE_ENABLED_SSR := true |
| AUDIO_FEATURE_ENABLED_DTS_EAGLE := false |
| BOARD_USES_SRS_TRUEMEDIA := false |
| DTS_CODEC_M_ := false |
| MM_AUDIO_ENABLED_SAFX := true |
| AUDIO_FEATURE_ENABLED_HW_ACCELERATED_EFFECTS := false |
| AUDIO_FEATURE_ENABLED_AUDIOSPHERE := true |
| AUDIO_FEATURE_ENABLED_USB_TUNNEL := true |
| AUDIO_FEATURE_ENABLED_A2DP_OFFLOAD := true |
| ifeq ($(filter R% r%,$(TARGET_PLATFORM_VERSION)),) |
| AUDIO_FEATURE_ENABLED_3D_AUDIO := true |
| endif |
| AUDIO_FEATURE_ENABLED_AHAL_EXT := true |
| AUDIO_FEATURE_ENABLED_EXTENDED_COMPRESS_FORMAT := true |
| DOLBY_ENABLE := false |
| endif |
| |
| AUDIO_FEATURE_ENABLED_DLKM := true |
| BOARD_SUPPORTS_SOUND_TRIGGER := true |
| BOARD_SUPPORTS_GCS := false |
| AUDIO_FEATURE_ENABLED_INSTANCE_ID := true |
| AUDIO_USE_DEEP_AS_PRIMARY_OUTPUT := false |
| AUDIO_FEATURE_ENABLED_VBAT_MONITOR := true |
| AUDIO_FEATURE_ENABLED_NT_PAUSE_TIMEOUT := true |
| AUDIO_FEATURE_ENABLED_ANC_HEADSET := true |
| AUDIO_FEATURE_ENABLED_CUSTOMSTEREO := true |
| AUDIO_FEATURE_ENABLED_FLUENCE := true |
| AUDIO_FEATURE_ENABLED_HDMI_EDID := true |
| AUDIO_FEATURE_ENABLED_HDMI_PASSTHROUGH := true |
| #AUDIO_FEATURE_ENABLED_KEEP_ALIVE := true |
| AUDIO_FEATURE_ENABLED_DISPLAY_PORT := true |
| AUDIO_FEATURE_ENABLED_DS2_DOLBY_DAP := false |
| AUDIO_FEATURE_ENABLED_HFP := true |
| AUDIO_FEATURE_ENABLED_INCALL_MUSIC := true |
| AUDIO_FEATURE_ENABLED_MULTI_VOICE_SESSIONS := true |
| AUDIO_FEATURE_ENABLED_KPI_OPTIMIZE := true |
| AUDIO_FEATURE_ENABLED_SPKR_PROTECTION := true |
| AUDIO_FEATURE_ENABLED_ACDB_LICENSE := false |
| AUDIO_FEATURE_ENABLED_DEV_ARBI := false |
| AUDIO_FEATURE_ENABLED_DYNAMIC_LOG := true |
| MM_AUDIO_ENABLED_FTM := true |
| TARGET_USES_QCOM_MM_AUDIO := true |
| AUDIO_FEATURE_ENABLED_SOURCE_TRACKING := true |
| AUDIO_FEATURE_ENABLED_GEF_SUPPORT := true |
| BOARD_SUPPORTS_QAHW := false |
| AUDIO_FEATURE_ENABLED_RAS := true |
| AUDIO_FEATURE_ENABLED_SND_MONITOR := true |
| AUDIO_FEATURE_ENABLED_USB_BURST_MODE := true |
| AUDIO_FEATURE_ENABLED_SVA_MULTI_STAGE := true |
| AUDIO_FEATURE_ENABLED_BATTERY_LISTENER := true |
| ##AUDIO_FEATURE_FLAGS |
| #AGM |
| AUDIO_AGM := libagmclient |
| AUDIO_AGM += libagmservice |
| AUDIO_AGM += vendor.qti.hardware.AGMIPC@1.0-impl |
| AUDIO_AGM += vendor.qti.hardware.AGMIPC@1.0-service |
| AUDIO_AGM += vendor.qti.hardware.AGMIPC@1.0-service.rc |
| AUDIO_AGM += libagm |
| AUDIO_AGM += agmplay |
| AUDIO_AGM += agmcap |
| AUDIO_AGM += libagmmixer |
| AUDIO_AGM += agmcompressplay |
| AUDIO_AGM += libagm_mixer_plugin |
| AUDIO_AGM += libagm_pcm_plugin |
| AUDIO_AGM += libagm_compress_plugin |
| |
| #PAL Module |
| AUDIO_PAL := libar-pal |
| AUDIO_PAL += lib_bt_bundle |
| AUDIO_PAL += catf |
| AUDIO_PAL += lib_bt_aptx |
| BOARD_SUPPORTS_OPENSOURCE_STHAL := true |
| |
| AUDIO_HARDWARE := audio.a2dp.default |
| AUDIO_HARDWARE += audio.usb.default |
| AUDIO_HARDWARE += audio.r_submix.default |
| AUDIO_HARDWARE += audio.primary.monaco |
| |
| #HAL Wrapper |
| AUDIO_WRAPPER := libqahw |
| AUDIO_WRAPPER += libqahwwrapper |
| |
| #HAL Test app |
| AUDIO_HAL_TEST_APPS := hal_play_test |
| AUDIO_HAL_TEST_APPS += hal_rec_test |
| |
| PRODUCT_PACKAGES += $(AUDIO_HARDWARE) |
| PRODUCT_PACKAGES += $(AUDIO_WRAPPER) |
| PRODUCT_PACKAGES += $(AUDIO_HAL_TEST_APPS) |
| ifeq ($(TARGET_SUPPORTS_WEAR_AON),true) |
| PRODUCT_PACKAGES += IDP_acdb_cal_monaco_slate.acdb |
| PRODUCT_PACKAGES += IDP_workspaceFileXml_monaco_slate.qwsp |
| PRODUCT_PACKAGES += IDP_acdb_cal_monaco_slate_amic.acdb |
| PRODUCT_PACKAGES += IDP_workspaceFileXml_monaco_slate_amic.qwsp |
| PRODUCT_PACKAGES += IDP_acdb_cal_monaco_slate_wsa.acdb |
| PRODUCT_PACKAGES += IDP_workspaceFileXml_monaco_slate_wsa.qwsp |
| else |
| PRODUCT_PACKAGES += IDP_acdb_cal_monaco.acdb |
| PRODUCT_PACKAGES += IDP_workspaceFileXml_monaco.qwsp |
| PRODUCT_PACKAGES += IDP_acdb_cal_monaco_amic.acdb |
| PRODUCT_PACKAGES += IDP_workspaceFileXml_monaco_amic.qwsp |
| PRODUCT_PACKAGES += IDP_acdb_cal_monaco_wsa.acdb |
| PRODUCT_PACKAGES += IDP_workspaceFileXml_monaco_wsa.qwsp |
| endif |
| |
| ifeq ($(AUDIO_FEATURE_ENABLED_DLKM),true) |
| BOARD_VENDOR_KERNEL_MODULES += \ |
| $(KERNEL_MODULES_OUT)/spf_core_dlkm.ko \ |
| $(KERNEL_MODULES_OUT)/audio_pkt_dlkm.ko \ |
| $(KERNEL_MODULES_OUT)/gpr_dlkm.ko \ |
| $(KERNEL_MODULES_OUT)/audio_prm_dlkm.ko \ |
| $(KERNEL_MODULES_OUT)/audpkt_ion_dlkm.ko \ |
| $(KERNEL_MODULES_OUT)/q6_pdr_dlkm.ko \ |
| $(KERNEL_MODULES_OUT)/q6_notifier_dlkm.ko \ |
| $(KERNEL_MODULES_OUT)/adsp_loader_dlkm.ko \ |
| $(KERNEL_MODULES_OUT)/pinctrl_lpi_dlkm.ko \ |
| $(KERNEL_MODULES_OUT)/swr_dlkm.ko \ |
| $(KERNEL_MODULES_OUT)/wcd_core_dlkm.ko \ |
| $(KERNEL_MODULES_OUT)/swr_ctrl_dlkm.ko \ |
| $(KERNEL_MODULES_OUT)/stub_dlkm.ko \ |
| $(KERNEL_MODULES_OUT)/wcd9xxx_dlkm.ko \ |
| $(KERNEL_MODULES_OUT)/bolero_cdc_dlkm.ko \ |
| $(KERNEL_MODULES_OUT)/va_macro_dlkm.ko \ |
| $(KERNEL_MODULES_OUT)/rx_macro_dlkm.ko \ |
| $(KERNEL_MODULES_OUT)/tx_macro_dlkm.ko \ |
| $(KERNEL_MODULES_OUT)/pmw5100-spmi_dlkm.ko \ |
| $(KERNEL_MODULES_OUT)/besbev_dlkm.ko \ |
| $(KERNEL_MODULES_OUT)/besbev-slave_dlkm.ko \ |
| $(KERNEL_MODULES_OUT)/wsa883x_dlkm.ko \ |
| $(KERNEL_MODULES_OUT)/machine_dlkm.ko\ |
| $(KERNEL_MODULES_OUT)/snd_event_dlkm.ko |
| endif |
| |
| ifeq ($(AUDIO_FEATURE_ENABLED_DLKM),true) |
| ifeq ($(TARGET_SUPPORTS_WEAR_AON),true) |
| BOARD_VENDOR_KERNEL_MODULES += \ |
| $(KERNEL_MODULES_OUT)/cc_dlkm.ko \ |
| $(KERNEL_MODULES_OUT)/audio_cc_ipc_dlkm.ko |
| endif |
| endif |
| |
| #Audio DLKM |
| AUDIO_DLKM := spf_core_dlkm.ko |
| AUDIO_DLKM += audio_pkt_dlkm.ko |
| AUDIO_DLKM += gpr_dlkm.ko |
| AUDIO_DLKM += audio_prm_dlkm.ko |
| AUDIO_DLKM += audpkt_ion_dlkm.ko |
| AUDIO_DLKM += q6_pdr_dlkm.ko |
| AUDIO_DLKM += q6_notifier_dlkm.ko |
| AUDIO_DLKM += adsp_loader_dlkm.ko |
| AUDIO_DLKM += pinctrl_lpi_dlkm.ko |
| AUDIO_DLKM += swr_dlkm.ko |
| AUDIO_DLKM += wcd_core_dlkm.ko |
| AUDIO_DLKM += swr_ctrl_dlkm.ko |
| AUDIO_DLKM += stub_dlkm.ko |
| AUDIO_DLKM += wcd9xxx_dlkm.ko |
| AUDIO_DLKM += bolero_cdc_dlkm.ko |
| AUDIO_DLKM += va_macro_dlkm.ko |
| AUDIO_DLKM += rx_macro_dlkm.ko |
| AUDIO_DLKM += tx_macro_dlkm.ko |
| AUDIO_DLKM += pmw5100-spmi_dlkm.ko |
| AUDIO_DLKM += besbev_dlkm.ko |
| AUDIO_DLKM += besbev-slave_dlkm.ko |
| AUDIO_DLKM += wsa883x_dlkm.ko |
| AUDIO_DLKM += machine_dlkm.ko |
| AUDIO_DLKM += snd_event_dlkm.ko |
| ifeq ($(TARGET_SUPPORTS_WEAR_AON),true) |
| AUDIO_DLKM += cc_dlkm.ko |
| AUDIO_DLKM += audio_cc_ipc_dlkm.ko |
| endif |
| |
| PRODUCT_PACKAGES += $(AUDIO_DLKM) |
| |
| ifneq ($(strip $(TARGET_USES_RRO)), true) |
| #Audio Specific device overlays |
| DEVICE_PACKAGE_OVERLAYS += vendor/qcom/opensource/audio-hal/primary-hal/configs/common/overlay |
| endif |
| PRODUCT_PACKAGES += $(AUDIO_AGM) |
| PRODUCT_PACKAGES += $(AUDIO_PAL) |
| |
| PRODUCT_COPY_FILES += \ |
| vendor/qcom/opensource/audio-hal/primary-hal/configs/monaco/audio_io_policy.conf:$(TARGET_COPY_OUT_VENDOR)/etc/audio_io_policy.conf \ |
| vendor/qcom/opensource/audio-hal/primary-hal/configs/monaco/audio_effects.conf:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.conf \ |
| vendor/qcom/opensource/audio-hal/primary-hal/configs/monaco/audio_effects.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.xml \ |
| vendor/qcom/opensource/audio-hal/primary-hal/configs/monaco/mixer_paths_monaco_idp.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_monaco_idp.xml \ |
| vendor/qcom/opensource/audio-hal/primary-hal/configs/monaco/mixer_paths_monaco_idp_amic.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_monaco_idp_amic.xml \ |
| vendor/qcom/opensource/audio-hal/primary-hal/configs/monaco/mixer_paths_monaco_idp_wsa.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_monaco_idp_wsa.xml \ |
| vendor/qcom/opensource/audio-hal/primary-hal/configs/monaco/mixer_paths_monaco_idp_slate.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_monaco_idp_slate.xml \ |
| vendor/qcom/opensource/audio-hal/primary-hal/configs/monaco/mixer_paths_monaco_idp_slate_amic.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_monaco_idp_slate_amic.xml \ |
| vendor/qcom/opensource/audio-hal/primary-hal/configs/monaco/mixer_paths_monaco_idp_slate_wsa.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_monaco_idp_slate_wsa.xml \ |
| vendor/qcom/opensource/audio-hal/primary-hal/configs/monaco/audio_configs.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_configs.xml \ |
| vendor/qcom/opensource/audio-hal/primary-hal/configs/monaco/audio_configs_stock.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_configs_stock.xml \ |
| frameworks/native/data/etc/android.hardware.audio.pro.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.audio.pro.xml \ |
| frameworks/native/data/etc/android.hardware.audio.low_latency.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.audio.low_latency.xml \ |
| vendor/qcom/opensource/pal/configs/monaco/resourcemanager_monaco_idp.xml:$(TARGET_COPY_OUT_VENDOR)/etc/resourcemanager_monaco_idp.xml \ |
| vendor/qcom/opensource/pal/configs/monaco/resourcemanager_monaco_idp_amic.xml:$(TARGET_COPY_OUT_VENDOR)/etc/resourcemanager_monaco_idp_amic.xml \ |
| vendor/qcom/opensource/pal/configs/monaco/resourcemanager_monaco_idp_wsa.xml:$(TARGET_COPY_OUT_VENDOR)/etc/resourcemanager_monaco_idp_wsa.xml \ |
| vendor/qcom/opensource/pal/configs/monaco/resourcemanager_monaco_idp_slate.xml:$(TARGET_COPY_OUT_VENDOR)/etc/resourcemanager_monaco_idp_slate.xml \ |
| vendor/qcom/opensource/pal/configs/monaco/resourcemanager_monaco_idp_slate_amic.xml:$(TARGET_COPY_OUT_VENDOR)/etc/resourcemanager_monaco_idp_slate_amic.xml \ |
| vendor/qcom/opensource/pal/configs/monaco/resourcemanager_monaco_idp_slate_wsa.xml:$(TARGET_COPY_OUT_VENDOR)/etc/resourcemanager_monaco_idp_slate_wsa.xml \ |
| vendor/qcom/opensource/pal/configs/monaco/usecaseKvManager.xml:$(TARGET_COPY_OUT_VENDOR)/etc/usecaseKvManager.xml \ |
| vendor/qcom/opensource/audio-hal/primary-hal/configs/monaco/card-defs.xml:$(TARGET_COPY_OUT_VENDOR)/etc/card-defs.xml |
| |
| #XML Audio configuration files |
| ifneq ($(TARGET_USES_AOSP_FOR_AUDIO), true) |
| PRODUCT_COPY_FILES += \ |
| $(TOPDIR)vendor/qcom/opensource/audio-hal/primary-hal/configs/monaco/audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio/audio_policy_configuration.xml |
| endif |
| PRODUCT_COPY_FILES += \ |
| $(TOPDIR)vendor/qcom/opensource/audio-hal/primary-hal/configs/common/audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration.xml \ |
| $(TOPDIR)frameworks/av/services/audiopolicy/config/a2dp_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/a2dp_audio_policy_configuration.xml \ |
| $(TOPDIR)frameworks/av/services/audiopolicy/config/audio_policy_volumes.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_volumes.xml \ |
| $(TOPDIR)frameworks/av/services/audiopolicy/config/default_volume_tables.xml:$(TARGET_COPY_OUT_VENDOR)/etc/default_volume_tables.xml \ |
| $(TOPDIR)frameworks/av/services/audiopolicy/config/r_submix_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/r_submix_audio_policy_configuration.xml \ |
| $(TOPDIR)frameworks/av/services/audiopolicy/config/usb_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/usb_audio_policy_configuration.xml \ |
| $(TOPDIR)vendor/qcom/opensource/audio-hal/primary-hal/configs/common/bluetooth_qti_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_qti_audio_policy_configuration.xml |
| |
| # Low latency audio buffer size in frames |
| PRODUCT_VENDOR_PROPERTIES += \ |
| vendor.audio_hal.period_size=192 |
| |
| ##Ambisonic Capture |
| PRODUCT_VENDOR_PROPERTIES += \ |
| persist.vendor.audio.ambisonic.capture=false \ |
| persist.vendor.audio.ambisonic.auto.profile=false |
| |
| PRODUCT_VENDOR_PROPERTIES += \ |
| persist.vendor.audio.apptype.multirec.enabled=false |
| |
| ##fluencetype can be "fluence" or "fluencepro" or "none" |
| PRODUCT_VENDOR_PROPERTIES += \ |
| ro.vendor.audio.sdk.fluencetype=none\ |
| persist.vendor.audio.fluence.voicecall=true\ |
| persist.vendor.audio.fluence.voicerec=false\ |
| persist.vendor.audio.fluence.speaker=true\ |
| persist.vendor.audio.fluence.tmic.enabled=false |
| |
| ##speaker protection v3 switch and ADSP AFE API version |
| PRODUCT_VENDOR_PROPERTIES += \ |
| persist.vendor.audio.spv3.enable=true\ |
| persist.vendor.audio.avs.afe_api_version=2 |
| |
| # |
| #snapdragon value add features |
| # |
| PRODUCT_VENDOR_PROPERTIES += \ |
| ro.qc.sdk.audio.ssr=false |
| |
| ##fluencetype can be "fluence" or "fluencepro" or "none" |
| PRODUCT_VENDOR_PROPERTIES += \ |
| ro.qc.sdk.audio.fluencetype=none\ |
| persist.audio.fluence.voicecall=true\ |
| persist.audio.fluence.voicerec=false\ |
| persist.audio.fluence.speaker=true |
| |
| #disable tunnel encoding |
| PRODUCT_VENDOR_PROPERTIES += \ |
| vendor.audio.tunnel.encode=false |
| |
| #Disable RAS Feature by default |
| PRODUCT_VENDOR_PROPERTIES += \ |
| persist.vendor.audio.ras.enabled=false |
| |
| #Buffer size in kbytes for compress offload playback |
| PRODUCT_VENDOR_PROPERTIES += \ |
| vendor.audio.offload.buffer.size.kb=32 |
| |
| #Enable audio track offload by default |
| PRODUCT_VENDOR_PROPERTIES += \ |
| vendor.audio.offload.track.enable=true |
| |
| #enable voice path for PCM VoIP by default |
| PRODUCT_VENDOR_PROPERTIES += \ |
| vendor.voice.path.for.pcm.voip=true |
| |
| #Enable multi channel aac through offload |
| PRODUCT_VENDOR_PROPERTIES += \ |
| vendor.audio.offload.multiaac.enable=true |
| |
| #Enable DS2, Hardbypass feature for Dolby |
| PRODUCT_VENDOR_PROPERTIES += \ |
| vendor.audio.dolby.ds2.enabled=false\ |
| vendor.audio.dolby.ds2.hardbypass=false |
| |
| #Disable Multiple offload sesison |
| PRODUCT_VENDOR_PROPERTIES += \ |
| vendor.audio.offload.multiple.enabled=false |
| |
| #Disable Compress passthrough playback |
| PRODUCT_VENDOR_PROPERTIES += \ |
| vendor.audio.offload.passthrough=false |
| |
| #Disable surround sound recording |
| PRODUCT_VENDOR_PROPERTIES += \ |
| ro.vendor.audio.sdk.ssr=false |
| |
| #timeout crash duration set to 20sec before system is ready. |
| #timeout duration updates to default timeout of 5sec once the system is ready. |
| PRODUCT_VENDOR_PROPERTIES += \ |
| vendor.audio.hal.boot.timeout.ms=20000 |
| |
| #enable dsp gapless mode by default |
| PRODUCT_VENDOR_PROPERTIES += \ |
| vendor.audio.offload.gapless.enabled=true |
| |
| #enable pbe effects |
| PRODUCT_VENDOR_PROPERTIES += \ |
| vendor.audio.safx.pbe.enabled=false |
| |
| #parser input buffer size(256kb) in byte stream mode |
| PRODUCT_VENDOR_PROPERTIES += \ |
| vendor.audio.parser.ip.buffer.size=262144 |
| |
| #flac sw decoder 24 bit decode capability |
| PRODUCT_VENDOR_PROPERTIES += \ |
| vendor.audio.flac.sw.decoder.24bit=true |
| |
| #split a2dp DSP supported encoder list |
| PRODUCT_VENDOR_PROPERTIES += \ |
| persist.vendor.bt.a2dp_offload_cap=sbc-aptx-aptxtws-aptxhd-aac-ldac |
| |
| # A2DP offload support |
| PRODUCT_VENDOR_PROPERTIES += \ |
| ro.bluetooth.a2dp_offload.supported=true |
| |
| # Disable A2DP offload |
| PRODUCT_VENDOR_PROPERTIES += \ |
| persist.bluetooth.a2dp_offload.disabled=false |
| |
| # A2DP offload DSP supported encoder list |
| PRODUCT_VENDOR_PROPERTIES += \ |
| persist.bluetooth.a2dp_offload.cap=sbc-aac-aptx-aptxhd-ldac |
| |
| #enable software decoders for ALAC and APE |
| PRODUCT_VENDOR_PROPERTIES += \ |
| vendor.audio.use.sw.alac.decoder=true |
| PRODUCT_VENDOR_PROPERTIES += \ |
| vendor.audio.use.sw.ape.decoder=true |
| |
| #enable software decoder for MPEG-H |
| PRODUCT_VENDOR_PROPERTIES += \ |
| vendor.audio.use.sw.mpegh.decoder=true |
| |
| #enable hw aac encoder by default |
| PRODUCT_VENDOR_PROPERTIES += \ |
| vendor.audio.hw.aac.encoder=false |
| |
| #Set HAL buffer size to samples equal to 3 ms |
| PRODUCT_VENDOR_PROPERTIES += \ |
| vendor.audio_hal.in_period_size=144 |
| |
| #Set HAL buffer size to 3 ms |
| PRODUCT_VENDOR_PROPERTIES += \ |
| vendor.audio_hal.period_multiplier=3 |
| |
| #ADM Buffering size in ms |
| PRODUCT_VENDOR_PROPERTIES += \ |
| vendor.audio.adm.buffering.ms=2 |
| |
| #enable headset calibration |
| PRODUCT_VENDOR_PROPERTIES += \ |
| vendor.audio.volume.headset.gain.depcal=true |
| |
| #enable dualmic fluence for voice communication |
| PRODUCT_VENDOR_PROPERTIES += \ |
| persist.vendor.audio.fluence.voicecomm=true |
| endif |
| |
| USE_XML_AUDIO_POLICY_CONF := 1 |
| |
| #enable keytone FR |
| PRODUCT_VENDOR_PROPERTIES += \ |
| vendor.audio.hal.output.suspend.supported=true |
| |
| #Enable AAudio MMAP/NOIRQ data path |
| #2 is AAUDIO_POLICY_AUTO so it will try MMAP then fallback to Legacy path |
| PRODUCT_VENDOR_PROPERTIES += aaudio.mmap_policy=2 |
| #Allow EXCLUSIVE then fall back to SHARED. |
| PRODUCT_VENDOR_PROPERTIES += aaudio.mmap_exclusive_policy=2 |
| PRODUCT_VENDOR_PROPERTIES += aaudio.hw_burst_min_usec=2000 |
| |
| |
| #enable mirror-link feature |
| PRODUCT_VENDOR_PROPERTIES += \ |
| vendor.audio.enable.mirrorlink=false |
| |
| #enable voicecall speaker stereo |
| PRODUCT_VENDOR_PROPERTIES += \ |
| persist.vendor.audio.voicecall.speaker.stereo=true |
| |
| #enable AAC frame ctl for A2DP sinks |
| PRODUCT_VENDOR_PROPERTIES += \ |
| persist.vendor.bt.aac_frm_ctl.enabled=true |
| |
| #add dynamic feature flags here |
| PRODUCT_VENDOR_PROPERTIES += \ |
| vendor.audio.feature.a2dp_offload.enable=true \ |
| vendor.audio.feature.afe_proxy.enable=true \ |
| vendor.audio.feature.anc_headset.enable=true \ |
| vendor.audio.feature.battery_listener.enable=true \ |
| vendor.audio.feature.compr_cap.enable=false \ |
| vendor.audio.feature.compress_in.enable=true \ |
| vendor.audio.feature.compress_meta_data.enable=true \ |
| vendor.audio.feature.compr_voip.enable=false \ |
| vendor.audio.feature.concurrent_capture.enable=true \ |
| vendor.audio.feature.custom_stereo.enable=true \ |
| vendor.audio.feature.display_port.enable=true \ |
| vendor.audio.feature.dsm_feedback.enable=false \ |
| vendor.audio.feature.dynamic_ecns.enable=true \ |
| vendor.audio.feature.ext_hw_plugin.enable=false \ |
| vendor.audio.feature.external_dsp.enable=false \ |
| vendor.audio.feature.external_speaker.enable=false \ |
| vendor.audio.feature.external_speaker_tfa.enable=false \ |
| vendor.audio.feature.fluence.enable=true \ |
| vendor.audio.feature.fm.enable=true \ |
| vendor.audio.feature.hdmi_edid.enable=true \ |
| vendor.audio.feature.hdmi_passthrough.enable=true \ |
| vendor.audio.feature.hfp.enable=true \ |
| vendor.audio.feature.hifi_audio.enable=false \ |
| vendor.audio.feature.hwdep_cal.enable=false \ |
| vendor.audio.feature.incall_music.enable=true \ |
| vendor.audio.feature.multi_voice_session.enable=true \ |
| vendor.audio.feature.keep_alive.enable=true \ |
| vendor.audio.feature.kpi_optimize.enable=true \ |
| vendor.audio.feature.maxx_audio.enable=false \ |
| vendor.audio.feature.ras.enable=true \ |
| vendor.audio.feature.record_play_concurency.enable=false \ |
| vendor.audio.feature.src_trkn.enable=true \ |
| vendor.audio.feature.spkr_prot.enable=false \ |
| vendor.audio.feature.ssrec.enable=true \ |
| vendor.audio.feature.usb_offload.enable=true \ |
| vendor.audio.feature.usb_offload_burst_mode.enable=true \ |
| vendor.audio.feature.usb_offload_sidetone_volume.enable=false \ |
| vendor.audio.feature.deepbuffer_as_primary.enable=false \ |
| vendor.audio.feature.vbat.enable=true \ |
| vendor.audio.feature.wsa.enable=false \ |
| vendor.audio.feature.audiozoom.enable=false \ |
| vendor.audio.feature.snd_mon.enable=true |
| |
| # for HIDL related packages |
| PRODUCT_PACKAGES += \ |
| android.hardware.audio@2.0-service \ |
| android.hardware.audio@2.0-impl \ |
| android.hardware.audio.effect@2.0-impl \ |
| android.hardware.soundtrigger@2.1-impl \ |
| android.hardware.audio@4.0 \ |
| android.hardware.audio.common@4.0 \ |
| android.hardware.audio.common@4.0-util \ |
| android.hardware.audio@4.0-impl \ |
| android.hardware.audio.effect@4.0 \ |
| android.hardware.audio.effect@4.0-impl \ |
| vendor.qti.hardware.audiohalext@1.0 \ |
| vendor.qti.hardware.audiohalext@1.0-impl \ |
| vendor.qti.hardware.audiohalext-utils |
| |
| # enable audio hidl hal 5.0 |
| PRODUCT_PACKAGES += \ |
| android.hardware.audio@5.0 \ |
| android.hardware.audio.common@5.0 \ |
| android.hardware.audio.common@5.0-util \ |
| android.hardware.audio@5.0-impl \ |
| android.hardware.audio.effect@5.0 \ |
| android.hardware.audio.effect@5.0-impl |
| |
| # enable audio hidl hal 6.0 |
| PRODUCT_PACKAGES += \ |
| android.hardware.audio@6.0 \ |
| android.hardware.audio.common@6.0 \ |
| android.hardware.audio.common@6.0-util \ |
| android.hardware.audio@6.0-impl \ |
| android.hardware.audio.effect@6.0 \ |
| android.hardware.audio.effect@6.0-impl |
| |
| # enable sound trigger hidl hal 2.2 |
| PRODUCT_PACKAGES += \ |
| android.hardware.soundtrigger@2.2-impl \ |
| |
| # enable sound trigger hidl hal 2.3 |
| PRODUCT_PACKAGES += \ |
| android.hardware.soundtrigger@2.3-impl \ |
| |
| PRODUCT_PACKAGES_ENG += \ |
| VoicePrintTest \ |
| VoicePrintDemo |
| |
| PRODUCT_PACKAGES_DEBUG += \ |
| AudioSettings |
| ifeq ($(strip $(AUDIO_FEATURE_ENABLED_DEV_ARBI)),true) |
| PRODUCT_PACKAGES_DEBUG += \ |
| libaudiodevarb |
| endif |
| ifeq ($(call is-vendor-board-platform,QCOM),true) |
| ifeq ($(call is-platform-sdk-version-at-least,28),true) |
| PRODUCT_PACKAGES_DEBUG += \ |
| libqti_resampler_headers \ |
| lib_soundmodel_headers \ |
| libqti_vraudio_headers |
| endif |
| ifeq ($(strip $(AUDIO_FEATURE_ENABLED_3D_AUDIO)),true) |
| PRODUCT_PACKAGES_DEBUG += \ |
| libvr_object_engine \ |
| libvr_amb_engine \ |
| libhoaeffects_csim |
| endif |
| endif |
| ifeq ($(strip $(BOARD_SUPPORTS_SOUND_TRIGGER)),true) |
| PRODUCT_PACKAGES_DEBUG += \ |
| libadpcmdec |
| endif |
| |
| AUDIO_FEATURE_ENABLED_GKI := true |