blob: 45a09b90e3a284a79206a697e3c4e7d4b7c0f561 [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)
Sujin Panicker6f0871a2019-03-12 12:19:26 +053015USE_CUSTOM_AUDIO_POLICY := 1
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 \
Arun Mirpuria4a3b142019-04-02 17:38:11 -0700103 vendor/qcom/opensource/audio-hal/primary-hal/configs/msmnile/audio_configs.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_configs.xml \
Aniket Kumar Lata0bdb2442019-04-01 15:25:40 -0700104 vendor/qcom/opensource/audio-hal/primary-hal/configs/msmnile/audio_configs_stock.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_configs_stock.xml \
Arun Mirpuria4a3b142019-04-02 17:38:11 -0700105 frameworks/native/data/etc/android.hardware.audio.pro.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.audio.pro.xml
Xiaoyu Yea11fdf82017-11-21 16:49:32 -0800106
107#XML Audio configuration files
108ifneq ($(TARGET_USES_AOSP_FOR_AUDIO), true)
109PRODUCT_COPY_FILES += \
Aalique Grahame57058a62019-01-10 10:30:17 -0800110 $(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 -0800111endif
112PRODUCT_COPY_FILES += \
Aalique Grahame57058a62019-01-10 10:30:17 -0800113 $(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 -0800114 $(TOPDIR)frameworks/av/services/audiopolicy/config/a2dp_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/a2dp_audio_policy_configuration.xml \
115 $(TOPDIR)frameworks/av/services/audiopolicy/config/audio_policy_volumes.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_volumes.xml \
116 $(TOPDIR)frameworks/av/services/audiopolicy/config/default_volume_tables.xml:$(TARGET_COPY_OUT_VENDOR)/etc/default_volume_tables.xml \
117 $(TOPDIR)frameworks/av/services/audiopolicy/config/r_submix_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/r_submix_audio_policy_configuration.xml \
118 $(TOPDIR)frameworks/av/services/audiopolicy/config/usb_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/usb_audio_policy_configuration.xml
119
120# Listen configuration file
121PRODUCT_COPY_FILES += \
Aalique Grahame57058a62019-01-10 10:30:17 -0800122 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 -0800123
124# Reduce client buffer size for fast audio output tracks
125PRODUCT_PROPERTY_OVERRIDES += \
126 af.fast_track_multiplier=1
127
128# Low latency audio buffer size in frames
129PRODUCT_PROPERTY_OVERRIDES += \
130 vendor.audio_hal.period_size=192
131
132##fluencetype can be "fluence" or "fluencepro" or "none"
133PRODUCT_PROPERTY_OVERRIDES += \
134ro.vendor.audio.sdk.fluencetype=none\
135persist.vendor.audio.fluence.voicecall=true\
136persist.vendor.audio.fluence.voicerec=false\
Vignesh Kulothunganf606f782018-04-10 11:49:12 -0700137persist.vendor.audio.fluence.speaker=true\
138persist.vendor.audio.fluence.tmic.enabled=false
Xiaoyu Yea11fdf82017-11-21 16:49:32 -0800139
140#disable tunnel encoding
141PRODUCT_PROPERTY_OVERRIDES += \
142vendor.audio.tunnel.encode=false
143
144#Disable RAS Feature by default
145PRODUCT_PROPERTY_OVERRIDES += \
146persist.vendor.audio.ras.enabled=false
147
148#Buffer size in kbytes for compress offload playback
149PRODUCT_PROPERTY_OVERRIDES += \
150vendor.audio.offload.buffer.size.kb=32
151
152#Enable offload audio video playback by default
153PRODUCT_PROPERTY_OVERRIDES += \
154audio.offload.video=true
155
156#Enable audio track offload by default
157PRODUCT_PROPERTY_OVERRIDES += \
158vendor.audio.offload.track.enable=true
159
160#Enable music through deep buffer
161PRODUCT_PROPERTY_OVERRIDES += \
162audio.deep_buffer.media=true
163
164#enable voice path for PCM VoIP by default
165PRODUCT_PROPERTY_OVERRIDES += \
166vendor.voice.path.for.pcm.voip=true
167
168#Enable multi channel aac through offload
169PRODUCT_PROPERTY_OVERRIDES += \
170vendor.audio.offload.multiaac.enable=true
171
172#Enable DS2, Hardbypass feature for Dolby
173PRODUCT_PROPERTY_OVERRIDES += \
174vendor.audio.dolby.ds2.enabled=false\
175vendor.audio.dolby.ds2.hardbypass=false
176
177#Disable Multiple offload sesison
178PRODUCT_PROPERTY_OVERRIDES += \
179vendor.audio.offload.multiple.enabled=false
180
181#Disable Compress passthrough playback
182PRODUCT_PROPERTY_OVERRIDES += \
183vendor.audio.offload.passthrough=false
184
185#Disable surround sound recording
186PRODUCT_PROPERTY_OVERRIDES += \
187ro.vendor.audio.sdk.ssr=false
188
189#enable dsp gapless mode by default
190PRODUCT_PROPERTY_OVERRIDES += \
191vendor.audio.offload.gapless.enabled=true
192
193#enable pbe effects
194PRODUCT_PROPERTY_OVERRIDES += \
195vendor.audio.safx.pbe.enabled=true
196
197#parser input buffer size(256kb) in byte stream mode
198PRODUCT_PROPERTY_OVERRIDES += \
199vendor.audio.parser.ip.buffer.size=262144
200
201#flac sw decoder 24 bit decode capability
202PRODUCT_PROPERTY_OVERRIDES += \
203vendor.audio.flac.sw.decoder.24bit=true
204
205#split a2dp DSP supported encoder list
206PRODUCT_PROPERTY_OVERRIDES += \
Ben Rombergercb5b3092018-05-17 17:27:21 -0700207persist.vendor.bt.a2dp_offload_cap=sbc-aptx-aptxtws-aptxhd-aac-ldac
Xiaoyu Yea11fdf82017-11-21 16:49:32 -0800208
Aalique Grahame57058a62019-01-10 10:30:17 -0800209# A2DP offload support
210PRODUCT_PROPERTY_OVERRIDES += \
211ro.bluetooth.a2dp_offload.supported=true
212
213# Disable A2DP offload
214PRODUCT_PROPERTY_OVERRIDES += \
215persist.bluetooth.a2dp_offload.disabled=false
216
217# A2DP offload DSP supported encoder list
218PRODUCT_PROPERTY_OVERRIDES += \
219persist.bluetooth.a2dp_offload.cap=sbc-aac-aptx-aptxhd-ldac
220
Xiaoyu Yea11fdf82017-11-21 16:49:32 -0800221#enable software decoders for ALAC and APE
222PRODUCT_PROPERTY_OVERRIDES += \
223vendor.audio.use.sw.alac.decoder=true
224PRODUCT_PROPERTY_OVERRIDES += \
225vendor.audio.use.sw.ape.decoder=true
226
227#enable hw aac encoder by default
228PRODUCT_PROPERTY_OVERRIDES += \
229vendor.audio.hw.aac.encoder=true
230
Xiaoyu Yea11fdf82017-11-21 16:49:32 -0800231#audio becoming noisy intent broadcast delay
232PRODUCT_PROPERTY_OVERRIDES += \
233vendor.audio.noisy.broadcast.delay=600
234
235#offload pausetime out duration to 3 secs to inline with other outputs
236PRODUCT_PROPERTY_OVERRIDES += \
237vendor.audio.offload.pstimeout.secs=3
238
239#Set AudioFlinger client heap size
240PRODUCT_PROPERTY_OVERRIDES += \
241ro.af.client_heap_size_kbyte=7168
242
243#Set HAL buffer size to samples equal to 3 ms
244PRODUCT_PROPERTY_OVERRIDES += \
245vendor.audio_hal.in_period_size=144
246
247#Set HAL buffer size to 3 ms
248PRODUCT_PROPERTY_OVERRIDES += \
249vendor.audio_hal.period_multiplier=3
250
251#ADM Buffering size in ms
252PRODUCT_PROPERTY_OVERRIDES += \
253vendor.audio.adm.buffering.ms=2
254
Weiyin Jiang3cdf3cc2018-08-03 14:37:55 +0800255#enable keytone FR
256PRODUCT_PROPERTY_OVERRIDES += \
257vendor.audio.hal.output.suspend.supported=true
258
Arun Mirpuri5d170872019-03-26 13:21:31 -0700259#Enable AAudio MMAP/NOIRQ data path
260#2 is AAUDIO_POLICY_AUTO so it will try MMAP then fallback to Legacy path
261PRODUCT_PROPERTY_OVERRIDES += aaudio.mmap_policy=2
262#Allow EXCLUSIVE then fall back to SHARED.
263PRODUCT_PROPERTY_OVERRIDES += aaudio.mmap_exclusive_policy=2
264PRODUCT_PROPERTY_OVERRIDES += aaudio.hw_burst_min_usec=2000
265
Aalique Grahame3381f1b2018-04-16 22:17:00 -0700266#enable mirror-link feature
267PRODUCT_PROPERTY_OVERRIDES += \
268vendor.audio.enable.mirrorlink=false
269
Vikram Panduranga1b5b2cf2018-04-27 12:34:38 -0700270#enable voicecall speaker stereo
271PRODUCT_PROPERTY_OVERRIDES += \
272persist.vendor.audio.voicecall.speaker.stereo=true
273
Aniket Kumar Lata6d74b6f2018-11-21 14:24:38 -0800274#enable AAC frame ctl for A2DP sinks
275PRODUCT_PROPERTY_OVERRIDES += \
276persist.vendor.bt.aac_frm_ctl.enabled=true
Naresh Tanniruf1290152018-11-27 12:16:45 +0530277endif
Aniket Kumar Lata6d74b6f2018-11-21 14:24:38 -0800278
Aalique Grahame57058a62019-01-10 10:30:17 -0800279#enable headset calibration
280PRODUCT_PROPERTY_OVERRIDES += \
281audio.volume.headset.gain.depcal=true
282
283#enable dualmic fluence for voice communication
284PRODUCT_PROPERTY_OVERRIDES += \
285persist.audio.fluence.voicecomm=true
286
Xiaoyu Yea11fdf82017-11-21 16:49:32 -0800287# for HIDL related packages
288PRODUCT_PACKAGES += \
289 android.hardware.audio@2.0-service \
290 android.hardware.audio@2.0-impl \
291 android.hardware.audio.effect@2.0-impl \
Aalique Grahame804cba62018-05-11 11:07:07 -0700292 android.hardware.soundtrigger@2.1-impl \
293 android.hardware.audio@4.0 \
294 android.hardware.audio.common@4.0 \
295 android.hardware.audio.common@4.0-util \
296 android.hardware.audio@4.0-impl \
297 android.hardware.audio.effect@4.0 \
Weiyin Jiange6ce6312019-01-28 18:28:22 +0800298 android.hardware.audio.effect@4.0-impl \
299 vendor.qti.hardware.audiohalext@1.0 \
300 vendor.qti.hardware.audiohalext@1.0-impl \
301 vendor.qti.hardware.audiohalext-utils
Samyak Jain6df8ce82019-03-22 14:26:24 +0530302
303PRODUCT_PACKAGES_ENG += \
304 VoicePrintTest \
305 VoicePrintDemo
306
307PRODUCT_PACKAGES_DEBUG += \
308 AudioSettings