blob: 1ae62820f90db282c0c8c2f62110722406d82cdb [file] [log] [blame]
Xiaoyu Yea11fdf82017-11-21 16:49:32 -08001#BOARD_USES_GENERIC_AUDIO := true
2#
3#AUDIO_FEATURE_FLAGS
Naresh Tanniruf1290152018-11-27 12:16:45 +05304ifeq ($(TARGET_USES_QMAA_OVERRIDE_AUDIO), false)
5ifeq ($(TARGET_USES_QMAA),true)
6AUDIO_USE_STUB_HAL := true
7endif
8endif
9
10ifneq ($(AUDIO_USE_STUB_HAL), true)
Xiaoyu Yea11fdf82017-11-21 16:49:32 -080011BOARD_USES_ALSA_AUDIO := true
Aalique Grahameafbebdf2018-03-30 10:43:46 -070012TARGET_USES_AOSP_FOR_AUDIO := false
Xiaoyu Yea11fdf82017-11-21 16:49:32 -080013
14ifneq ($(TARGET_USES_AOSP_FOR_AUDIO), true)
Naresh Tanniru6bcdcca2019-02-08 16:25:20 +053015USE_CUSTOM_AUDIO_POLICY := 0
Samyak Jain66ea9242019-03-08 16:45:15 +053016AUDIO_FEATURE_QSSI_COMPLIANCE := false
Xiaoyu Yea11fdf82017-11-21 16:49:32 -080017AUDIO_FEATURE_ENABLED_COMPRESS_CAPTURE := false
Samyak Jainc5fe5422018-12-27 10:42:43 +053018AUDIO_FEATURE_ENABLED_COMPRESS_INPUT := true
19AUDIO_FEATURE_ENABLED_CONCURRENT_CAPTURE := true
Xiaoyu Yea11fdf82017-11-21 16:49:32 -080020AUDIO_FEATURE_ENABLED_COMPRESS_VOIP := false
Vikram Pandurangabb9456f2018-06-20 18:17:20 -070021AUDIO_FEATURE_ENABLED_DYNAMIC_ECNS := true
Aalique Grahameafbebdf2018-03-30 10:43:46 -070022AUDIO_FEATURE_ENABLED_EXTN_FORMATS := true
23AUDIO_FEATURE_ENABLED_EXTN_FLAC_DECODER := true
Xiaoyu Yea11fdf82017-11-21 16:49:32 -080024AUDIO_FEATURE_ENABLED_EXTN_RESAMPLER := true
25AUDIO_FEATURE_ENABLED_FM_POWER_OPT := true
26AUDIO_FEATURE_ENABLED_HDMI_SPK := true
Aalique Grahameafbebdf2018-03-30 10:43:46 -070027AUDIO_FEATURE_ENABLED_PCM_OFFLOAD := true
28AUDIO_FEATURE_ENABLED_PCM_OFFLOAD_24 := true
29AUDIO_FEATURE_ENABLED_FLAC_OFFLOAD := true
30AUDIO_FEATURE_ENABLED_VORBIS_OFFLOAD := true
31AUDIO_FEATURE_ENABLED_WMA_OFFLOAD := true
32AUDIO_FEATURE_ENABLED_ALAC_OFFLOAD := true
33AUDIO_FEATURE_ENABLED_APE_OFFLOAD := true
34AUDIO_FEATURE_ENABLED_AAC_ADTS_OFFLOAD := true
Xiaoyu Yea11fdf82017-11-21 16:49:32 -080035AUDIO_FEATURE_ENABLED_PROXY_DEVICE := true
Aalique Grahameaf8f46f2018-05-31 11:37:57 -070036AUDIO_FEATURE_ENABLED_SSR := true
Xiaoyu Yea11fdf82017-11-21 16:49:32 -080037AUDIO_FEATURE_ENABLED_DTS_EAGLE := false
38BOARD_USES_SRS_TRUEMEDIA := false
39DTS_CODEC_M_ := false
40MM_AUDIO_ENABLED_SAFX := true
41AUDIO_FEATURE_ENABLED_HW_ACCELERATED_EFFECTS := false
42AUDIO_FEATURE_ENABLED_AUDIOSPHERE := true
Aalique Grahame57058a62019-01-10 10:30:17 -080043AUDIO_FEATURE_ENABLED_USB_TUNNEL := true
44AUDIO_FEATURE_ENABLED_A2DP_OFFLOAD := true
Arun Mirpuri77ce7952019-02-26 16:10:20 -080045AUDIO_FEATURE_ENABLED_3D_AUDIO := false
Weiyin Jiang34c3c232019-01-30 10:53:44 +080046AUDIO_FEATURE_ENABLED_AHAL_EXT := true
Xiaoyu Yea11fdf82017-11-21 16:49:32 -080047DOLBY_ENABLE := false
48endif
49
50USE_XML_AUDIO_POLICY_CONF := 1
51BOARD_SUPPORTS_SOUND_TRIGGER := true
Aditya Bavanari29bcea22017-10-03 20:10:35 +053052AUDIO_FEATURE_ENABLED_INSTANCE_ID := true
Aalique Grahame57058a62019-01-10 10:30:17 -080053AUDIO_USE_DEEP_AS_PRIMARY_OUTPUT := false
Xiaoyu Yea11fdf82017-11-21 16:49:32 -080054AUDIO_FEATURE_ENABLED_VBAT_MONITOR := true
55AUDIO_FEATURE_ENABLED_ANC_HEADSET := true
56AUDIO_FEATURE_ENABLED_CUSTOMSTEREO := true
57AUDIO_FEATURE_ENABLED_FLUENCE := true
58AUDIO_FEATURE_ENABLED_HDMI_EDID := true
59AUDIO_FEATURE_ENABLED_HDMI_PASSTHROUGH := true
60#AUDIO_FEATURE_ENABLED_KEEP_ALIVE := true
61AUDIO_FEATURE_ENABLED_DISPLAY_PORT := true
62AUDIO_FEATURE_ENABLED_DS2_DOLBY_DAP := false
63AUDIO_FEATURE_ENABLED_HFP := true
Arun Mirpurie5c697c2018-07-17 17:58:17 -070064AUDIO_FEATURE_ENABLED_INCALL_MUSIC := true
Xiaoyu Yea11fdf82017-11-21 16:49:32 -080065AUDIO_FEATURE_ENABLED_MULTI_VOICE_SESSIONS := true
66AUDIO_FEATURE_ENABLED_KPI_OPTIMIZE := true
67AUDIO_FEATURE_ENABLED_SPKR_PROTECTION := true
68AUDIO_FEATURE_ENABLED_ACDB_LICENSE := false
69AUDIO_FEATURE_ENABLED_DEV_ARBI := false
70AUDIO_FEATURE_ENABLED_DYNAMIC_LOG := true
71MM_AUDIO_ENABLED_FTM := true
72TARGET_USES_QCOM_MM_AUDIO := true
73AUDIO_FEATURE_ENABLED_SOURCE_TRACKING := true
74AUDIO_FEATURE_ENABLED_GEF_SUPPORT := true
75BOARD_SUPPORTS_QAHW := false
76AUDIO_FEATURE_ENABLED_RAS := true
77AUDIO_FEATURE_ENABLED_SND_MONITOR := true
Sharad Sangleda75d9c2018-03-29 13:30:54 +053078AUDIO_FEATURE_ENABLED_DLKM := true
Garmond Leung1c5f2502018-06-04 15:59:58 -070079AUDIO_FEATURE_ENABLED_USB_BURST_MODE := true
Quinn Male42d16702018-05-10 16:17:17 -070080AUDIO_FEATURE_ENABLED_SVA_MULTI_STAGE := true
Haynes Mathew George01156f92018-04-13 15:29:54 -070081AUDIO_FEATURE_ENABLED_BATTERY_LISTENER := true
Xiaoyu Yea11fdf82017-11-21 16:49:32 -080082##AUDIO_FEATURE_FLAGS
83
shoudilad09f432018-07-25 16:58:12 +080084ifneq ($(strip $(TARGET_USES_RRO)), true)
Xiaoyu Yea11fdf82017-11-21 16:49:32 -080085#Audio Specific device overlays
Aalique Grahame57058a62019-01-10 10:30:17 -080086DEVICE_PACKAGE_OVERLAYS += vendor/qcom/opensource/audio-hal/primary-hal/configs/common/overlay
shoudil2b5e8482018-05-23 17:11:17 +080087endif
Xiaoyu Yea11fdf82017-11-21 16:49:32 -080088
89PRODUCT_COPY_FILES += \
Aalique Grahame57058a62019-01-10 10:30:17 -080090 vendor/qcom/opensource/audio-hal/primary-hal/configs/msmnile/audio_io_policy.conf:$(TARGET_COPY_OUT_VENDOR)/etc/audio_io_policy.conf \
91 vendor/qcom/opensource/audio-hal/primary-hal/configs/msmnile/audio_effects.conf:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.conf \
92 vendor/qcom/opensource/audio-hal/primary-hal/configs/msmnile/audio_effects.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.xml \
93 vendor/qcom/opensource/audio-hal/primary-hal/configs/msmnile/mixer_paths_tavil.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_tavil.xml \
94 vendor/qcom/opensource/audio-hal/primary-hal/configs/msmnile/audio_tuning_mixer_tavil.txt:$(TARGET_COPY_OUT_VENDOR)/etc/audio_tuning_mixer_tavil.txt \
95 vendor/qcom/opensource/audio-hal/primary-hal/configs/msmnile/audio_tuning_mixer.txt:$(TARGET_COPY_OUT_VENDOR)/etc/audio_tuning_mixer.txt \
96 vendor/qcom/opensource/audio-hal/primary-hal/configs/msmnile/sound_trigger_mixer_paths_wcd9340.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_mixer_paths_wcd9340.xml \
97 vendor/qcom/opensource/audio-hal/primary-hal/configs/msmnile/sound_trigger_mixer_paths_wcd9340_qrd.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_mixer_paths_wcd9340_qrd.xml \
98 vendor/qcom/opensource/audio-hal/primary-hal/configs/msmnile/sound_trigger_platform_info.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_platform_info.xml \
99 vendor/qcom/opensource/audio-hal/primary-hal/configs/msmnile/graphite_ipc_platform_info.xml:$(TARGET_COPY_OUT_VENDOR)/etc/graphite_ipc_platform_info.xml \
100 vendor/qcom/opensource/audio-hal/primary-hal/configs/msmnile/audio_platform_info.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_platform_info.xml \
101 vendor/qcom/opensource/audio-hal/primary-hal/configs/msmnile/mixer_paths_pahu.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_pahu.xml \
Weiyin Jiangb4928132019-01-29 01:39:45 +0800102 vendor/qcom/opensource/audio-hal/primary-hal/configs/msmnile/sound_trigger_mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_mixer_paths.xml \
103 vendor/qcom/opensource/audio-hal/primary-hal/configs/msmnile/audio_configs.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_configs.xml
Xiaoyu Yea11fdf82017-11-21 16:49:32 -0800104
105#XML Audio configuration files
106ifneq ($(TARGET_USES_AOSP_FOR_AUDIO), true)
107PRODUCT_COPY_FILES += \
Aalique Grahame57058a62019-01-10 10:30:17 -0800108 $(TOPDIR)vendor/qcom/opensource/audio-hal/primary-hal/configs/msmnile/audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio/audio_policy_configuration.xml
Xiaoyu Yea11fdf82017-11-21 16:49:32 -0800109endif
110PRODUCT_COPY_FILES += \
Aalique Grahame57058a62019-01-10 10:30:17 -0800111 $(TOPDIR)vendor/qcom/opensource/audio-hal/primary-hal/configs/common/audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration.xml \
Xiaoyu Yea11fdf82017-11-21 16:49:32 -0800112 $(TOPDIR)frameworks/av/services/audiopolicy/config/a2dp_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/a2dp_audio_policy_configuration.xml \
113 $(TOPDIR)frameworks/av/services/audiopolicy/config/audio_policy_volumes.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_volumes.xml \
114 $(TOPDIR)frameworks/av/services/audiopolicy/config/default_volume_tables.xml:$(TARGET_COPY_OUT_VENDOR)/etc/default_volume_tables.xml \
115 $(TOPDIR)frameworks/av/services/audiopolicy/config/r_submix_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/r_submix_audio_policy_configuration.xml \
116 $(TOPDIR)frameworks/av/services/audiopolicy/config/usb_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/usb_audio_policy_configuration.xml
117
118# Listen configuration file
119PRODUCT_COPY_FILES += \
Aalique Grahame57058a62019-01-10 10:30:17 -0800120 vendor/qcom/opensource/audio-hal/primary-hal/configs/msmnile/listen_platform_info.xml:$(TARGET_COPY_OUT_VENDOR)/etc/listen_platform_info.xml
Xiaoyu Yea11fdf82017-11-21 16:49:32 -0800121
122# Reduce client buffer size for fast audio output tracks
123PRODUCT_PROPERTY_OVERRIDES += \
124 af.fast_track_multiplier=1
125
126# Low latency audio buffer size in frames
127PRODUCT_PROPERTY_OVERRIDES += \
128 vendor.audio_hal.period_size=192
129
130##fluencetype can be "fluence" or "fluencepro" or "none"
131PRODUCT_PROPERTY_OVERRIDES += \
132ro.vendor.audio.sdk.fluencetype=none\
133persist.vendor.audio.fluence.voicecall=true\
134persist.vendor.audio.fluence.voicerec=false\
Vignesh Kulothunganf606f782018-04-10 11:49:12 -0700135persist.vendor.audio.fluence.speaker=true\
136persist.vendor.audio.fluence.tmic.enabled=false
Xiaoyu Yea11fdf82017-11-21 16:49:32 -0800137
138#disable tunnel encoding
139PRODUCT_PROPERTY_OVERRIDES += \
140vendor.audio.tunnel.encode=false
141
142#Disable RAS Feature by default
143PRODUCT_PROPERTY_OVERRIDES += \
144persist.vendor.audio.ras.enabled=false
145
146#Buffer size in kbytes for compress offload playback
147PRODUCT_PROPERTY_OVERRIDES += \
148vendor.audio.offload.buffer.size.kb=32
149
150#Enable offload audio video playback by default
151PRODUCT_PROPERTY_OVERRIDES += \
152audio.offload.video=true
153
154#Enable audio track offload by default
155PRODUCT_PROPERTY_OVERRIDES += \
156vendor.audio.offload.track.enable=true
157
158#Enable music through deep buffer
159PRODUCT_PROPERTY_OVERRIDES += \
160audio.deep_buffer.media=true
161
162#enable voice path for PCM VoIP by default
163PRODUCT_PROPERTY_OVERRIDES += \
164vendor.voice.path.for.pcm.voip=true
165
166#Enable multi channel aac through offload
167PRODUCT_PROPERTY_OVERRIDES += \
168vendor.audio.offload.multiaac.enable=true
169
170#Enable DS2, Hardbypass feature for Dolby
171PRODUCT_PROPERTY_OVERRIDES += \
172vendor.audio.dolby.ds2.enabled=false\
173vendor.audio.dolby.ds2.hardbypass=false
174
175#Disable Multiple offload sesison
176PRODUCT_PROPERTY_OVERRIDES += \
177vendor.audio.offload.multiple.enabled=false
178
179#Disable Compress passthrough playback
180PRODUCT_PROPERTY_OVERRIDES += \
181vendor.audio.offload.passthrough=false
182
183#Disable surround sound recording
184PRODUCT_PROPERTY_OVERRIDES += \
185ro.vendor.audio.sdk.ssr=false
186
187#enable dsp gapless mode by default
188PRODUCT_PROPERTY_OVERRIDES += \
189vendor.audio.offload.gapless.enabled=true
190
191#enable pbe effects
192PRODUCT_PROPERTY_OVERRIDES += \
193vendor.audio.safx.pbe.enabled=true
194
195#parser input buffer size(256kb) in byte stream mode
196PRODUCT_PROPERTY_OVERRIDES += \
197vendor.audio.parser.ip.buffer.size=262144
198
199#flac sw decoder 24 bit decode capability
200PRODUCT_PROPERTY_OVERRIDES += \
201vendor.audio.flac.sw.decoder.24bit=true
202
203#split a2dp DSP supported encoder list
204PRODUCT_PROPERTY_OVERRIDES += \
Ben Rombergercb5b3092018-05-17 17:27:21 -0700205persist.vendor.bt.a2dp_offload_cap=sbc-aptx-aptxtws-aptxhd-aac-ldac
Xiaoyu Yea11fdf82017-11-21 16:49:32 -0800206
Aalique Grahame57058a62019-01-10 10:30:17 -0800207# A2DP offload support
208PRODUCT_PROPERTY_OVERRIDES += \
209ro.bluetooth.a2dp_offload.supported=true
210
211# Disable A2DP offload
212PRODUCT_PROPERTY_OVERRIDES += \
213persist.bluetooth.a2dp_offload.disabled=false
214
215# A2DP offload DSP supported encoder list
216PRODUCT_PROPERTY_OVERRIDES += \
217persist.bluetooth.a2dp_offload.cap=sbc-aac-aptx-aptxhd-ldac
218
Xiaoyu Yea11fdf82017-11-21 16:49:32 -0800219#enable software decoders for ALAC and APE
220PRODUCT_PROPERTY_OVERRIDES += \
221vendor.audio.use.sw.alac.decoder=true
222PRODUCT_PROPERTY_OVERRIDES += \
223vendor.audio.use.sw.ape.decoder=true
224
225#enable hw aac encoder by default
226PRODUCT_PROPERTY_OVERRIDES += \
227vendor.audio.hw.aac.encoder=true
228
Xiaoyu Yea11fdf82017-11-21 16:49:32 -0800229#audio becoming noisy intent broadcast delay
230PRODUCT_PROPERTY_OVERRIDES += \
231vendor.audio.noisy.broadcast.delay=600
232
233#offload pausetime out duration to 3 secs to inline with other outputs
234PRODUCT_PROPERTY_OVERRIDES += \
235vendor.audio.offload.pstimeout.secs=3
236
237#Set AudioFlinger client heap size
238PRODUCT_PROPERTY_OVERRIDES += \
239ro.af.client_heap_size_kbyte=7168
240
241#Set HAL buffer size to samples equal to 3 ms
242PRODUCT_PROPERTY_OVERRIDES += \
243vendor.audio_hal.in_period_size=144
244
245#Set HAL buffer size to 3 ms
246PRODUCT_PROPERTY_OVERRIDES += \
247vendor.audio_hal.period_multiplier=3
248
249#ADM Buffering size in ms
250PRODUCT_PROPERTY_OVERRIDES += \
251vendor.audio.adm.buffering.ms=2
252
Weiyin Jiang3cdf3cc2018-08-03 14:37:55 +0800253#enable keytone FR
254PRODUCT_PROPERTY_OVERRIDES += \
255vendor.audio.hal.output.suspend.supported=true
256
Aalique Grahame3381f1b2018-04-16 22:17:00 -0700257#enable mirror-link feature
258PRODUCT_PROPERTY_OVERRIDES += \
259vendor.audio.enable.mirrorlink=false
260
Vikram Panduranga1b5b2cf2018-04-27 12:34:38 -0700261#enable voicecall speaker stereo
262PRODUCT_PROPERTY_OVERRIDES += \
263persist.vendor.audio.voicecall.speaker.stereo=true
264
Aniket Kumar Lata6d74b6f2018-11-21 14:24:38 -0800265#enable AAC frame ctl for A2DP sinks
266PRODUCT_PROPERTY_OVERRIDES += \
267persist.vendor.bt.aac_frm_ctl.enabled=true
Naresh Tanniruf1290152018-11-27 12:16:45 +0530268endif
Aniket Kumar Lata6d74b6f2018-11-21 14:24:38 -0800269
Aalique Grahame57058a62019-01-10 10:30:17 -0800270#enable headset calibration
271PRODUCT_PROPERTY_OVERRIDES += \
272audio.volume.headset.gain.depcal=true
273
274#enable dualmic fluence for voice communication
275PRODUCT_PROPERTY_OVERRIDES += \
276persist.audio.fluence.voicecomm=true
277
Xiaoyu Yea11fdf82017-11-21 16:49:32 -0800278# for HIDL related packages
279PRODUCT_PACKAGES += \
280 android.hardware.audio@2.0-service \
281 android.hardware.audio@2.0-impl \
282 android.hardware.audio.effect@2.0-impl \
Aalique Grahame804cba62018-05-11 11:07:07 -0700283 android.hardware.soundtrigger@2.1-impl \
284 android.hardware.audio@4.0 \
285 android.hardware.audio.common@4.0 \
286 android.hardware.audio.common@4.0-util \
287 android.hardware.audio@4.0-impl \
288 android.hardware.audio.effect@4.0 \
Weiyin Jiange6ce6312019-01-28 18:28:22 +0800289 android.hardware.audio.effect@4.0-impl \
290 vendor.qti.hardware.audiohalext@1.0 \
291 vendor.qti.hardware.audiohalext@1.0-impl \
292 vendor.qti.hardware.audiohalext-utils