blob: 5544d1fd6a8341948cc272ea24511f6332f6ca14 [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)
15USE_CUSTOM_AUDIO_POLICY := 1
16AUDIO_FEATURE_ENABLED_COMPRESS_CAPTURE := false
17AUDIO_FEATURE_ENABLED_COMPRESS_VOIP := false
Vikram Pandurangabb9456f2018-06-20 18:17:20 -070018AUDIO_FEATURE_ENABLED_DYNAMIC_ECNS := true
Aalique Grahameafbebdf2018-03-30 10:43:46 -070019AUDIO_FEATURE_ENABLED_EXTN_FORMATS := true
20AUDIO_FEATURE_ENABLED_EXTN_FLAC_DECODER := true
Xiaoyu Yea11fdf82017-11-21 16:49:32 -080021AUDIO_FEATURE_ENABLED_EXTN_RESAMPLER := true
22AUDIO_FEATURE_ENABLED_FM_POWER_OPT := true
23AUDIO_FEATURE_ENABLED_HDMI_SPK := true
Aalique Grahameafbebdf2018-03-30 10:43:46 -070024AUDIO_FEATURE_ENABLED_PCM_OFFLOAD := true
25AUDIO_FEATURE_ENABLED_PCM_OFFLOAD_24 := true
26AUDIO_FEATURE_ENABLED_FLAC_OFFLOAD := true
27AUDIO_FEATURE_ENABLED_VORBIS_OFFLOAD := true
28AUDIO_FEATURE_ENABLED_WMA_OFFLOAD := true
29AUDIO_FEATURE_ENABLED_ALAC_OFFLOAD := true
30AUDIO_FEATURE_ENABLED_APE_OFFLOAD := true
31AUDIO_FEATURE_ENABLED_AAC_ADTS_OFFLOAD := true
Xiaoyu Yea11fdf82017-11-21 16:49:32 -080032AUDIO_FEATURE_ENABLED_PROXY_DEVICE := true
Aalique Grahameaf8f46f2018-05-31 11:37:57 -070033AUDIO_FEATURE_ENABLED_SSR := true
Xiaoyu Yea11fdf82017-11-21 16:49:32 -080034AUDIO_FEATURE_ENABLED_DTS_EAGLE := false
35BOARD_USES_SRS_TRUEMEDIA := false
36DTS_CODEC_M_ := false
37MM_AUDIO_ENABLED_SAFX := true
38AUDIO_FEATURE_ENABLED_HW_ACCELERATED_EFFECTS := false
39AUDIO_FEATURE_ENABLED_AUDIOSPHERE := true
Aalique Grahame57058a62019-01-10 10:30:17 -080040AUDIO_FEATURE_ENABLED_USB_TUNNEL := true
41AUDIO_FEATURE_ENABLED_A2DP_OFFLOAD := true
Weiyin Jiangfe7b6032018-07-15 11:25:25 +080042AUDIO_FEATURE_ENABLED_3D_AUDIO := true
Xiaoyu Yea11fdf82017-11-21 16:49:32 -080043DOLBY_ENABLE := false
44endif
45
46USE_XML_AUDIO_POLICY_CONF := 1
47BOARD_SUPPORTS_SOUND_TRIGGER := true
Aditya Bavanari29bcea22017-10-03 20:10:35 +053048AUDIO_FEATURE_ENABLED_INSTANCE_ID := true
Aalique Grahame57058a62019-01-10 10:30:17 -080049AUDIO_USE_DEEP_AS_PRIMARY_OUTPUT := false
Xiaoyu Yea11fdf82017-11-21 16:49:32 -080050AUDIO_FEATURE_ENABLED_VBAT_MONITOR := true
51AUDIO_FEATURE_ENABLED_ANC_HEADSET := true
52AUDIO_FEATURE_ENABLED_CUSTOMSTEREO := true
53AUDIO_FEATURE_ENABLED_FLUENCE := true
54AUDIO_FEATURE_ENABLED_HDMI_EDID := true
55AUDIO_FEATURE_ENABLED_HDMI_PASSTHROUGH := true
56#AUDIO_FEATURE_ENABLED_KEEP_ALIVE := true
57AUDIO_FEATURE_ENABLED_DISPLAY_PORT := true
58AUDIO_FEATURE_ENABLED_DS2_DOLBY_DAP := false
59AUDIO_FEATURE_ENABLED_HFP := true
Arun Mirpurie5c697c2018-07-17 17:58:17 -070060AUDIO_FEATURE_ENABLED_INCALL_MUSIC := true
Xiaoyu Yea11fdf82017-11-21 16:49:32 -080061AUDIO_FEATURE_ENABLED_MULTI_VOICE_SESSIONS := true
62AUDIO_FEATURE_ENABLED_KPI_OPTIMIZE := true
63AUDIO_FEATURE_ENABLED_SPKR_PROTECTION := true
64AUDIO_FEATURE_ENABLED_ACDB_LICENSE := false
65AUDIO_FEATURE_ENABLED_DEV_ARBI := false
66AUDIO_FEATURE_ENABLED_DYNAMIC_LOG := true
67MM_AUDIO_ENABLED_FTM := true
68TARGET_USES_QCOM_MM_AUDIO := true
69AUDIO_FEATURE_ENABLED_SOURCE_TRACKING := true
70AUDIO_FEATURE_ENABLED_GEF_SUPPORT := true
71BOARD_SUPPORTS_QAHW := false
72AUDIO_FEATURE_ENABLED_RAS := true
73AUDIO_FEATURE_ENABLED_SND_MONITOR := true
Sharad Sangleda75d9c2018-03-29 13:30:54 +053074AUDIO_FEATURE_ENABLED_DLKM := true
Garmond Leung1c5f2502018-06-04 15:59:58 -070075AUDIO_FEATURE_ENABLED_USB_BURST_MODE := true
Quinn Male42d16702018-05-10 16:17:17 -070076AUDIO_FEATURE_ENABLED_SVA_MULTI_STAGE := true
Haynes Mathew George01156f92018-04-13 15:29:54 -070077AUDIO_FEATURE_ENABLED_BATTERY_LISTENER := true
Xiaoyu Yea11fdf82017-11-21 16:49:32 -080078##AUDIO_FEATURE_FLAGS
79
shoudilad09f432018-07-25 16:58:12 +080080ifneq ($(strip $(TARGET_USES_RRO)), true)
Xiaoyu Yea11fdf82017-11-21 16:49:32 -080081#Audio Specific device overlays
Aalique Grahame57058a62019-01-10 10:30:17 -080082DEVICE_PACKAGE_OVERLAYS += vendor/qcom/opensource/audio-hal/primary-hal/configs/common/overlay
shoudil2b5e8482018-05-23 17:11:17 +080083endif
Xiaoyu Yea11fdf82017-11-21 16:49:32 -080084
85PRODUCT_COPY_FILES += \
Aalique Grahame57058a62019-01-10 10:30:17 -080086 vendor/qcom/opensource/audio-hal/primary-hal/configs/msmnile/audio_io_policy.conf:$(TARGET_COPY_OUT_VENDOR)/etc/audio_io_policy.conf \
87 vendor/qcom/opensource/audio-hal/primary-hal/configs/msmnile/audio_effects.conf:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.conf \
88 vendor/qcom/opensource/audio-hal/primary-hal/configs/msmnile/audio_effects.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.xml \
89 vendor/qcom/opensource/audio-hal/primary-hal/configs/msmnile/mixer_paths_tavil.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_tavil.xml \
90 vendor/qcom/opensource/audio-hal/primary-hal/configs/msmnile/audio_tuning_mixer_tavil.txt:$(TARGET_COPY_OUT_VENDOR)/etc/audio_tuning_mixer_tavil.txt \
91 vendor/qcom/opensource/audio-hal/primary-hal/configs/msmnile/audio_tuning_mixer.txt:$(TARGET_COPY_OUT_VENDOR)/etc/audio_tuning_mixer.txt \
92 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 \
93 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 \
94 vendor/qcom/opensource/audio-hal/primary-hal/configs/msmnile/sound_trigger_platform_info.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_platform_info.xml \
95 vendor/qcom/opensource/audio-hal/primary-hal/configs/msmnile/graphite_ipc_platform_info.xml:$(TARGET_COPY_OUT_VENDOR)/etc/graphite_ipc_platform_info.xml \
96 vendor/qcom/opensource/audio-hal/primary-hal/configs/msmnile/audio_platform_info.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_platform_info.xml \
97 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 +080098 vendor/qcom/opensource/audio-hal/primary-hal/configs/msmnile/sound_trigger_mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_mixer_paths.xml \
99 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 -0800100
101#XML Audio configuration files
102ifneq ($(TARGET_USES_AOSP_FOR_AUDIO), true)
103PRODUCT_COPY_FILES += \
Aalique Grahame57058a62019-01-10 10:30:17 -0800104 $(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 -0800105endif
106PRODUCT_COPY_FILES += \
Aalique Grahame57058a62019-01-10 10:30:17 -0800107 $(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 -0800108 $(TOPDIR)frameworks/av/services/audiopolicy/config/a2dp_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/a2dp_audio_policy_configuration.xml \
109 $(TOPDIR)frameworks/av/services/audiopolicy/config/audio_policy_volumes.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_volumes.xml \
110 $(TOPDIR)frameworks/av/services/audiopolicy/config/default_volume_tables.xml:$(TARGET_COPY_OUT_VENDOR)/etc/default_volume_tables.xml \
111 $(TOPDIR)frameworks/av/services/audiopolicy/config/r_submix_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/r_submix_audio_policy_configuration.xml \
112 $(TOPDIR)frameworks/av/services/audiopolicy/config/usb_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/usb_audio_policy_configuration.xml
113
114# Listen configuration file
115PRODUCT_COPY_FILES += \
Aalique Grahame57058a62019-01-10 10:30:17 -0800116 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 -0800117
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\
Vignesh Kulothunganf606f782018-04-10 11:49:12 -0700131persist.vendor.audio.fluence.speaker=true\
132persist.vendor.audio.fluence.tmic.enabled=false
Xiaoyu Yea11fdf82017-11-21 16:49:32 -0800133
134#disable tunnel encoding
135PRODUCT_PROPERTY_OVERRIDES += \
136vendor.audio.tunnel.encode=false
137
138#Disable RAS Feature by default
139PRODUCT_PROPERTY_OVERRIDES += \
140persist.vendor.audio.ras.enabled=false
141
142#Buffer size in kbytes for compress offload playback
143PRODUCT_PROPERTY_OVERRIDES += \
144vendor.audio.offload.buffer.size.kb=32
145
146#Enable offload audio video playback by default
147PRODUCT_PROPERTY_OVERRIDES += \
148audio.offload.video=true
149
150#Enable audio track offload by default
151PRODUCT_PROPERTY_OVERRIDES += \
152vendor.audio.offload.track.enable=true
153
154#Enable music through deep buffer
155PRODUCT_PROPERTY_OVERRIDES += \
156audio.deep_buffer.media=true
157
158#enable voice path for PCM VoIP by default
159PRODUCT_PROPERTY_OVERRIDES += \
160vendor.voice.path.for.pcm.voip=true
161
162#Enable multi channel aac through offload
163PRODUCT_PROPERTY_OVERRIDES += \
164vendor.audio.offload.multiaac.enable=true
165
166#Enable DS2, Hardbypass feature for Dolby
167PRODUCT_PROPERTY_OVERRIDES += \
168vendor.audio.dolby.ds2.enabled=false\
169vendor.audio.dolby.ds2.hardbypass=false
170
171#Disable Multiple offload sesison
172PRODUCT_PROPERTY_OVERRIDES += \
173vendor.audio.offload.multiple.enabled=false
174
175#Disable Compress passthrough playback
176PRODUCT_PROPERTY_OVERRIDES += \
177vendor.audio.offload.passthrough=false
178
179#Disable surround sound recording
180PRODUCT_PROPERTY_OVERRIDES += \
181ro.vendor.audio.sdk.ssr=false
182
183#enable dsp gapless mode by default
184PRODUCT_PROPERTY_OVERRIDES += \
185vendor.audio.offload.gapless.enabled=true
186
187#enable pbe effects
188PRODUCT_PROPERTY_OVERRIDES += \
189vendor.audio.safx.pbe.enabled=true
190
191#parser input buffer size(256kb) in byte stream mode
192PRODUCT_PROPERTY_OVERRIDES += \
193vendor.audio.parser.ip.buffer.size=262144
194
195#flac sw decoder 24 bit decode capability
196PRODUCT_PROPERTY_OVERRIDES += \
197vendor.audio.flac.sw.decoder.24bit=true
198
199#split a2dp DSP supported encoder list
200PRODUCT_PROPERTY_OVERRIDES += \
Ben Rombergercb5b3092018-05-17 17:27:21 -0700201persist.vendor.bt.a2dp_offload_cap=sbc-aptx-aptxtws-aptxhd-aac-ldac
Xiaoyu Yea11fdf82017-11-21 16:49:32 -0800202
Aalique Grahame57058a62019-01-10 10:30:17 -0800203# A2DP offload support
204PRODUCT_PROPERTY_OVERRIDES += \
205ro.bluetooth.a2dp_offload.supported=true
206
207# Disable A2DP offload
208PRODUCT_PROPERTY_OVERRIDES += \
209persist.bluetooth.a2dp_offload.disabled=false
210
211# A2DP offload DSP supported encoder list
212PRODUCT_PROPERTY_OVERRIDES += \
213persist.bluetooth.a2dp_offload.cap=sbc-aac-aptx-aptxhd-ldac
214
Xiaoyu Yea11fdf82017-11-21 16:49:32 -0800215#enable software decoders for ALAC and APE
216PRODUCT_PROPERTY_OVERRIDES += \
217vendor.audio.use.sw.alac.decoder=true
218PRODUCT_PROPERTY_OVERRIDES += \
219vendor.audio.use.sw.ape.decoder=true
220
221#enable hw aac encoder by default
222PRODUCT_PROPERTY_OVERRIDES += \
223vendor.audio.hw.aac.encoder=true
224
Xiaoyu Yea11fdf82017-11-21 16:49:32 -0800225#audio becoming noisy intent broadcast delay
226PRODUCT_PROPERTY_OVERRIDES += \
227vendor.audio.noisy.broadcast.delay=600
228
229#offload pausetime out duration to 3 secs to inline with other outputs
230PRODUCT_PROPERTY_OVERRIDES += \
231vendor.audio.offload.pstimeout.secs=3
232
233#Set AudioFlinger client heap size
234PRODUCT_PROPERTY_OVERRIDES += \
235ro.af.client_heap_size_kbyte=7168
236
237#Set HAL buffer size to samples equal to 3 ms
238PRODUCT_PROPERTY_OVERRIDES += \
239vendor.audio_hal.in_period_size=144
240
241#Set HAL buffer size to 3 ms
242PRODUCT_PROPERTY_OVERRIDES += \
243vendor.audio_hal.period_multiplier=3
244
245#ADM Buffering size in ms
246PRODUCT_PROPERTY_OVERRIDES += \
247vendor.audio.adm.buffering.ms=2
248
Weiyin Jiang3cdf3cc2018-08-03 14:37:55 +0800249#enable keytone FR
250PRODUCT_PROPERTY_OVERRIDES += \
251vendor.audio.hal.output.suspend.supported=true
252
Aalique Grahame3381f1b2018-04-16 22:17:00 -0700253#enable mirror-link feature
254PRODUCT_PROPERTY_OVERRIDES += \
255vendor.audio.enable.mirrorlink=false
256
Vikram Panduranga1b5b2cf2018-04-27 12:34:38 -0700257#enable voicecall speaker stereo
258PRODUCT_PROPERTY_OVERRIDES += \
259persist.vendor.audio.voicecall.speaker.stereo=true
260
Aniket Kumar Lata6d74b6f2018-11-21 14:24:38 -0800261#enable AAC frame ctl for A2DP sinks
262PRODUCT_PROPERTY_OVERRIDES += \
263persist.vendor.bt.aac_frm_ctl.enabled=true
Naresh Tanniruf1290152018-11-27 12:16:45 +0530264endif
Aniket Kumar Lata6d74b6f2018-11-21 14:24:38 -0800265
Aalique Grahame57058a62019-01-10 10:30:17 -0800266#enable headset calibration
267PRODUCT_PROPERTY_OVERRIDES += \
268audio.volume.headset.gain.depcal=true
269
270#enable dualmic fluence for voice communication
271PRODUCT_PROPERTY_OVERRIDES += \
272persist.audio.fluence.voicecomm=true
273
Xiaoyu Yea11fdf82017-11-21 16:49:32 -0800274# for HIDL related packages
275PRODUCT_PACKAGES += \
276 android.hardware.audio@2.0-service \
277 android.hardware.audio@2.0-impl \
278 android.hardware.audio.effect@2.0-impl \
Aalique Grahame804cba62018-05-11 11:07:07 -0700279 android.hardware.soundtrigger@2.1-impl \
280 android.hardware.audio@4.0 \
281 android.hardware.audio.common@4.0 \
282 android.hardware.audio.common@4.0-util \
283 android.hardware.audio@4.0-impl \
284 android.hardware.audio.effect@4.0 \
Weiyin Jiange6ce6312019-01-28 18:28:22 +0800285 android.hardware.audio.effect@4.0-impl \
286 vendor.qti.hardware.audiohalext@1.0 \
287 vendor.qti.hardware.audiohalext@1.0-impl \
288 vendor.qti.hardware.audiohalext-utils