blob: a0ae641adff98467be92c9dea45918cf661761e5 [file] [log] [blame]
Dhananjay Kumard3ab9f42016-07-20 17:05:47 +05301#BOARD_USES_GENERIC_AUDIO := true
2#
3#AUDIO_FEATURE_FLAGS
4BOARD_USES_ALSA_AUDIO := true
Dhananjay Kumar05f20b12017-03-31 03:46:42 +05305
6ifneq ($(TARGET_USES_AOSP_FOR_AUDIO), true)
Dhananjay Kumard3ab9f42016-07-20 17:05:47 +05307USE_CUSTOM_AUDIO_POLICY := 1
Dhananjay Kumard3ab9f42016-07-20 17:05:47 +05308AUDIO_FEATURE_ENABLED_COMPRESS_CAPTURE := false
9AUDIO_FEATURE_ENABLED_COMPRESS_VOIP := true
Dhananjay Kumard3ab9f42016-07-20 17:05:47 +053010AUDIO_FEATURE_ENABLED_EXTN_FORMATS := true
11AUDIO_FEATURE_ENABLED_EXTN_FLAC_DECODER := true
12AUDIO_FEATURE_ENABLED_EXTN_RESAMPLER := true
13AUDIO_FEATURE_ENABLED_FM_POWER_OPT := true
Dhananjay Kumard3ab9f42016-07-20 17:05:47 +053014AUDIO_FEATURE_ENABLED_HDMI_SPK := true
Dhananjay Kumard3ab9f42016-07-20 17:05:47 +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
22AUDIO_FEATURE_ENABLED_AAC_ADTS_OFFLOAD := true
Naresh Tanniru01223b92016-11-01 13:50:57 +053023AUDIO_FEATURE_ENABLED_PROXY_DEVICE := true
Dhananjay Kumard3ab9f42016-07-20 17:05:47 +053024AUDIO_FEATURE_ENABLED_SSR := true
Dhananjay Kumard3ab9f42016-07-20 17:05:47 +053025AUDIO_FEATURE_ENABLED_DTS_EAGLE := false
26BOARD_USES_SRS_TRUEMEDIA := false
27DTS_CODEC_M_ := false
Dhananjay Kumard3ab9f42016-07-20 17:05:47 +053028MM_AUDIO_ENABLED_SAFX := true
Dhananjay Kumard3ab9f42016-07-20 17:05:47 +053029AUDIO_FEATURE_ENABLED_HW_ACCELERATED_EFFECTS := false
Dhananjay Kumard3ab9f42016-07-20 17:05:47 +053030AUDIO_FEATURE_ENABLED_AUDIOSPHERE := true
Naresh Tanniru01223b92016-11-01 13:50:57 +053031AUDIO_FEATURE_ENABLED_USB_TUNNEL_AUDIO := true
Satya Krishna Pindiprolif7d65712017-04-26 14:24:53 +053032AUDIO_FEATURE_ENABLED_SPLIT_A2DP := true
Dhananjay Kumar29b894e2017-04-05 02:41:14 +053033AUDIO_FEATURE_ENABLED_3D_AUDIO := false
Naresh Tanniru2034f1b2017-04-25 16:21:50 +053034AUDIO_FEATURE_ENABLED_VOICE_PRINT := false
35USE_LEGACY_AUDIO_DAEMON := false
36USE_LEGACY_AUDIO_MEASUREMENT := false
Dhananjay Kumar29b894e2017-04-05 02:41:14 +053037DOLBY_ENABLE := false
Dhananjay Kumar05f20b12017-03-31 03:46:42 +053038endif
39
40USE_XML_AUDIO_POLICY_CONF := 1
41BOARD_SUPPORTS_SOUND_TRIGGER := true
42AUDIO_USE_LL_AS_PRIMARY_OUTPUT := true
43AUDIO_FEATURE_ENABLED_HIFI_AUDIO := true
44AUDIO_FEATURE_ENABLED_VBAT_MONITOR := true
45AUDIO_FEATURE_ENABLED_ANC_HEADSET := true
Naresh Tanniru2034f1b2017-04-25 16:21:50 +053046AUDIO_FEATURE_ENABLED_CUSTOMSTEREO := true
Dhananjay Kumar05f20b12017-03-31 03:46:42 +053047AUDIO_FEATURE_ENABLED_FLUENCE := true
Naresh Tanniru2034f1b2017-04-25 16:21:50 +053048AUDIO_FEATURE_ENABLED_HDMI_EDID := true
49AUDIO_FEATURE_ENABLED_HDMI_PASSTHROUGH := true
50#AUDIO_FEATURE_ENABLED_KEEP_ALIVE := true
51AUDIO_FEATURE_ENABLED_DISPLAY_PORT := true
52AUDIO_FEATURE_ENABLED_DS2_DOLBY_DAP := true
53AUDIO_FEATURE_ENABLED_HFP := true
Dhananjay Kumar05f20b12017-03-31 03:46:42 +053054AUDIO_FEATURE_ENABLED_INCALL_MUSIC := false
Naresh Tanniru2034f1b2017-04-25 16:21:50 +053055AUDIO_FEATURE_ENABLED_MULTI_VOICE_SESSIONS := true
Dhananjay Kumar05f20b12017-03-31 03:46:42 +053056AUDIO_FEATURE_ENABLED_KPI_OPTIMIZE := true
57AUDIO_FEATURE_ENABLED_SPKR_PROTECTION := true
58AUDIO_FEATURE_ENABLED_ACDB_LICENSE := true
59AUDIO_FEATURE_ENABLED_DEV_ARBI := false
60MM_AUDIO_ENABLED_FTM := true
61TARGET_USES_QCOM_MM_AUDIO := true
Naresh Tanniru2034f1b2017-04-25 16:21:50 +053062AUDIO_FEATURE_ENABLED_SOURCE_TRACKING := true
63AUDIO_FEATURE_ENABLED_GEF_SUPPORT := true
Rohit Kumarbe6935f2017-01-20 14:58:34 +053064AUDIO_FEATURE_ENABLED_RAS := true
Dhananjay Kumard3ab9f42016-07-20 17:05:47 +053065##AUDIO_FEATURE_FLAGS
66
67#Audio Specific device overlays
68DEVICE_PACKAGE_OVERLAYS += hardware/qcom/audio/configs/common/overlay
69
70# Audio configuration file
vivek mehta02a52022017-01-27 15:36:19 -080071ifeq ($(TARGET_USES_AOSP_FOR_AUDIO), true)
Dhananjay Kumard3ab9f42016-07-20 17:05:47 +053072PRODUCT_COPY_FILES += \
73 device/qcom/common/media/audio_policy.conf:system/etc/audio_policy.conf
74else
75PRODUCT_COPY_FILES += \
Arusha Goyalfda29152016-12-26 10:53:39 +053076 hardware/qcom/audio/configs/sdm660/audio_policy.conf:system/etc/audio_policy.conf
Dhananjay Kumard3ab9f42016-07-20 17:05:47 +053077endif
78
79PRODUCT_COPY_FILES += \
David Ng06ccd872017-03-15 11:39:33 -070080 hardware/qcom/audio/configs/sdm660/audio_output_policy.conf:$(TARGET_COPY_OUT_VENDOR)/etc/audio_output_policy.conf \
81 hardware/qcom/audio/configs/sdm660/audio_effects.conf:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.conf \
Arusha Goyalfda29152016-12-26 10:53:39 +053082 hardware/qcom/audio/configs/sdm660/mixer_paths.xml:system/etc/mixer_paths.xml \
Niranjan Reddy Dumbala3a336792017-01-19 23:41:27 +053083 hardware/qcom/audio/configs/sdm660/mixer_paths_mtp.xml:system/etc/mixer_paths_mtp.xml \
Arusha Goyalfda29152016-12-26 10:53:39 +053084 hardware/qcom/audio/configs/sdm660/mixer_paths_wcd9335.xml:system/etc/mixer_paths_wcd9335.xml \
85 hardware/qcom/audio/configs/sdm660/mixer_paths_wcd9340.xml:system/etc/mixer_paths_wcd9340.xml \
86 hardware/qcom/audio/configs/sdm660/mixer_paths_wcd9326.xml:system/etc/mixer_paths_wcd9326.xml \
Walter Yanga5cfce42017-01-03 01:22:38 -080087 hardware/qcom/audio/configs/sdm660/mixer_paths_skus.xml:system/etc/mixer_paths_skus.xml \
Walter Yange4c79802017-02-13 20:55:35 +080088 hardware/qcom/audio/configs/sdm660/mixer_paths_skush.xml:system/etc/mixer_paths_skush.xml \
Arusha Goyalfda29152016-12-26 10:53:39 +053089 hardware/qcom/audio/configs/sdm660/mixer_paths_i2s.xml:system/etc/mixer_paths_i2s.xml \
Srinivas Reddy Julakanti744d9302017-02-13 12:25:37 -080090 hardware/qcom/audio/configs/sdm660/audio_tuning_mixer.txt:system/etc/audio_tuning_mixer.txt \
91 hardware/qcom/audio/configs/sdm660/audio_tuning_mixer_tavil.txt:system/etc/audio_tuning_mixer_tavil.txt \
Rohit Kumar29ef0a62017-04-14 15:51:50 +053092 hardware/qcom/audio/configs/sdm660/audio_tuning_mixer_tasha.txt:system/etc/audio_tuning_mixer_tasha.txt \
Arusha Goyalfda29152016-12-26 10:53:39 +053093 hardware/qcom/audio/configs/sdm660/audio_platform_info_extcodec.xml:system/etc/audio_platform_info_extcodec.xml \
94 hardware/qcom/audio/configs/sdm660/audio_platform_info.xml:system/etc/audio_platform_info.xml \
Walter Yange4c79802017-02-13 20:55:35 +080095 hardware/qcom/audio/configs/sdm660/audio_platform_info_skush.xml:system/etc/audio_platform_info_skush.xml \
Arusha Goyalfda29152016-12-26 10:53:39 +053096 hardware/qcom/audio/configs/sdm660/sound_trigger_mixer_paths.xml:system/etc/sound_trigger_mixer_paths.xml \
97 hardware/qcom/audio/configs/sdm660/sound_trigger_mixer_paths_wcd9330.xml:system/etc/sound_trigger_mixer_paths_wcd9330.xml \
Chaithanya Krishna Bacharaju9282ba32017-02-07 09:42:11 +053098 hardware/qcom/audio/configs/sdm660/sound_trigger_mixer_paths_wcd9335.xml:system/etc/sound_trigger_mixer_paths_wcd9335.xml \
Arusha Goyalfda29152016-12-26 10:53:39 +053099 hardware/qcom/audio/configs/sdm660/sound_trigger_mixer_paths_wcd9340.xml:system/etc/sound_trigger_mixer_paths_wcd9340.xml \
100 hardware/qcom/audio/configs/sdm660/sound_trigger_platform_info.xml:system/etc/sound_trigger_platform_info.xml \
101 hardware/qcom/audio/configs/sdm660/graphite_ipc_platform_info.xml:system/etc/graphite_ipc_platform_info.xml
Dhananjay Kumard3ab9f42016-07-20 17:05:47 +0530102
103#XML Audio configuration files
104ifeq ($(USE_XML_AUDIO_POLICY_CONF), 1)
vivek mehta02a52022017-01-27 15:36:19 -0800105ifeq ($(TARGET_USES_AOSP_FOR_AUDIO), true)
Dhananjay Kumard3ab9f42016-07-20 17:05:47 +0530106PRODUCT_COPY_FILES += \
107 $(TOPDIR)hardware/qcom/audio/configs/common/audio_policy_configuration.xml:/system/etc/audio_policy_configuration.xml
108else
109PRODUCT_COPY_FILES += \
Arusha Goyalfda29152016-12-26 10:53:39 +0530110 $(TOPDIR)hardware/qcom/audio/configs/sdm660/audio_policy_configuration.xml:system/etc/audio_policy_configuration.xml
Dhananjay Kumard3ab9f42016-07-20 17:05:47 +0530111endif
112PRODUCT_COPY_FILES += \
113 $(TOPDIR)frameworks/av/services/audiopolicy/config/a2dp_audio_policy_configuration.xml:/system/etc/a2dp_audio_policy_configuration.xml \
114 $(TOPDIR)frameworks/av/services/audiopolicy/config/audio_policy_volumes.xml:/system/etc/audio_policy_volumes.xml \
115 $(TOPDIR)frameworks/av/services/audiopolicy/config/default_volume_tables.xml:/system/etc/default_volume_tables.xml \
116 $(TOPDIR)frameworks/av/services/audiopolicy/config/r_submix_audio_policy_configuration.xml:/system/etc/r_submix_audio_policy_configuration.xml \
117 $(TOPDIR)frameworks/av/services/audiopolicy/config/usb_audio_policy_configuration.xml:/system/etc/usb_audio_policy_configuration.xml
118endif
119
120# Listen configuration file
121PRODUCT_COPY_FILES += \
Arusha Goyalfda29152016-12-26 10:53:39 +0530122 hardware/qcom/audio/configs/sdm660/listen_platform_info.xml:system/etc/listen_platform_info.xml
Dhananjay Kumard3ab9f42016-07-20 17:05:47 +0530123
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 audio_hal.period_size=192
131
132##fluencetype can be "fluence" or "fluencepro" or "none"
133PRODUCT_PROPERTY_OVERRIDES += \
134ro.qc.sdk.audio.fluencetype=none\
135persist.audio.fluence.voicecall=true\
136persist.audio.fluence.voicerec=false\
137persist.audio.fluence.speaker=true
138
139#disable tunnel encoding
140PRODUCT_PROPERTY_OVERRIDES += \
141tunnel.audio.encode=false
142
Rohit Kumarbe6935f2017-01-20 14:58:34 +0530143#Disable RAS Feature by default
144PRODUCT_PROPERTY_OVERRIDES += \
145persist.audio.ras.enabled=false
146
Dhananjay Kumard3ab9f42016-07-20 17:05:47 +0530147#Buffer size in kbytes for compress offload playback
148PRODUCT_PROPERTY_OVERRIDES += \
Ashish Jainbb44d8a2017-01-02 11:18:44 +0530149audio.offload.buffer.size.kb=64
150
151#Minimum duration for offload playback in secs
152PRODUCT_PROPERTY_OVERRIDES += \
153audio.offload.min.duration.secs=30
Dhananjay Kumard3ab9f42016-07-20 17:05:47 +0530154
155#Enable offload audio video playback by default
156PRODUCT_PROPERTY_OVERRIDES += \
157audio.offload.video=true
158
159#Enable 16 bit PCM offload by default
160PRODUCT_PROPERTY_OVERRIDES += \
161audio.offload.pcm.16bit.enable=true
162
163#Enable 24 bit PCM offload by default
164PRODUCT_PROPERTY_OVERRIDES += \
165audio.offload.pcm.24bit.enable=true
166
167#Enable audio track offload by default
168PRODUCT_PROPERTY_OVERRIDES += \
169audio.offload.track.enable=true
170
171#Enable music through deep buffer
172PRODUCT_PROPERTY_OVERRIDES += \
173audio.deep_buffer.media=true
174
Aalique Grahamece9b6d42016-10-24 11:07:13 -0700175#QC property used when calculating client heap size in audio flinger
Dhananjay Kumard3ab9f42016-07-20 17:05:47 +0530176PRODUCT_PROPERTY_OVERRIDES += \
Aalique Grahamece9b6d42016-10-24 11:07:13 -0700177audio.heap.size.multiplier=7
Dhananjay Kumard3ab9f42016-07-20 17:05:47 +0530178
179#enable voice path for PCM VoIP by default
180PRODUCT_PROPERTY_OVERRIDES += \
181use.voice.path.for.pcm.voip=true
182
183#Enable multi channel aac through offload
184PRODUCT_PROPERTY_OVERRIDES += \
185audio.offload.multiaac.enable=true
186
187#Enable DS2, Hardbypass feature for Dolby
188PRODUCT_PROPERTY_OVERRIDES += \
189audio.dolby.ds2.enabled=true\
190audio.dolby.ds2.hardbypass=true
191
192#Disable Multiple offload sesison
193PRODUCT_PROPERTY_OVERRIDES += \
194audio.offload.multiple.enabled=false
195
Garmond Leunge3e61082017-02-06 15:08:26 -0800196#Disable Compress passthrough playback
Dhananjay Kumard3ab9f42016-07-20 17:05:47 +0530197PRODUCT_PROPERTY_OVERRIDES += \
Garmond Leunge3e61082017-02-06 15:08:26 -0800198audio.offload.passthrough=false
Dhananjay Kumard3ab9f42016-07-20 17:05:47 +0530199
200#Disable surround sound recording
201PRODUCT_PROPERTY_OVERRIDES += \
202ro.qc.sdk.audio.ssr=false
203
204#enable dsp gapless mode by default
205PRODUCT_PROPERTY_OVERRIDES += \
206audio.offload.gapless.enabled=true
207
208#enable pbe effects
209PRODUCT_PROPERTY_OVERRIDES += \
210audio.safx.pbe.enabled=true
211
212#parser input buffer size(256kb) in byte stream mode
213PRODUCT_PROPERTY_OVERRIDES += \
214audio.parser.ip.buffer.size=262144
215
Naresh Tanniru01223b92016-11-01 13:50:57 +0530216#flac sw decoder 24 bit decode capability
217PRODUCT_PROPERTY_OVERRIDES += \
218flac.sw.decoder.24bit.support=true
219
220#split a2dp DSP supported encoder list
221PRODUCT_PROPERTY_OVERRIDES += \
Naresh Tannirued694c82017-02-07 17:01:28 +0530222persist.bt.a2dp_offload_cap=sbc-aptx-aptxhd-aac
Naresh Tanniru01223b92016-11-01 13:50:57 +0530223
224#enable software decoders for ALAC and APE
225PRODUCT_PROPERTY_OVERRIDES += \
226use.qti.sw.alac.decoder=true
227PRODUCT_PROPERTY_OVERRIDES += \
228use.qti.sw.ape.decoder=true
229
230#enable hw aac encoder by default
231PRODUCT_PROPERTY_OVERRIDES += \
232qcom.hw.aac.encoder=true
233
234#Disable FM a2dp concurrency
235PRODUCT_PROPERTY_OVERRIDES += \
236fm.a2dp.conc.disabled=true
237
238#audio becoming noisy intent broadcast delay
239PRODUCT_PROPERTY_OVERRIDES += \
240audio.noisy.broadcast.delay=600
241
242#Enable HIFI audio support for internal codec
243PRODUCT_PROPERTY_OVERRIDES += \
244persist.audio.hifi.int_codec=true
Naresh Tanniruec59ba32016-12-21 19:11:50 +0530245
246#offload pausetime out duration to 3 secs to inline with other outputs
247PRODUCT_PROPERTY_OVERRIDES += \
248audio.offload.pstimeout.secs=3
Dhananjay Kumar05f20b12017-03-31 03:46:42 +0530249
250# for HIDL related packages
251PRODUCT_PACKAGES += \
252 android.hardware.audio@2.0-service \
253 android.hardware.audio@2.0-impl \
254 android.hardware.audio.effect@2.0-impl \
255 android.hardware.soundtrigger@2.0-impl