blob: 1e4b32b2f78bf1fd75b089e3bf77466e097ce4b3 [file] [log] [blame]
Xiaoyu Ye4322f152017-03-17 12:34:03 -07001#BOARD_USES_GENERIC_AUDIO := true
2#
3#AUDIO_FEATURE_FLAGS
4BOARD_USES_ALSA_AUDIO := true
5
6ifneq ($(TARGET_USES_AOSP_FOR_AUDIO), true)
Naresh Tanniru4ab871b2019-02-25 16:35:25 +05307USE_CUSTOM_AUDIO_POLICY := 0
Xiaoyu Ye4322f152017-03-17 12:34:03 -07008AUDIO_FEATURE_ENABLED_COMPRESS_CAPTURE := false
Vikram Panduranga93f080e2017-06-07 18:16:14 -07009AUDIO_FEATURE_ENABLED_COMPRESS_VOIP := false
Vikram Pandurangadf59cae2017-08-03 18:04:55 -070010AUDIO_FEATURE_ENABLED_DYNAMIC_ECNS := false
Xiaoyu Ye4322f152017-03-17 12:34:03 -070011AUDIO_FEATURE_ENABLED_EXTN_FORMATS := true
12AUDIO_FEATURE_ENABLED_EXTN_FLAC_DECODER := true
13AUDIO_FEATURE_ENABLED_EXTN_RESAMPLER := true
14AUDIO_FEATURE_ENABLED_FM_POWER_OPT := true
15AUDIO_FEATURE_ENABLED_HDMI_SPK := true
16AUDIO_FEATURE_ENABLED_PCM_OFFLOAD := true
17AUDIO_FEATURE_ENABLED_PCM_OFFLOAD_24 := true
18AUDIO_FEATURE_ENABLED_FLAC_OFFLOAD := true
19AUDIO_FEATURE_ENABLED_VORBIS_OFFLOAD := true
20AUDIO_FEATURE_ENABLED_WMA_OFFLOAD := true
21AUDIO_FEATURE_ENABLED_ALAC_OFFLOAD := true
22AUDIO_FEATURE_ENABLED_APE_OFFLOAD := true
23AUDIO_FEATURE_ENABLED_AAC_ADTS_OFFLOAD := true
24AUDIO_FEATURE_ENABLED_PROXY_DEVICE := true
Ramjee Singh3a836cd2018-04-06 19:28:20 +053025AUDIO_FEATURE_ENABLED_SSR := true
Xiaoyu Ye4322f152017-03-17 12:34:03 -070026AUDIO_FEATURE_ENABLED_DTS_EAGLE := false
27BOARD_USES_SRS_TRUEMEDIA := false
28DTS_CODEC_M_ := false
29MM_AUDIO_ENABLED_SAFX := true
30AUDIO_FEATURE_ENABLED_HW_ACCELERATED_EFFECTS := false
31AUDIO_FEATURE_ENABLED_AUDIOSPHERE := true
Aalique Grahame57058a62019-01-10 10:30:17 -080032AUDIO_FEATURE_ENABLED_USB_TUNNEL := true
33AUDIO_FEATURE_ENABLED_A2DP_OFFLOAD := true
Weiyin Jiangb21d0942018-03-21 15:32:42 +080034AUDIO_FEATURE_ENABLED_3D_AUDIO := true
Dhananjay Kumar29b894e2017-04-05 02:41:14 +053035DOLBY_ENABLE := false
Soumil Shah196157e2018-01-22 17:39:48 -080036TARGET_USES_QCOM_MM_AUDIO := true
Xiaoyu Ye4322f152017-03-17 12:34:03 -070037endif
38
39USE_XML_AUDIO_POLICY_CONF := 1
40BOARD_SUPPORTS_SOUND_TRIGGER := true
Aalique Grahame57058a62019-01-10 10:30:17 -080041AUDIO_USE_DEEP_AS_PRIMARY_OUTPUT := false
Xiaoyu Ye4322f152017-03-17 12:34:03 -070042AUDIO_FEATURE_ENABLED_VBAT_MONITOR := true
43AUDIO_FEATURE_ENABLED_ANC_HEADSET := true
44AUDIO_FEATURE_ENABLED_CUSTOMSTEREO := true
45AUDIO_FEATURE_ENABLED_FLUENCE := true
46AUDIO_FEATURE_ENABLED_HDMI_EDID := true
47AUDIO_FEATURE_ENABLED_HDMI_PASSTHROUGH := true
48#AUDIO_FEATURE_ENABLED_KEEP_ALIVE := true
49AUDIO_FEATURE_ENABLED_DISPLAY_PORT := true
Aalique Grahame28395ec2017-05-18 11:12:23 -070050AUDIO_FEATURE_ENABLED_DS2_DOLBY_DAP := false
Xiaoyu Ye4322f152017-03-17 12:34:03 -070051AUDIO_FEATURE_ENABLED_HFP := true
52AUDIO_FEATURE_ENABLED_INCALL_MUSIC := false
53AUDIO_FEATURE_ENABLED_MULTI_VOICE_SESSIONS := true
54AUDIO_FEATURE_ENABLED_KPI_OPTIMIZE := true
55AUDIO_FEATURE_ENABLED_SPKR_PROTECTION := true
Aalique Grahame28395ec2017-05-18 11:12:23 -070056AUDIO_FEATURE_ENABLED_ACDB_LICENSE := false
Xiaoyu Ye4322f152017-03-17 12:34:03 -070057AUDIO_FEATURE_ENABLED_DEV_ARBI := false
Revathi Uddaraju074d9c62017-09-13 15:10:29 +053058AUDIO_FEATURE_ENABLED_DYNAMIC_LOG := true
Xiaoyu Ye4322f152017-03-17 12:34:03 -070059MM_AUDIO_ENABLED_FTM := true
Xiaoyu Ye4322f152017-03-17 12:34:03 -070060AUDIO_FEATURE_ENABLED_SOURCE_TRACKING := true
61AUDIO_FEATURE_ENABLED_GEF_SUPPORT := true
Aalique Grahame190cfcb2017-04-21 11:54:14 -070062BOARD_SUPPORTS_QAHW := false
Xiaoyu Ye4322f152017-03-17 12:34:03 -070063AUDIO_FEATURE_ENABLED_RAS := true
Dhananjay Kumare6293dd2017-05-25 17:25:30 +053064AUDIO_FEATURE_ENABLED_SND_MONITOR := true
Quinn Maleda12c332018-06-18 11:07:15 -070065AUDIO_FEATURE_ENABLED_SVA_MULTI_STAGE := true
Xiaoyu Ye4322f152017-03-17 12:34:03 -070066##AUDIO_FEATURE_FLAGS
67
shoudilad09f432018-07-25 16:58:12 +080068ifneq ($(strip $(TARGET_USES_RRO)), true)
Xiaoyu Ye4322f152017-03-17 12:34:03 -070069#Audio Specific device overlays
Aalique Grahame57058a62019-01-10 10:30:17 -080070DEVICE_PACKAGE_OVERLAYS += vendor/qcom/opensource/audio-hal/primary-hal/configs/common/overlay
shoudil2b5e8482018-05-23 17:11:17 +080071endif
Xiaoyu Ye4322f152017-03-17 12:34:03 -070072
73# Audio configuration file
Aalique Grahame190cfcb2017-04-21 11:54:14 -070074ifeq ($(TARGET_USES_AOSP_FOR_AUDIO), true)
Xiaoyu Ye4322f152017-03-17 12:34:03 -070075PRODUCT_COPY_FILES += \
Aalique Grahame57058a62019-01-10 10:30:17 -080076 device/qcom/common/media/audio_policy.conf:vendor/etc/audio_policy.conf
Xiaoyu Ye4322f152017-03-17 12:34:03 -070077else
78PRODUCT_COPY_FILES += \
Aalique Grahame57058a62019-01-10 10:30:17 -080079 vendor/qcom/opensource/audio-hal/primary-hal/configs/sdm845/audio_policy.conf:vendor/etc/audio_policy.conf
Xiaoyu Ye4322f152017-03-17 12:34:03 -070080endif
81
82PRODUCT_COPY_FILES += \
Aalique Grahame57058a62019-01-10 10:30:17 -080083 vendor/qcom/opensource/audio-hal/primary-hal/configs/sdm845/audio_output_policy.conf:$(TARGET_COPY_OUT_VENDOR)/etc/audio_output_policy.conf \
84 vendor/qcom/opensource/audio-hal/primary-hal/configs/sdm845/audio_effects.conf:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.conf \
85 vendor/qcom/opensource/audio-hal/primary-hal/configs/sdm845/audio_effects.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.xml \
86 vendor/qcom/opensource/audio-hal/primary-hal/configs/sdm845/mixer_paths_tavil.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_tavil.xml \
87 vendor/qcom/opensource/audio-hal/primary-hal/configs/sdm845/mixer_paths_skuk.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_skuk.xml \
88 vendor/qcom/opensource/audio-hal/primary-hal/configs/sdm845/mixer_paths_qvr.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_qvr.xml \
89 vendor/qcom/opensource/audio-hal/primary-hal/configs/sdm845/mixer_paths_i2s.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_i2s.xml \
90 vendor/qcom/opensource/audio-hal/primary-hal/configs/sdm845/audio_tuning_mixer_tavil.txt:$(TARGET_COPY_OUT_VENDOR)/etc/audio_tuning_mixer_tavil.txt \
91 vendor/qcom/opensource/audio-hal/primary-hal/configs/sdm845/audio_platform_info_i2s.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_platform_info_i2s.xml \
92 vendor/qcom/opensource/audio-hal/primary-hal/configs/sdm845/sound_trigger_mixer_paths_wcd9340.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_mixer_paths_wcd9340.xml \
93 vendor/qcom/opensource/audio-hal/primary-hal/configs/sdm845/sound_trigger_platform_info.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_platform_info.xml \
94 vendor/qcom/opensource/audio-hal/primary-hal/configs/sdm845/graphite_ipc_platform_info.xml:$(TARGET_COPY_OUT_VENDOR)/etc/graphite_ipc_platform_info.xml \
95 vendor/qcom/opensource/audio-hal/primary-hal/configs/sdm845/audio_platform_info.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_platform_info.xml
Xiaoyu Ye4322f152017-03-17 12:34:03 -070096
97#XML Audio configuration files
98ifeq ($(USE_XML_AUDIO_POLICY_CONF), 1)
Dhananjay Kumaraeb58fd2017-07-14 22:45:34 +053099ifneq ($(TARGET_USES_AOSP_FOR_AUDIO), true)
Xiaoyu Ye4322f152017-03-17 12:34:03 -0700100PRODUCT_COPY_FILES += \
Aalique Grahame57058a62019-01-10 10:30:17 -0800101 $(TOPDIR)vendor/qcom/opensource/audio-hal/primary-hal/configs/sdm845/audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio/audio_policy_configuration.xml
Xiaoyu Ye4322f152017-03-17 12:34:03 -0700102endif
103PRODUCT_COPY_FILES += \
Aalique Grahame57058a62019-01-10 10:30:17 -0800104 $(TOPDIR)vendor/qcom/opensource/audio-hal/primary-hal/configs/common/audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration.xml \
Dhananjay Kumaraeb58fd2017-07-14 22:45:34 +0530105 $(TOPDIR)frameworks/av/services/audiopolicy/config/a2dp_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/a2dp_audio_policy_configuration.xml \
106 $(TOPDIR)frameworks/av/services/audiopolicy/config/audio_policy_volumes.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_volumes.xml \
107 $(TOPDIR)frameworks/av/services/audiopolicy/config/default_volume_tables.xml:$(TARGET_COPY_OUT_VENDOR)/etc/default_volume_tables.xml \
108 $(TOPDIR)frameworks/av/services/audiopolicy/config/r_submix_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/r_submix_audio_policy_configuration.xml \
109 $(TOPDIR)frameworks/av/services/audiopolicy/config/usb_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/usb_audio_policy_configuration.xml
Xiaoyu Ye4322f152017-03-17 12:34:03 -0700110endif
111
112# Listen configuration file
113PRODUCT_COPY_FILES += \
Aalique Grahame57058a62019-01-10 10:30:17 -0800114 vendor/qcom/opensource/audio-hal/primary-hal/configs/sdm845/listen_platform_info.xml:$(TARGET_COPY_OUT_VENDOR)/etc/listen_platform_info.xml
Xiaoyu Ye4322f152017-03-17 12:34:03 -0700115
116# Reduce client buffer size for fast audio output tracks
117PRODUCT_PROPERTY_OVERRIDES += \
118 af.fast_track_multiplier=1
119
120# Low latency audio buffer size in frames
121PRODUCT_PROPERTY_OVERRIDES += \
Aniket Kumar Latae1fcd932017-04-25 11:19:00 -0700122 vendor.audio_hal.period_size=192
Xiaoyu Ye4322f152017-03-17 12:34:03 -0700123
124##fluencetype can be "fluence" or "fluencepro" or "none"
125PRODUCT_PROPERTY_OVERRIDES += \
Aniket Kumar Latae1fcd932017-04-25 11:19:00 -0700126ro.vendor.audio.sdk.fluencetype=none\
127persist.vendor.audio.fluence.voicecall=true\
128persist.vendor.audio.fluence.voicerec=false\
129persist.vendor.audio.fluence.speaker=true
Xiaoyu Ye4322f152017-03-17 12:34:03 -0700130
131#disable tunnel encoding
132PRODUCT_PROPERTY_OVERRIDES += \
Aniket Kumar Latae1fcd932017-04-25 11:19:00 -0700133vendor.audio.tunnel.encode=false
Xiaoyu Ye4322f152017-03-17 12:34:03 -0700134
135#Disable RAS Feature by default
136PRODUCT_PROPERTY_OVERRIDES += \
Aniket Kumar Latae1fcd932017-04-25 11:19:00 -0700137persist.vendor.audio.ras.enabled=false
Xiaoyu Ye4322f152017-03-17 12:34:03 -0700138
139#Buffer size in kbytes for compress offload playback
140PRODUCT_PROPERTY_OVERRIDES += \
Aniket Kumar Latae1fcd932017-04-25 11:19:00 -0700141vendor.audio.offload.buffer.size.kb=32
Xiaoyu Ye4322f152017-03-17 12:34:03 -0700142
143#Enable offload audio video playback by default
144PRODUCT_PROPERTY_OVERRIDES += \
145audio.offload.video=true
146
Xiaoyu Ye4322f152017-03-17 12:34:03 -0700147#Enable audio track offload by default
148PRODUCT_PROPERTY_OVERRIDES += \
Aniket Kumar Latae1fcd932017-04-25 11:19:00 -0700149vendor.audio.offload.track.enable=true
Xiaoyu Ye4322f152017-03-17 12:34:03 -0700150
151#Enable music through deep buffer
152PRODUCT_PROPERTY_OVERRIDES += \
153audio.deep_buffer.media=true
154
Xiaoyu Ye4322f152017-03-17 12:34:03 -0700155#enable voice path for PCM VoIP by default
156PRODUCT_PROPERTY_OVERRIDES += \
Aniket Kumar Latae1fcd932017-04-25 11:19:00 -0700157vendor.voice.path.for.pcm.voip=true
Xiaoyu Ye4322f152017-03-17 12:34:03 -0700158
159#Enable multi channel aac through offload
160PRODUCT_PROPERTY_OVERRIDES += \
Aniket Kumar Latae1fcd932017-04-25 11:19:00 -0700161vendor.audio.offload.multiaac.enable=true
Xiaoyu Ye4322f152017-03-17 12:34:03 -0700162
163#Enable DS2, Hardbypass feature for Dolby
164PRODUCT_PROPERTY_OVERRIDES += \
Aniket Kumar Latae1fcd932017-04-25 11:19:00 -0700165vendor.audio.dolby.ds2.enabled=false\
166vendor.audio.dolby.ds2.hardbypass=false
Xiaoyu Ye4322f152017-03-17 12:34:03 -0700167
168#Disable Multiple offload sesison
169PRODUCT_PROPERTY_OVERRIDES += \
Aniket Kumar Latae1fcd932017-04-25 11:19:00 -0700170vendor.audio.offload.multiple.enabled=false
Xiaoyu Ye4322f152017-03-17 12:34:03 -0700171
172#Disable Compress passthrough playback
173PRODUCT_PROPERTY_OVERRIDES += \
Aniket Kumar Latae1fcd932017-04-25 11:19:00 -0700174vendor.audio.offload.passthrough=false
Xiaoyu Ye4322f152017-03-17 12:34:03 -0700175
176#Disable surround sound recording
177PRODUCT_PROPERTY_OVERRIDES += \
Aniket Kumar Latae1fcd932017-04-25 11:19:00 -0700178ro.vendor.audio.sdk.ssr=false
Xiaoyu Ye4322f152017-03-17 12:34:03 -0700179
180#enable dsp gapless mode by default
181PRODUCT_PROPERTY_OVERRIDES += \
Aniket Kumar Latae1fcd932017-04-25 11:19:00 -0700182vendor.audio.offload.gapless.enabled=true
Xiaoyu Ye4322f152017-03-17 12:34:03 -0700183
184#enable pbe effects
185PRODUCT_PROPERTY_OVERRIDES += \
Aniket Kumar Latae1fcd932017-04-25 11:19:00 -0700186vendor.audio.safx.pbe.enabled=true
Xiaoyu Ye4322f152017-03-17 12:34:03 -0700187
188#parser input buffer size(256kb) in byte stream mode
189PRODUCT_PROPERTY_OVERRIDES += \
Aniket Kumar Latae1fcd932017-04-25 11:19:00 -0700190vendor.audio.parser.ip.buffer.size=262144
Xiaoyu Ye4322f152017-03-17 12:34:03 -0700191
192#flac sw decoder 24 bit decode capability
193PRODUCT_PROPERTY_OVERRIDES += \
Aniket Kumar Latae1fcd932017-04-25 11:19:00 -0700194vendor.audio.flac.sw.decoder.24bit=true
Xiaoyu Ye4322f152017-03-17 12:34:03 -0700195
196#split a2dp DSP supported encoder list
197PRODUCT_PROPERTY_OVERRIDES += \
Manisha Agarwal57570142018-06-18 12:24:04 +0530198persist.vendor.bt.a2dp_offload_cap=sbc-aptx-aptxtws-aptxhd-aac-ldac
Xiaoyu Ye4322f152017-03-17 12:34:03 -0700199
Aalique Grahame57058a62019-01-10 10:30:17 -0800200# A2DP offload support
201PRODUCT_PROPERTY_OVERRIDES += \
202ro.bluetooth.a2dp_offload.supported=true
203
204# Disable A2DP offload
205PRODUCT_PROPERTY_OVERRIDES += \
206persist.bluetooth.a2dp_offload.disabled=false
207
208# A2DP offload DSP supported encoder list
209PRODUCT_PROPERTY_OVERRIDES += \
210persist.bluetooth.a2dp_offload.cap=sbc-aac-aptx-aptxhd-ldac
211
Xiaoyu Ye4322f152017-03-17 12:34:03 -0700212#enable software decoders for ALAC and APE
213PRODUCT_PROPERTY_OVERRIDES += \
Aniket Kumar Latae1fcd932017-04-25 11:19:00 -0700214vendor.audio.use.sw.alac.decoder=true
Xiaoyu Ye4322f152017-03-17 12:34:03 -0700215PRODUCT_PROPERTY_OVERRIDES += \
Aniket Kumar Latae1fcd932017-04-25 11:19:00 -0700216vendor.audio.use.sw.ape.decoder=true
Xiaoyu Ye4322f152017-03-17 12:34:03 -0700217
218#enable hw aac encoder by default
219PRODUCT_PROPERTY_OVERRIDES += \
Aniket Kumar Latae1fcd932017-04-25 11:19:00 -0700220vendor.audio.hw.aac.encoder=true
Xiaoyu Ye4322f152017-03-17 12:34:03 -0700221
Xiaoyu Ye4322f152017-03-17 12:34:03 -0700222#audio becoming noisy intent broadcast delay
223PRODUCT_PROPERTY_OVERRIDES += \
Aniket Kumar Latae1fcd932017-04-25 11:19:00 -0700224vendor.audio.noisy.broadcast.delay=600
Xiaoyu Ye4322f152017-03-17 12:34:03 -0700225
226#offload pausetime out duration to 3 secs to inline with other outputs
227PRODUCT_PROPERTY_OVERRIDES += \
Aniket Kumar Latae1fcd932017-04-25 11:19:00 -0700228vendor.audio.offload.pstimeout.secs=3
Aalique Grahame190cfcb2017-04-21 11:54:14 -0700229
Satya Krishna Pindiproli650ea152017-09-13 17:10:38 +0530230#Set AudioFlinger client heap size
231PRODUCT_PROPERTY_OVERRIDES += \
232ro.af.client_heap_size_kbyte=7168
233
Dhananjay Kumar57ceeb72017-10-11 22:49:28 +0530234#Set HAL buffer size to samples equal to 3 ms
235PRODUCT_PROPERTY_OVERRIDES += \
236vendor.audio_hal.in_period_size=144
237
238#Set HAL buffer size to 3 ms
239PRODUCT_PROPERTY_OVERRIDES += \
240vendor.audio_hal.period_multiplier=3
241
242#ADM Buffering size in ms
243PRODUCT_PROPERTY_OVERRIDES += \
244vendor.audio.adm.buffering.ms=2
245
Aniket Kumar Latac78a3432017-11-06 18:18:52 -0800246#enable keytone FR
247PRODUCT_PROPERTY_OVERRIDES += \
248vendor.audio.hal.output.suspend.supported=true
249
Aalique Grahamed941eae2017-12-01 15:36:47 -0800250#enable use of display-port for voice usecases
Aalique Grahame99d45632017-12-11 17:35:41 -0800251PRODUCT_PROPERTY_OVERRIDES += \
Aalique Grahamed941eae2017-12-01 15:36:47 -0800252vendor.audio.enable.dp.for.voice=false
253
Aalique Grahame57058a62019-01-10 10:30:17 -0800254#enable headset calibration
255PRODUCT_PROPERTY_OVERRIDES += \
256audio.volume.headset.gain.depcal=true
257
258#enable dualmic fluence for voice communication
259PRODUCT_PROPERTY_OVERRIDES += \
260persist.audio.fluence.voicecomm=true
261
Aalique Grahame190cfcb2017-04-21 11:54:14 -0700262# for HIDL related packages
263PRODUCT_PACKAGES += \
264 android.hardware.audio@2.0-service \
265 android.hardware.audio@2.0-impl \
266 android.hardware.audio.effect@2.0-impl \
Revathi Uddaraju22894cc2018-04-26 18:10:40 +0530267 android.hardware.soundtrigger@2.1-impl \
268 android.hardware.audio@4.0 \
269 android.hardware.audio.common@4.0 \
270 android.hardware.audio.common@4.0-util \
271 android.hardware.audio@4.0-impl \
272 android.hardware.audio.effect@4.0 \
273 android.hardware.audio.effect@4.0-impl