blob: a8efc6c4a5ef9a6f8dba0fc02931eb7f1799b92e [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)
Aalique Grahame91642192019-02-21 17:15:24 -080015USE_CUSTOM_AUDIO_POLICY := 0
Meng Wang595b3d02018-10-08 12:55:16 +080016AUDIO_FEATURE_ENABLED_COMPRESS_CAPTURE := false
17AUDIO_FEATURE_ENABLED_COMPRESS_VOIP := false
18AUDIO_FEATURE_ENABLED_DYNAMIC_ECNS := true
19AUDIO_FEATURE_ENABLED_EXTN_FORMATS := true
20AUDIO_FEATURE_ENABLED_EXTN_FLAC_DECODER := true
21AUDIO_FEATURE_ENABLED_EXTN_RESAMPLER := true
22AUDIO_FEATURE_ENABLED_FM_POWER_OPT := true
23AUDIO_FEATURE_ENABLED_HDMI_SPK := true
24AUDIO_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
32AUDIO_FEATURE_ENABLED_PROXY_DEVICE := true
33AUDIO_FEATURE_ENABLED_SSR := true
34AUDIO_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
Meng Wang595b3d02018-10-08 12:55:16 +080042AUDIO_FEATURE_ENABLED_3D_AUDIO := false
Weiyin Jiang239190c2019-02-26 11:51:34 +080043AUDIO_FEATURE_ENABLED_AHAL_EXT := true
Meng Wang595b3d02018-10-08 12:55:16 +080044DOLBY_ENABLE := false
45endif
46
Meng Wang595b3d02018-10-08 12:55:16 +080047AUDIO_FEATURE_ENABLED_DLKM := true
48BOARD_SUPPORTS_SOUND_TRIGGER := true
Meng Wangc688a062019-01-09 13:18:11 +080049BOARD_SUPPORTS_GCS := false
Meng Wang595b3d02018-10-08 12:55:16 +080050AUDIO_FEATURE_ENABLED_INSTANCE_ID := true
Aalique Grahame57058a62019-01-10 10:30:17 -080051AUDIO_USE_DEEP_AS_PRIMARY_OUTPUT := false
Meng Wang595b3d02018-10-08 12:55:16 +080052AUDIO_FEATURE_ENABLED_VBAT_MONITOR := true
53AUDIO_FEATURE_ENABLED_ANC_HEADSET := true
54AUDIO_FEATURE_ENABLED_CUSTOMSTEREO := true
55AUDIO_FEATURE_ENABLED_FLUENCE := true
56AUDIO_FEATURE_ENABLED_HDMI_EDID := true
57AUDIO_FEATURE_ENABLED_HDMI_PASSTHROUGH := true
58#AUDIO_FEATURE_ENABLED_KEEP_ALIVE := true
59AUDIO_FEATURE_ENABLED_DISPLAY_PORT := true
60AUDIO_FEATURE_ENABLED_DS2_DOLBY_DAP := false
61AUDIO_FEATURE_ENABLED_HFP := true
62AUDIO_FEATURE_ENABLED_INCALL_MUSIC := true
63AUDIO_FEATURE_ENABLED_MULTI_VOICE_SESSIONS := true
64AUDIO_FEATURE_ENABLED_KPI_OPTIMIZE := true
65AUDIO_FEATURE_ENABLED_SPKR_PROTECTION := true
66AUDIO_FEATURE_ENABLED_ACDB_LICENSE := false
67AUDIO_FEATURE_ENABLED_DEV_ARBI := false
68AUDIO_FEATURE_ENABLED_DYNAMIC_LOG := true
69MM_AUDIO_ENABLED_FTM := true
70TARGET_USES_QCOM_MM_AUDIO := true
71AUDIO_FEATURE_ENABLED_SOURCE_TRACKING := true
72AUDIO_FEATURE_ENABLED_GEF_SUPPORT := true
73BOARD_SUPPORTS_QAHW := false
74AUDIO_FEATURE_ENABLED_RAS := true
75AUDIO_FEATURE_ENABLED_SND_MONITOR := true
76AUDIO_FEATURE_ENABLED_SVA_MULTI_STAGE := true
77AUDIO_FEATURE_ENABLED_BATTERY_LISTENER := true
78##AUDIO_FEATURE_FLAGS
79
80#Audio Specific device overlays
Aalique Grahame57058a62019-01-10 10:30:17 -080081DEVICE_PACKAGE_OVERLAYS += vendor/qcom/opensource/audio-hal/primary-hal/configs/common/overlay
Meng Wang595b3d02018-10-08 12:55:16 +080082
83PRODUCT_COPY_FILES += \
Aalique Grahame57058a62019-01-10 10:30:17 -080084 vendor/qcom/opensource/audio-hal/primary-hal/configs/kona/audio_io_policy.conf:$(TARGET_COPY_OUT_VENDOR)/etc/audio_io_policy.conf \
85 vendor/qcom/opensource/audio-hal/primary-hal/configs/kona/audio_effects.conf:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.conf \
86 vendor/qcom/opensource/audio-hal/primary-hal/configs/kona/audio_effects.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.xml \
87 vendor/qcom/opensource/audio-hal/primary-hal/configs/kona/sound_trigger_platform_info.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_platform_info.xml \
88 vendor/qcom/opensource/audio-hal/primary-hal/configs/kona/audio_platform_info.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_platform_info.xml \
89 vendor/qcom/opensource/audio-hal/primary-hal/configs/kona/audio_platform_info_qrd.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_platform_info_qrd.xml \
90 vendor/qcom/opensource/audio-hal/primary-hal/configs/kona/audio_platform_info_intcodec.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_platform_info_intcodec.xml \
91 vendor/qcom/opensource/audio-hal/primary-hal/configs/kona/sound_trigger_mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_mixer_paths.xml \
92 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 \
93 vendor/qcom/opensource/audio-hal/primary-hal/configs/kona/mixer_paths_mtp.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_mtp.xml \
94 vendor/qcom/opensource/audio-hal/primary-hal/configs/kona/mixer_paths_qrd.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_qrd.xml \
Weiyin Jiang239190c2019-02-26 11:51:34 +080095 vendor/qcom/opensource/audio-hal/primary-hal/configs/kona/audio_configs.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_configs.xml
Meng Wang595b3d02018-10-08 12:55:16 +080096
97#XML Audio configuration files
98ifneq ($(TARGET_USES_AOSP_FOR_AUDIO), true)
99PRODUCT_COPY_FILES += \
Aalique Grahame57058a62019-01-10 10:30:17 -0800100 $(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 +0800101endif
102PRODUCT_COPY_FILES += \
Aalique Grahame57058a62019-01-10 10:30:17 -0800103 $(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 +0800104 $(TOPDIR)frameworks/av/services/audiopolicy/config/a2dp_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/a2dp_audio_policy_configuration.xml \
105 $(TOPDIR)frameworks/av/services/audiopolicy/config/audio_policy_volumes.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_volumes.xml \
106 $(TOPDIR)frameworks/av/services/audiopolicy/config/default_volume_tables.xml:$(TARGET_COPY_OUT_VENDOR)/etc/default_volume_tables.xml \
107 $(TOPDIR)frameworks/av/services/audiopolicy/config/r_submix_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/r_submix_audio_policy_configuration.xml \
108 $(TOPDIR)frameworks/av/services/audiopolicy/config/usb_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/usb_audio_policy_configuration.xml
109
110# Reduce client buffer size for fast audio output tracks
111PRODUCT_PROPERTY_OVERRIDES += \
112 af.fast_track_multiplier=1
113
114# Low latency audio buffer size in frames
115PRODUCT_PROPERTY_OVERRIDES += \
116 vendor.audio_hal.period_size=192
117
118##fluencetype can be "fluence" or "fluencepro" or "none"
119PRODUCT_PROPERTY_OVERRIDES += \
120ro.vendor.audio.sdk.fluencetype=none\
121persist.vendor.audio.fluence.voicecall=true\
122persist.vendor.audio.fluence.voicerec=false\
123persist.vendor.audio.fluence.speaker=true
124
125#disable tunnel encoding
126PRODUCT_PROPERTY_OVERRIDES += \
127vendor.audio.tunnel.encode=false
128
129#Disable RAS Feature by default
130PRODUCT_PROPERTY_OVERRIDES += \
131persist.vendor.audio.ras.enabled=false
132
133#Buffer size in kbytes for compress offload playback
134PRODUCT_PROPERTY_OVERRIDES += \
135vendor.audio.offload.buffer.size.kb=32
136
137#Enable offload audio video playback by default
138PRODUCT_PROPERTY_OVERRIDES += \
139audio.offload.video=true
140
141#Enable audio track offload by default
142PRODUCT_PROPERTY_OVERRIDES += \
143vendor.audio.offload.track.enable=true
144
145#Enable music through deep buffer
146PRODUCT_PROPERTY_OVERRIDES += \
147audio.deep_buffer.media=true
148
149#enable voice path for PCM VoIP by default
150PRODUCT_PROPERTY_OVERRIDES += \
151vendor.voice.path.for.pcm.voip=true
152
153#Enable multi channel aac through offload
154PRODUCT_PROPERTY_OVERRIDES += \
155vendor.audio.offload.multiaac.enable=true
156
157#Enable DS2, Hardbypass feature for Dolby
158PRODUCT_PROPERTY_OVERRIDES += \
159vendor.audio.dolby.ds2.enabled=false\
160vendor.audio.dolby.ds2.hardbypass=false
161
162#Disable Multiple offload sesison
163PRODUCT_PROPERTY_OVERRIDES += \
164vendor.audio.offload.multiple.enabled=false
165
166#Disable Compress passthrough playback
167PRODUCT_PROPERTY_OVERRIDES += \
168vendor.audio.offload.passthrough=false
169
170#Disable surround sound recording
171PRODUCT_PROPERTY_OVERRIDES += \
172ro.vendor.audio.sdk.ssr=false
173
174#enable dsp gapless mode by default
175PRODUCT_PROPERTY_OVERRIDES += \
176vendor.audio.offload.gapless.enabled=true
177
178#enable pbe effects
179PRODUCT_PROPERTY_OVERRIDES += \
180vendor.audio.safx.pbe.enabled=true
181
182#parser input buffer size(256kb) in byte stream mode
183PRODUCT_PROPERTY_OVERRIDES += \
184vendor.audio.parser.ip.buffer.size=262144
185
186#flac sw decoder 24 bit decode capability
187PRODUCT_PROPERTY_OVERRIDES += \
188vendor.audio.flac.sw.decoder.24bit=true
189
190#split a2dp DSP supported encoder list
191PRODUCT_PROPERTY_OVERRIDES += \
192persist.vendor.bt.a2dp_offload_cap=sbc-aptx-aptxtws-aptxhd-aac
193
Aalique Grahame57058a62019-01-10 10:30:17 -0800194# A2DP offload support
195PRODUCT_PROPERTY_OVERRIDES += \
196ro.bluetooth.a2dp_offload.supported=true
197
198# Disable A2DP offload
199PRODUCT_PROPERTY_OVERRIDES += \
200persist.bluetooth.a2dp_offload.disabled=false
201
202# A2DP offload DSP supported encoder list
203PRODUCT_PROPERTY_OVERRIDES += \
204persist.bluetooth.a2dp_offload.cap=sbc-aac-aptx-aptxhd-ldac
205
Meng Wang595b3d02018-10-08 12:55:16 +0800206#enable software decoders for ALAC and APE
207PRODUCT_PROPERTY_OVERRIDES += \
208vendor.audio.use.sw.alac.decoder=true
209PRODUCT_PROPERTY_OVERRIDES += \
210vendor.audio.use.sw.ape.decoder=true
211
212#enable hw aac encoder by default
213PRODUCT_PROPERTY_OVERRIDES += \
214vendor.audio.hw.aac.encoder=true
215
216#audio becoming noisy intent broadcast delay
217PRODUCT_PROPERTY_OVERRIDES += \
218vendor.audio.noisy.broadcast.delay=600
219
220#offload pausetime out duration to 3 secs to inline with other outputs
221PRODUCT_PROPERTY_OVERRIDES += \
222vendor.audio.offload.pstimeout.secs=3
223
224#Set AudioFlinger client heap size
225PRODUCT_PROPERTY_OVERRIDES += \
226ro.af.client_heap_size_kbyte=7168
227
228#Set HAL buffer size to samples equal to 3 ms
229PRODUCT_PROPERTY_OVERRIDES += \
230vendor.audio_hal.in_period_size=144
231
232#Set HAL buffer size to 3 ms
233PRODUCT_PROPERTY_OVERRIDES += \
234vendor.audio_hal.period_multiplier=3
235
236#ADM Buffering size in ms
237PRODUCT_PROPERTY_OVERRIDES += \
238vendor.audio.adm.buffering.ms=2
239
Aalique Grahame57058a62019-01-10 10:30:17 -0800240#enable headset calibration
241PRODUCT_PROPERTY_OVERRIDES += \
242audio.volume.headset.gain.depcal=true
243
244#enable dualmic fluence for voice communication
245PRODUCT_PROPERTY_OVERRIDES += \
246persist.audio.fluence.voicecomm=true
Naresh Tanniru5beb8132018-11-27 12:16:45 +0530247endif
Aalique Grahame57058a62019-01-10 10:30:17 -0800248
Meng Wangb2ab1862019-02-13 08:27:19 +0800249USE_XML_AUDIO_POLICY_CONF := 1
250
Meng Wang595b3d02018-10-08 12:55:16 +0800251# for HIDL related packages
252PRODUCT_PACKAGES += \
253 android.hardware.audio@2.0-service \
254 android.hardware.audio@2.0-impl \
255 android.hardware.audio.effect@2.0-impl \
256 android.hardware.soundtrigger@2.1-impl \
257 android.hardware.audio@4.0 \
258 android.hardware.audio.common@4.0 \
259 android.hardware.audio.common@4.0-util \
260 android.hardware.audio@4.0-impl \
261 android.hardware.audio.effect@4.0 \
Weiyin Jiang239190c2019-02-26 11:51:34 +0800262 android.hardware.audio.effect@4.0-impl \
263 vendor.qti.hardware.audiohalext@1.0 \
264 vendor.qti.hardware.audiohalext@1.0-impl \
265 vendor.qti.hardware.audiohalext-utils