blob: 72fa5baff28835b0b8c696300fc2d7a97e70fbdb [file] [log] [blame]
Meng Wang595b3d02018-10-08 12:55:16 +08001#BOARD_USES_GENERIC_AUDIO := true
2#
3#AUDIO_FEATURE_FLAGS
Naresh Tanniru5beb8132018-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)
Meng Wang595b3d02018-10-08 12:55:16 +080011BOARD_USES_ALSA_AUDIO := true
12TARGET_USES_AOSP_FOR_AUDIO := false
13
14ifneq ($(TARGET_USES_AOSP_FOR_AUDIO), true)
Banajit Goswami526079a2019-03-18 20:48:51 -070015USE_CUSTOM_AUDIO_POLICY := 1
Banajit Goswami405ad562019-03-08 17:00:34 -080016AUDIO_FEATURE_QSSI_COMPLIANCE := false
Meng Wang595b3d02018-10-08 12:55:16 +080017AUDIO_FEATURE_ENABLED_COMPRESS_CAPTURE := false
Meng Wang267816f2019-01-16 09:48:13 +080018AUDIO_FEATURE_ENABLED_COMPRESS_INPUT := true
19AUDIO_FEATURE_ENABLED_CONCURRENT_CAPTURE := true
Meng Wang595b3d02018-10-08 12:55:16 +080020AUDIO_FEATURE_ENABLED_COMPRESS_VOIP := false
21AUDIO_FEATURE_ENABLED_DYNAMIC_ECNS := true
22AUDIO_FEATURE_ENABLED_EXTN_FORMATS := true
23AUDIO_FEATURE_ENABLED_EXTN_FLAC_DECODER := true
24AUDIO_FEATURE_ENABLED_EXTN_RESAMPLER := true
25AUDIO_FEATURE_ENABLED_FM_POWER_OPT := true
26AUDIO_FEATURE_ENABLED_HDMI_SPK := true
27AUDIO_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
35AUDIO_FEATURE_ENABLED_PROXY_DEVICE := true
36AUDIO_FEATURE_ENABLED_SSR := true
37AUDIO_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
Weiyin Jiang2afc6202019-04-22 16:58:45 +080045AUDIO_FEATURE_ENABLED_3D_AUDIO := true
Weiyin Jiang4df6c482019-03-21 10:18:21 +080046AUDIO_FEATURE_ENABLED_AHAL_EXT := true
Meng Wang595b3d02018-10-08 12:55:16 +080047DOLBY_ENABLE := false
48endif
49
Meng Wang595b3d02018-10-08 12:55:16 +080050AUDIO_FEATURE_ENABLED_DLKM := true
51BOARD_SUPPORTS_SOUND_TRIGGER := true
Meng Wangc688a062019-01-09 13:18:11 +080052BOARD_SUPPORTS_GCS := false
Meng Wang595b3d02018-10-08 12:55:16 +080053AUDIO_FEATURE_ENABLED_INSTANCE_ID := true
Aalique Grahame57058a62019-01-10 10:30:17 -080054AUDIO_USE_DEEP_AS_PRIMARY_OUTPUT := false
Meng Wang595b3d02018-10-08 12:55:16 +080055AUDIO_FEATURE_ENABLED_VBAT_MONITOR := true
56AUDIO_FEATURE_ENABLED_ANC_HEADSET := true
57AUDIO_FEATURE_ENABLED_CUSTOMSTEREO := true
58AUDIO_FEATURE_ENABLED_FLUENCE := true
59AUDIO_FEATURE_ENABLED_HDMI_EDID := true
60AUDIO_FEATURE_ENABLED_HDMI_PASSTHROUGH := true
61#AUDIO_FEATURE_ENABLED_KEEP_ALIVE := true
62AUDIO_FEATURE_ENABLED_DISPLAY_PORT := true
63AUDIO_FEATURE_ENABLED_DS2_DOLBY_DAP := false
64AUDIO_FEATURE_ENABLED_HFP := true
65AUDIO_FEATURE_ENABLED_INCALL_MUSIC := true
66AUDIO_FEATURE_ENABLED_MULTI_VOICE_SESSIONS := true
67AUDIO_FEATURE_ENABLED_KPI_OPTIMIZE := true
68AUDIO_FEATURE_ENABLED_SPKR_PROTECTION := true
69AUDIO_FEATURE_ENABLED_ACDB_LICENSE := false
70AUDIO_FEATURE_ENABLED_DEV_ARBI := false
71AUDIO_FEATURE_ENABLED_DYNAMIC_LOG := true
72MM_AUDIO_ENABLED_FTM := true
73TARGET_USES_QCOM_MM_AUDIO := true
74AUDIO_FEATURE_ENABLED_SOURCE_TRACKING := true
75AUDIO_FEATURE_ENABLED_GEF_SUPPORT := true
76BOARD_SUPPORTS_QAHW := false
77AUDIO_FEATURE_ENABLED_RAS := true
78AUDIO_FEATURE_ENABLED_SND_MONITOR := true
Meng Wang267816f2019-01-16 09:48:13 +080079AUDIO_FEATURE_ENABLED_USB_BURST_MODE := true
Meng Wang595b3d02018-10-08 12:55:16 +080080AUDIO_FEATURE_ENABLED_SVA_MULTI_STAGE := true
81AUDIO_FEATURE_ENABLED_BATTERY_LISTENER := true
82##AUDIO_FEATURE_FLAGS
83
shoudilb5e44a62019-02-27 10:16:07 +080084ifneq ($(strip $(TARGET_USES_RRO)), true)
Meng Wang595b3d02018-10-08 12:55:16 +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
shoudilb5e44a62019-02-27 10:16:07 +080087endif
Meng Wang595b3d02018-10-08 12:55:16 +080088
89PRODUCT_COPY_FILES += \
Aalique Grahame57058a62019-01-10 10:30:17 -080090 vendor/qcom/opensource/audio-hal/primary-hal/configs/kona/audio_io_policy.conf:$(TARGET_COPY_OUT_VENDOR)/etc/audio_io_policy.conf \
91 vendor/qcom/opensource/audio-hal/primary-hal/configs/kona/audio_effects.conf:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.conf \
92 vendor/qcom/opensource/audio-hal/primary-hal/configs/kona/audio_effects.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.xml \
93 vendor/qcom/opensource/audio-hal/primary-hal/configs/kona/sound_trigger_platform_info.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_platform_info.xml \
94 vendor/qcom/opensource/audio-hal/primary-hal/configs/kona/audio_platform_info.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_platform_info.xml \
95 vendor/qcom/opensource/audio-hal/primary-hal/configs/kona/audio_platform_info_qrd.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_platform_info_qrd.xml \
96 vendor/qcom/opensource/audio-hal/primary-hal/configs/kona/audio_platform_info_intcodec.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_platform_info_intcodec.xml \
97 vendor/qcom/opensource/audio-hal/primary-hal/configs/kona/sound_trigger_mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_mixer_paths.xml \
98 vendor/qcom/opensource/audio-hal/primary-hal/configs/kona/sound_trigger_mixer_paths_qrd.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_mixer_paths_qrd.xml \
Karthikeyan Mani882fb712019-03-12 13:09:33 -070099 vendor/qcom/opensource/audio-hal/primary-hal/configs/kona/mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths.xml \
Aalique Grahame57058a62019-01-10 10:30:17 -0800100 vendor/qcom/opensource/audio-hal/primary-hal/configs/kona/mixer_paths_qrd.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_qrd.xml \
Arun Mirpuria4a3b142019-04-02 17:38:11 -0700101 vendor/qcom/opensource/audio-hal/primary-hal/configs/kona/audio_configs.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_configs.xml \
Aniket Kumar Lata0bdb2442019-04-01 15:25:40 -0700102 vendor/qcom/opensource/audio-hal/primary-hal/configs/kona/audio_configs_stock.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_configs_stock.xml \
Arun Mirpuria4a3b142019-04-02 17:38:11 -0700103 frameworks/native/data/etc/android.hardware.audio.pro.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.audio.pro.xml
Meng Wang595b3d02018-10-08 12:55:16 +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/kona/audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio/audio_policy_configuration.xml
Meng Wang595b3d02018-10-08 12:55:16 +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 \
Meng Wang595b3d02018-10-08 12:55:16 +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# Reduce client buffer size for fast audio output tracks
119PRODUCT_PROPERTY_OVERRIDES += \
120 af.fast_track_multiplier=1
121
122# Low latency audio buffer size in frames
123PRODUCT_PROPERTY_OVERRIDES += \
124 vendor.audio_hal.period_size=192
125
126##fluencetype can be "fluence" or "fluencepro" or "none"
127PRODUCT_PROPERTY_OVERRIDES += \
128ro.vendor.audio.sdk.fluencetype=none\
129persist.vendor.audio.fluence.voicecall=true\
130persist.vendor.audio.fluence.voicerec=false\
Meng Wang267816f2019-01-16 09:48:13 +0800131persist.vendor.audio.fluence.speaker=true\
132persist.vendor.audio.fluence.tmic.enabled=false
Meng Wang595b3d02018-10-08 12:55:16 +0800133
Xiaojun Sang1cb32db2019-04-04 09:12:12 +0800134##speaker protection v3 switch and ADSP AFE API version
135PRODUCT_PROPERTY_OVERRIDES += \
136persist.vendor.audio.spv3.enable=true\
137persist.vendor.audio.avs.afe_api_version=2
138
Meng Wang595b3d02018-10-08 12:55:16 +0800139#disable tunnel encoding
140PRODUCT_PROPERTY_OVERRIDES += \
141vendor.audio.tunnel.encode=false
142
143#Disable RAS Feature by default
144PRODUCT_PROPERTY_OVERRIDES += \
145persist.vendor.audio.ras.enabled=false
146
147#Buffer size in kbytes for compress offload playback
148PRODUCT_PROPERTY_OVERRIDES += \
149vendor.audio.offload.buffer.size.kb=32
150
151#Enable offload audio video playback by default
152PRODUCT_PROPERTY_OVERRIDES += \
153audio.offload.video=true
154
155#Enable audio track offload by default
156PRODUCT_PROPERTY_OVERRIDES += \
157vendor.audio.offload.track.enable=true
158
159#Enable music through deep buffer
160PRODUCT_PROPERTY_OVERRIDES += \
161audio.deep_buffer.media=true
162
163#enable voice path for PCM VoIP by default
164PRODUCT_PROPERTY_OVERRIDES += \
165vendor.voice.path.for.pcm.voip=true
166
167#Enable multi channel aac through offload
168PRODUCT_PROPERTY_OVERRIDES += \
169vendor.audio.offload.multiaac.enable=true
170
171#Enable DS2, Hardbypass feature for Dolby
172PRODUCT_PROPERTY_OVERRIDES += \
173vendor.audio.dolby.ds2.enabled=false\
174vendor.audio.dolby.ds2.hardbypass=false
175
176#Disable Multiple offload sesison
177PRODUCT_PROPERTY_OVERRIDES += \
178vendor.audio.offload.multiple.enabled=false
179
180#Disable Compress passthrough playback
181PRODUCT_PROPERTY_OVERRIDES += \
182vendor.audio.offload.passthrough=false
183
184#Disable surround sound recording
185PRODUCT_PROPERTY_OVERRIDES += \
186ro.vendor.audio.sdk.ssr=false
187
188#enable dsp gapless mode by default
189PRODUCT_PROPERTY_OVERRIDES += \
190vendor.audio.offload.gapless.enabled=true
191
192#enable pbe effects
193PRODUCT_PROPERTY_OVERRIDES += \
194vendor.audio.safx.pbe.enabled=true
195
196#parser input buffer size(256kb) in byte stream mode
197PRODUCT_PROPERTY_OVERRIDES += \
198vendor.audio.parser.ip.buffer.size=262144
199
200#flac sw decoder 24 bit decode capability
201PRODUCT_PROPERTY_OVERRIDES += \
202vendor.audio.flac.sw.decoder.24bit=true
203
204#split a2dp DSP supported encoder list
205PRODUCT_PROPERTY_OVERRIDES += \
Meng Wang267816f2019-01-16 09:48:13 +0800206persist.vendor.bt.a2dp_offload_cap=sbc-aptx-aptxtws-aptxhd-aac-ldac
Meng Wang595b3d02018-10-08 12:55:16 +0800207
Aalique Grahame57058a62019-01-10 10:30:17 -0800208# A2DP offload support
209PRODUCT_PROPERTY_OVERRIDES += \
210ro.bluetooth.a2dp_offload.supported=true
211
212# Disable A2DP offload
213PRODUCT_PROPERTY_OVERRIDES += \
214persist.bluetooth.a2dp_offload.disabled=false
215
216# A2DP offload DSP supported encoder list
217PRODUCT_PROPERTY_OVERRIDES += \
218persist.bluetooth.a2dp_offload.cap=sbc-aac-aptx-aptxhd-ldac
219
Meng Wang595b3d02018-10-08 12:55:16 +0800220#enable software decoders for ALAC and APE
221PRODUCT_PROPERTY_OVERRIDES += \
222vendor.audio.use.sw.alac.decoder=true
223PRODUCT_PROPERTY_OVERRIDES += \
224vendor.audio.use.sw.ape.decoder=true
225
226#enable hw aac encoder by default
227PRODUCT_PROPERTY_OVERRIDES += \
228vendor.audio.hw.aac.encoder=true
229
230#audio becoming noisy intent broadcast delay
231PRODUCT_PROPERTY_OVERRIDES += \
Weiyin Jiangb21ff8c2019-04-28 10:38:30 +0800232audio.sys.noisy.broadcast.delay=600
Meng Wang595b3d02018-10-08 12:55:16 +0800233
234#offload pausetime out duration to 3 secs to inline with other outputs
235PRODUCT_PROPERTY_OVERRIDES += \
Weiyin Jiangb21ff8c2019-04-28 10:38:30 +0800236audio.sys.offload.pstimeout.secs=3
Meng Wang595b3d02018-10-08 12:55:16 +0800237
238#Set AudioFlinger client heap size
239PRODUCT_PROPERTY_OVERRIDES += \
240ro.af.client_heap_size_kbyte=7168
241
242#Set HAL buffer size to samples equal to 3 ms
243PRODUCT_PROPERTY_OVERRIDES += \
244vendor.audio_hal.in_period_size=144
245
246#Set HAL buffer size to 3 ms
247PRODUCT_PROPERTY_OVERRIDES += \
248vendor.audio_hal.period_multiplier=3
249
250#ADM Buffering size in ms
251PRODUCT_PROPERTY_OVERRIDES += \
252vendor.audio.adm.buffering.ms=2
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
Naresh Tanniru5beb8132018-11-27 12:16:45 +0530261endif
Aalique Grahame57058a62019-01-10 10:30:17 -0800262
Meng Wangb2ab1862019-02-13 08:27:19 +0800263USE_XML_AUDIO_POLICY_CONF := 1
264
Meng Wang267816f2019-01-16 09:48:13 +0800265#enable keytone FR
266PRODUCT_PROPERTY_OVERRIDES += \
267vendor.audio.hal.output.suspend.supported=true
268
Arun Mirpuri5d170872019-03-26 13:21:31 -0700269#Enable AAudio MMAP/NOIRQ data path
270#2 is AAUDIO_POLICY_AUTO so it will try MMAP then fallback to Legacy path
271PRODUCT_PROPERTY_OVERRIDES += aaudio.mmap_policy=2
272#Allow EXCLUSIVE then fall back to SHARED.
273PRODUCT_PROPERTY_OVERRIDES += aaudio.mmap_exclusive_policy=2
274PRODUCT_PROPERTY_OVERRIDES += aaudio.hw_burst_min_usec=2000
275
276
Meng Wang267816f2019-01-16 09:48:13 +0800277#enable mirror-link feature
278PRODUCT_PROPERTY_OVERRIDES += \
Banajit Goswami16589192019-04-05 00:09:43 -0700279vendor.audio.enable.mirrorlink=false
Meng Wang267816f2019-01-16 09:48:13 +0800280
281#enable voicecall speaker stereo
282PRODUCT_PROPERTY_OVERRIDES += \
283persist.vendor.audio.voicecall.speaker.stereo=true
284
285#enable AAC frame ctl for A2DP sinks
286PRODUCT_PROPERTY_OVERRIDES += \
287persist.vendor.bt.aac_frm_ctl.enabled=true
288
Meng Wang595b3d02018-10-08 12:55:16 +0800289# for HIDL related packages
290PRODUCT_PACKAGES += \
291 android.hardware.audio@2.0-service \
292 android.hardware.audio@2.0-impl \
293 android.hardware.audio.effect@2.0-impl \
294 android.hardware.soundtrigger@2.1-impl \
295 android.hardware.audio@4.0 \
296 android.hardware.audio.common@4.0 \
297 android.hardware.audio.common@4.0-util \
298 android.hardware.audio@4.0-impl \
299 android.hardware.audio.effect@4.0 \
Weiyin Jiang239190c2019-02-26 11:51:34 +0800300 android.hardware.audio.effect@4.0-impl \
301 vendor.qti.hardware.audiohalext@1.0 \
302 vendor.qti.hardware.audiohalext@1.0-impl \
303 vendor.qti.hardware.audiohalext-utils
Samyak Jain6df8ce82019-03-22 14:26:24 +0530304
305PRODUCT_PACKAGES_ENG += \
306 VoicePrintTest \
307 VoicePrintDemo
308
309PRODUCT_PACKAGES_DEBUG += \
310 AudioSettings