blob: 8f9975ddbe62987e97c33f94b63c45b8154cb050 [file] [log] [blame]
Ashish Jain1221b522016-03-30 15:09:20 +05301##AUDIO_FEATURE_FLAGS
2#BOARD_USES_GENERIC_AUDIO := true
3BOARD_USES_ALSA_AUDIO := true
Sharad Sangle8ecefdc2016-09-26 13:50:41 +05304
vivek mehta02a52022017-01-27 15:36:19 -08005ifneq ($(TARGET_USES_AOSP_FOR_AUDIO), true)
Ashish Jain1221b522016-03-30 15:09:20 +05306USE_CUSTOM_AUDIO_POLICY := 1
Vara Prasad A V S Gbbef79e2016-04-26 21:12:43 +05307#AUDIO_FEATURE_ENABLED_VOICE_CONCURRENCY := true
Ashish Jain1221b522016-03-30 15:09:20 +05308AUDIO_FEATURE_ENABLED_AAC_ADTS_OFFLOAD := true
Ashish Jain1221b522016-03-30 15:09:20 +05309AUDIO_FEATURE_ENABLED_COMPRESS_CAPTURE := false
Ramjee Singh6bc592c2018-04-18 14:54:12 +053010AUDIO_FEATURE_ENABLED_COMPRESS_VOIP := true
Ashish Jain1221b522016-03-30 15:09:20 +053011AUDIO_FEATURE_ENABLED_EXTN_FORMATS := true
12AUDIO_FEATURE_ENABLED_EXTN_FLAC_DECODER := true
13AUDIO_FEATURE_ENABLED_EXTN_RESAMPLER := true
14AUDIO_FEATURE_ENABLED_FM_POWER_OPT := true
Ashish Jain1221b522016-03-30 15:09:20 +053015AUDIO_FEATURE_ENABLED_PCM_OFFLOAD := true
16AUDIO_FEATURE_ENABLED_PCM_OFFLOAD_24 := true
17AUDIO_FEATURE_ENABLED_FLAC_OFFLOAD := true
18AUDIO_FEATURE_ENABLED_VORBIS_OFFLOAD := true
19AUDIO_FEATURE_ENABLED_WMA_OFFLOAD := true
20AUDIO_FEATURE_ENABLED_ALAC_OFFLOAD := true
21AUDIO_FEATURE_ENABLED_APE_OFFLOAD := true
Ashish Jainad78edc2016-04-11 12:22:28 +053022AUDIO_FEATURE_ENABLED_PROXY_DEVICE := true
Ashish Jain1221b522016-03-30 15:09:20 +053023AUDIO_FEATURE_ENABLED_SSR := true
Ashish Jain1221b522016-03-30 15:09:20 +053024AUDIO_FEATURE_ENABLED_DTS_EAGLE := false
Divya Narayanan Poojary87cfbd72017-02-15 12:16:58 +053025BOARD_USES_SRS_TRUEMEDIA := false
Ashish Jain1221b522016-03-30 15:09:20 +053026DTS_CODEC_M_ := true
27#AUDIO_FEATURE_ENABLED_MULTIPLE_TUNNEL := true
Ashish Jain1221b522016-03-30 15:09:20 +053028MM_AUDIO_ENABLED_SAFX := true
Ashish Jain1221b522016-03-30 15:09:20 +053029AUDIO_FEATURE_ENABLED_HW_ACCELERATED_EFFECTS := false
Satya Krishna Pindiproli4a72ae62017-07-02 16:08:11 +053030AUDIO_FEATURE_ENABLED_DS2_DOLBY_DAP := false
Ashish Jain1221b522016-03-30 15:09:20 +053031AUDIO_FEATURE_ENABLED_AUDIOSPHERE := true
Dhananjay Kumar29b894e2017-04-05 02:41:14 +053032DOLBY_ENABLE := false
Sharad Sangle8ecefdc2016-09-26 13:50:41 +053033endif
Ashish Jain1221b522016-03-30 15:09:20 +053034
Sharad Sangle8ecefdc2016-09-26 13:50:41 +053035USE_XML_AUDIO_POLICY_CONF := 1
36BOARD_SUPPORTS_SOUND_TRIGGER := true
37AUDIO_USE_LL_AS_PRIMARY_OUTPUT := true
38AUDIO_FEATURE_ENABLED_HIFI_AUDIO := true
39AUDIO_FEATURE_ENABLED_VBAT_MONITOR := true
40AUDIO_FEATURE_ENABLED_NT_PAUSE_TIMEOUT := true
41AUDIO_FEATURE_ENABLED_ANC_HEADSET := true
42AUDIO_FEATURE_ENABLED_CUSTOMSTEREO := true
43AUDIO_FEATURE_ENABLED_FLUENCE := true
44AUDIO_FEATURE_ENABLED_HDMI_SPK := true
45AUDIO_FEATURE_ENABLED_HDMI_EDID := true
46AUDIO_FEATURE_ENABLED_EXT_HDMI := true
47AUDIO_FEATURE_ENABLED_HFP := true
48AUDIO_FEATURE_ENABLED_INCALL_MUSIC := false
49AUDIO_FEATURE_ENABLED_MULTI_VOICE_SESSIONS := true
50AUDIO_FEATURE_ENABLED_KPI_OPTIMIZE := true
51AUDIO_FEATURE_ENABLED_SPKR_PROTECTION := true
52AUDIO_FEATURE_ENABLED_ACDB_LICENSE := true
53AUDIO_FEATURE_ENABLED_DEV_ARBI := false
54MM_AUDIO_ENABLED_FTM := true
55TARGET_USES_QCOM_MM_AUDIO := true
56AUDIO_FEATURE_ENABLED_SOURCE_TRACKING := true
Rajshekar Eashwarappa88834522018-04-02 17:20:15 +053057BOARD_SUPPORTS_QAHW := false
Revathi Uddaraju1eac8b02017-05-18 17:13:33 +053058AUDIO_FEATURE_ENABLED_DYNAMIC_LOG := true
Dhananjay Kumare6293dd2017-05-25 17:25:30 +053059AUDIO_FEATURE_ENABLED_SND_MONITOR := true
Revathi Uddaraju16db00d2018-07-11 11:45:36 +053060AUDIO_FEATURE_ENABLED_SVA_MULTI_STAGE := true
Himanshu Agrawal77c6d322018-04-17 20:46:37 +053061ifeq ($(TARGET_KERNEL_VERSION), 3.18)
62 AUDIO_FEATURE_ENABLED_DLKM := false
63else
64 AUDIO_FEATURE_ENABLED_DLKM := true
65endif
Ashish Jain1221b522016-03-30 15:09:20 +053066##AUDIO_FEATURE_FLAGS
67
Ashish Jain440a4d92016-04-06 23:03:56 +053068#Audio Specific device overlays
69DEVICE_PACKAGE_OVERLAYS += hardware/qcom/audio/configs/common/overlay
70
Sharad Sangle8ecefdc2016-09-26 13:50:41 +053071# Audio configuration file
vivek mehta02a52022017-01-27 15:36:19 -080072ifeq ($(TARGET_USES_AOSP_FOR_AUDIO), true)
Sharad Sangle8ecefdc2016-09-26 13:50:41 +053073PRODUCT_COPY_FILES += \
Divya Narayanan Poojary2c5f13a2017-07-05 16:54:41 +053074 device/qcom/common/media/audio_policy.conf:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy.conf
Sharad Sangle8ecefdc2016-09-26 13:50:41 +053075else
76PRODUCT_COPY_FILES += \
Divya Narayanan Poojary2c5f13a2017-07-05 16:54:41 +053077 hardware/qcom/audio/configs/msm8953/audio_policy.conf:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy.conf
Sharad Sangle8ecefdc2016-09-26 13:50:41 +053078endif
Ashish Jain1221b522016-03-30 15:09:20 +053079
80PRODUCT_COPY_FILES += \
David Ng06ccd872017-03-15 11:39:33 -070081hardware/qcom/audio/configs/msm8953/audio_output_policy.conf:$(TARGET_COPY_OUT_VENDOR)/etc/audio_output_policy.conf \
82hardware/qcom/audio/configs/msm8953/audio_effects.conf:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.conf \
Lakshman Chaluvarajuc57b29c2018-05-08 19:42:03 +053083hardware/qcom/audio/configs/msm8953/audio_effects.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.xml \
Divya Narayanan Poojary2c5f13a2017-07-05 16:54:41 +053084hardware/qcom/audio/configs/msm8953/mixer_paths_mtp.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_mtp.xml \
85hardware/qcom/audio/configs/msm8953/mixer_paths_qrd_skuh.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_qrd_skuh.xml \
86hardware/qcom/audio/configs/msm8953/mixer_paths_qrd_skui.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_qrd_skui.xml \
87hardware/qcom/audio/configs/msm8953/mixer_paths_qrd_skuhf.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_qrd_skuhf.xml \
88hardware/qcom/audio/configs/msm8953/mixer_paths_qrd_skum.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_qrd_skum.xml \
89hardware/qcom/audio/configs/msm8953/mixer_paths_qrd_sku3.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_qrd_sku3.xml \
90hardware/qcom/audio/configs/msm8953/mixer_paths_wcd9330.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_wcd9330.xml \
91hardware/qcom/audio/configs/msm8953/mixer_paths_wcd9306.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_wcd9306.xml \
92hardware/qcom/audio/configs/msm8953/mixer_paths_wcd9335.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_wcd9335.xml \
93hardware/qcom/audio/configs/msm8953/mixer_paths_wcd9326.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_wcd9326.xml \
94hardware/qcom/audio/configs/msm8953/mixer_paths_qrd_skun.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_qrd_skun.xml \
95hardware/qcom/audio/configs/msm8953/mixer_paths_skuk.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_skuk.xml \
96hardware/qcom/audio/configs/msm8953/mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths.xml \
97hardware/qcom/audio/configs/msm8953/sound_trigger_mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_mixer_paths.xml \
98hardware/qcom/audio/configs/msm8953/sound_trigger_mixer_paths_wcd9306.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_mixer_paths_wcd9306.xml \
99hardware/qcom/audio/configs/msm8953/sound_trigger_mixer_paths_wcd9330.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_mixer_paths_wcd9330.xml \
100hardware/qcom/audio/configs/msm8953/sound_trigger_mixer_paths_wcd9335.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_mixer_paths_wcd9335.xml \
101hardware/qcom/audio/configs/msm8953/sound_trigger_platform_info.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_platform_info.xml \
102hardware/qcom/audio/configs/msm8953/audio_platform_info.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_platform_info.xml \
103hardware/qcom/audio/configs/msm8953/audio_platform_info_extcodec.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_platform_info_extcodec.xml \
Revathi Uddarajufdaeee22017-10-20 12:29:32 +0530104hardware/qcom/audio/configs/msm8953/audio_tuning_mixer.txt:$(TARGET_COPY_OUT_VENDOR)/etc/audio_tuning_mixer.txt
Ashish Jain1221b522016-03-30 15:09:20 +0530105
Satya Krishna Pindiproli013c3e42016-04-13 17:41:15 +0530106#XML Audio configuration files
107ifeq ($(USE_XML_AUDIO_POLICY_CONF), 1)
Dhananjay Kumaraeb58fd2017-07-14 22:45:34 +0530108ifneq ($(TARGET_USES_AOSP_FOR_AUDIO), true)
Satya Krishna Pindiproli013c3e42016-04-13 17:41:15 +0530109PRODUCT_COPY_FILES += \
Dhananjay Kumaraeb58fd2017-07-14 22:45:34 +0530110 $(TOPDIR)hardware/qcom/audio/configs/msm8953/audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio/audio_policy_configuration.xml
Satya Krishna Pindiproli87a95f92016-05-09 19:58:33 +0530111endif
112PRODUCT_COPY_FILES += \
Dhananjay Kumaraeb58fd2017-07-14 22:45:34 +0530113 $(TOPDIR)hardware/qcom/audio/configs/common/audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration.xml \
Divya Narayanan Poojary2c5f13a2017-07-05 16:54:41 +0530114 $(TOPDIR)frameworks/av/services/audiopolicy/config/audio_policy_volumes.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_volumes.xml \
115 $(TOPDIR)frameworks/av/services/audiopolicy/config/default_volume_tables.xml:$(TARGET_COPY_OUT_VENDOR)/etc/default_volume_tables.xml \
116 $(TOPDIR)frameworks/av/services/audiopolicy/config/r_submix_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/r_submix_audio_policy_configuration.xml \
117 $(TOPDIR)frameworks/av/services/audiopolicy/config/usb_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/usb_audio_policy_configuration.xml
Srinu Jellae36e6e42019-05-15 17:59:11 +0530118
119#check for Android P (version 9)
120ifeq ($(PLATFORM_VERSION), 9)
121PRODUCT_COPY_FILES += \
122 $(TOPDIR)frameworks/av/services/audiopolicy/config/a2dp_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/a2dp_audio_policy_configuration.xml
123else
124PRODUCT_COPY_FILES += \
125 $(TOPDIR)hardware/qcom/audio/configs/common/bluetooth_qti_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/a2dp_audio_policy_configuration.xml
126endif
Satya Krishna Pindiproli013c3e42016-04-13 17:41:15 +0530127endif
128
Ashish Jain1221b522016-03-30 15:09:20 +0530129# Reduce client buffer size for fast audio output tracks
130PRODUCT_PROPERTY_OVERRIDES += \
131af.fast_track_multiplier=1
132
133#Low latency audio buffer size in frames
134PRODUCT_PROPERTY_OVERRIDES += \
Ramjee Singh63839662017-05-10 15:27:22 +0530135vendor.audio_hal.period_size=192
Ashish Jain1221b522016-03-30 15:09:20 +0530136
137##fluencetype can be "fluence" or "fluencepro" or "none"
138PRODUCT_PROPERTY_OVERRIDES += \
Ramjee Singh63839662017-05-10 15:27:22 +0530139ro.vendor.audio.sdk.fluencetype=none\
140persist.vendor.audio.fluence.voicecall=true\
141persist.vendor.audio.fluence.voicerec=false\
142persist.vendor.audio.fluence.speaker=true
Ashish Jain1221b522016-03-30 15:09:20 +0530143
144#disable tunnel encoding
145PRODUCT_PROPERTY_OVERRIDES += \
Ramjee Singh63839662017-05-10 15:27:22 +0530146vendor.audio.tunnel.encode=false
Ashish Jain1221b522016-03-30 15:09:20 +0530147
148#Buffer size in kbytes for compress offload playback
149PRODUCT_PROPERTY_OVERRIDES += \
Ramjee Singh63839662017-05-10 15:27:22 +0530150vendor.audio.offload.buffer.size.kb=64
Ashish Jain1221b522016-03-30 15:09:20 +0530151
152#Minimum duration for offload playback in secs
153PRODUCT_PROPERTY_OVERRIDES += \
154audio.offload.min.duration.secs=30
155
156#Enable offload audio video playback by default
157PRODUCT_PROPERTY_OVERRIDES += \
158audio.offload.video=true
159
Ashish Jain1221b522016-03-30 15:09:20 +0530160#Enable audio track offload by default
161PRODUCT_PROPERTY_OVERRIDES += \
Ramjee Singh63839662017-05-10 15:27:22 +0530162vendor.audio.offload.track.enable=true
Ashish Jain1221b522016-03-30 15:09:20 +0530163
164#Enable music through deep buffer
165PRODUCT_PROPERTY_OVERRIDES += \
166audio.deep_buffer.media=true
167
Ashish Jain1221b522016-03-30 15:09:20 +0530168#enable voice path for PCM VoIP by default
169PRODUCT_PROPERTY_OVERRIDES += \
Ramjee Singh63839662017-05-10 15:27:22 +0530170vendor.voice.path.for.pcm.voip=true
Ashish Jain1221b522016-03-30 15:09:20 +0530171
172#Enable multi channel aac through offload
173PRODUCT_PROPERTY_OVERRIDES += \
Ramjee Singh63839662017-05-10 15:27:22 +0530174vendor.audio.offload.multiaac.enable=true
Ashish Jain1221b522016-03-30 15:09:20 +0530175
176#Enable DS2, Hardbypass feature for Dolby
177PRODUCT_PROPERTY_OVERRIDES += \
Satya Krishna Pindiproli4a72ae62017-07-02 16:08:11 +0530178vendor.audio.dolby.ds2.enabled=false\
179vendor.audio.dolby.ds2.hardbypass=false
Ashish Jain1221b522016-03-30 15:09:20 +0530180
181#Disable Multiple offload sesison
182PRODUCT_PROPERTY_OVERRIDES += \
Ramjee Singh63839662017-05-10 15:27:22 +0530183vendor.audio.offload.multiple.enabled=false
Ashish Jain1221b522016-03-30 15:09:20 +0530184
185#Disable Compress passthrough playback
186PRODUCT_PROPERTY_OVERRIDES += \
Ramjee Singh63839662017-05-10 15:27:22 +0530187vendor.audio.offload.passthrough=false
Ashish Jain1221b522016-03-30 15:09:20 +0530188
189#Disable surround sound recording
190PRODUCT_PROPERTY_OVERRIDES += \
Ramjee Singh63839662017-05-10 15:27:22 +0530191ro.vendor.audio.sdk.ssr=false
Ashish Jain1221b522016-03-30 15:09:20 +0530192
193#enable dsp gapless mode by default
194PRODUCT_PROPERTY_OVERRIDES += \
Ramjee Singh63839662017-05-10 15:27:22 +0530195vendor.audio.offload.gapless.enabled=true
Ashish Jain1221b522016-03-30 15:09:20 +0530196
197#enable pbe effects
198PRODUCT_PROPERTY_OVERRIDES += \
Ramjee Singh63839662017-05-10 15:27:22 +0530199vendor.audio.safx.pbe.enabled=true
Ashish Jain1221b522016-03-30 15:09:20 +0530200
201#parser input buffer size(256kb) in byte stream mode
202PRODUCT_PROPERTY_OVERRIDES += \
Ramjee Singh63839662017-05-10 15:27:22 +0530203vendor.audio.parser.ip.buffer.size=262144
Ashish Jain1221b522016-03-30 15:09:20 +0530204
205#enable downsampling for multi-channel content > 48Khz
206PRODUCT_PROPERTY_OVERRIDES += \
Ramjee Singh63839662017-05-10 15:27:22 +0530207vendor.audio.playback.mch.downsample=true
Ashish Jain1221b522016-03-30 15:09:20 +0530208
209#enable software decoders for ALAC and APE.
210PRODUCT_PROPERTY_OVERRIDES += \
Ramjee Singh63839662017-05-10 15:27:22 +0530211vendor.audio.use.sw.alac.decoder=true\
212vendor.audio.use.sw.ape.decoder=true
Ashish Jain1221b522016-03-30 15:09:20 +0530213
214#property for AudioSphere Post processing
215PRODUCT_PROPERTY_OVERRIDES += \
Ramjee Singh63839662017-05-10 15:27:22 +0530216vendor.audio.pp.asphere.enabled=false
Ashish Jain1221b522016-03-30 15:09:20 +0530217
218#Audio voice concurrency related flags
219PRODUCT_PROPERTY_OVERRIDES += \
Ramjee Singh63839662017-05-10 15:27:22 +0530220vendor.voice.playback.conc.disabled=true\
221vendor.voice.record.conc.disabled=false\
222vendor.voice.voip.conc.disabled=true
Ashish Jain1221b522016-03-30 15:09:20 +0530223
224#Decides the audio fallback path during voice call,
225#deep-buffer and fast are the two allowed fallback paths now.
226PRODUCT_PROPERTY_OVERRIDES += \
Ramjee Singh63839662017-05-10 15:27:22 +0530227vendor.voice.conc.fallbackpath=deep-buffer
Ashish Jain1221b522016-03-30 15:09:20 +0530228
229#Disable speaker protection by default
230PRODUCT_PROPERTY_OVERRIDES += \
Ramjee Singh63839662017-05-10 15:27:22 +0530231persist.vendor.audio.speaker.prot.enable=false
Ashish Jain1221b522016-03-30 15:09:20 +0530232
233#Enable HW AAC Encoder by default
234PRODUCT_PROPERTY_OVERRIDES += \
Ramjee Singh63839662017-05-10 15:27:22 +0530235vendor.audio.hw.aac.encoder=true
Satya Krishna Pindiprolid2837402016-08-01 14:16:34 +0530236
237#flac sw decoder 24 bit decode capability
238PRODUCT_PROPERTY_OVERRIDES += \
Ramjee Singh63839662017-05-10 15:27:22 +0530239vendor.audio.flac.sw.decoder.24bit=true
Bharat Pawar50185962017-03-30 14:39:22 +0530240
Satya Krishna Pindiproli650ea152017-09-13 17:10:38 +0530241#Set AudioFlinger client heap size
242PRODUCT_PROPERTY_OVERRIDES += \
243ro.af.client_heap_size_kbyte=7168
244
Ramjee Singh43d58b22018-07-26 14:59:19 +0530245PRODUCT_PROPERTY_OVERRIDES += \
246persist.vendor.audio.hw.binder.size_kbyte=1024
247
Bharat Pawar50185962017-03-30 14:39:22 +0530248# for HIDL related packages
249PRODUCT_PACKAGES += \
250 android.hardware.audio@2.0-service \
251 android.hardware.audio@2.0-impl \
252 android.hardware.audio.effect@2.0-impl \
Revathi Uddaraju16db00d2018-07-11 11:45:36 +0530253 android.hardware.soundtrigger@2.1-impl \
Lakshman Chaluvaraju6090b002018-07-25 18:09:15 +0530254 android.hardware.audio@4.0 \
255 android.hardware.audio.common@4.0 \
256 android.hardware.audio.common@4.0-util \
257 android.hardware.audio@4.0-impl \
258 android.hardware.audio.effect@4.0 \
259 android.hardware.audio.effect@4.0-impl
Ramjee Singhaccff592019-07-29 14:32:33 +0530260
261# enable audio hidl hal 5.0 for sdk rev 29 and above
262ifeq ($(shell expr $(PLATFORM_SDK_VERSION) \>= 29), 1)
263PRODUCT_PACKAGES += \
264 android.hardware.audio@5.0 \
265 android.hardware.audio.common@5.0 \
266 android.hardware.audio.common@5.0-util \
267 android.hardware.audio@5.0-impl \
268 android.hardware.audio.effect@5.0 \
269 android.hardware.audio.effect@5.0-impl
270endif