blob: 5496d34d73f31a8f0d215d2c9c247cfbd1641953 [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 +05305TARGET_USES_AOSP_FOR_AUDIO:=true
6
7ifneq ($(TARGET_USES_AOSP_FOR_AUDIO), true)
Dhananjay Kumard3ab9f42016-07-20 17:05:47 +05308USE_CUSTOM_AUDIO_POLICY := 1
Dhananjay Kumard3ab9f42016-07-20 17:05:47 +05309AUDIO_FEATURE_ENABLED_COMPRESS_CAPTURE := false
10AUDIO_FEATURE_ENABLED_COMPRESS_VOIP := true
11AUDIO_FEATURE_ENABLED_CUSTOMSTEREO := true
12AUDIO_FEATURE_ENABLED_EXTN_FORMATS := true
13AUDIO_FEATURE_ENABLED_EXTN_FLAC_DECODER := true
14AUDIO_FEATURE_ENABLED_EXTN_RESAMPLER := true
15AUDIO_FEATURE_ENABLED_FM_POWER_OPT := true
Dhananjay Kumard3ab9f42016-07-20 17:05:47 +053016AUDIO_FEATURE_ENABLED_HDMI_SPK := true
17AUDIO_FEATURE_ENABLED_HDMI_EDID := true
Naresh Tanniru01223b92016-11-01 13:50:57 +053018AUDIO_FEATURE_ENABLED_HDMI_PASSTHROUGH := true
19#AUDIO_FEATURE_ENABLED_KEEP_ALIVE := true
20AUDIO_FEATURE_ENABLED_DISPLAY_PORT := true
Dhananjay Kumard3ab9f42016-07-20 17:05:47 +053021AUDIO_FEATURE_ENABLED_MULTI_VOICE_SESSIONS := true
22AUDIO_FEATURE_ENABLED_PCM_OFFLOAD := true
23AUDIO_FEATURE_ENABLED_PCM_OFFLOAD_24 := true
24AUDIO_FEATURE_ENABLED_FLAC_OFFLOAD := true
25AUDIO_FEATURE_ENABLED_VORBIS_OFFLOAD := true
26AUDIO_FEATURE_ENABLED_WMA_OFFLOAD := true
27AUDIO_FEATURE_ENABLED_ALAC_OFFLOAD := true
28AUDIO_FEATURE_ENABLED_APE_OFFLOAD := true
29AUDIO_FEATURE_ENABLED_AAC_ADTS_OFFLOAD := true
Naresh Tanniru01223b92016-11-01 13:50:57 +053030AUDIO_FEATURE_ENABLED_PROXY_DEVICE := true
Dhananjay Kumard3ab9f42016-07-20 17:05:47 +053031AUDIO_FEATURE_ENABLED_SSR := true
Dhananjay Kumar05f20b12017-03-31 03:46:42 +053032AUDIO_FEATURE_ENABLED_DS2_DOLBY_DAP := true
33AUDIO_FEATURE_ENABLED_HFP := true
Dhananjay Kumard3ab9f42016-07-20 17:05:47 +053034AUDIO_FEATURE_ENABLED_DTS_EAGLE := false
35BOARD_USES_SRS_TRUEMEDIA := false
36DTS_CODEC_M_ := false
Dhananjay Kumard3ab9f42016-07-20 17:05:47 +053037MM_AUDIO_ENABLED_SAFX := true
Dhananjay Kumard3ab9f42016-07-20 17:05:47 +053038AUDIO_FEATURE_ENABLED_HW_ACCELERATED_EFFECTS := false
Dhananjay Kumard3ab9f42016-07-20 17:05:47 +053039AUDIO_FEATURE_ENABLED_SOURCE_TRACKING := true
40AUDIO_FEATURE_ENABLED_AUDIOSPHERE := true
Naresh Tanniru01223b92016-11-01 13:50:57 +053041AUDIO_FEATURE_ENABLED_GEF_SUPPORT := true
42AUDIO_FEATURE_ENABLED_USB_TUNNEL_AUDIO := true
43AUDIO_FEATURE_ENABLED_SPLIT_A2DP := true
Dhananjay Kumar05f20b12017-03-31 03:46:42 +053044AUDIO_FEATURE_ENABLED_3D_AUDIO := true
45endif
46
47USE_XML_AUDIO_POLICY_CONF := 1
48BOARD_SUPPORTS_SOUND_TRIGGER := true
49AUDIO_USE_LL_AS_PRIMARY_OUTPUT := true
50AUDIO_FEATURE_ENABLED_HIFI_AUDIO := true
51AUDIO_FEATURE_ENABLED_VBAT_MONITOR := true
52AUDIO_FEATURE_ENABLED_ANC_HEADSET := true
53AUDIO_FEATURE_ENABLED_FLUENCE := true
54AUDIO_FEATURE_ENABLED_INCALL_MUSIC := false
55AUDIO_FEATURE_ENABLED_KPI_OPTIMIZE := true
56AUDIO_FEATURE_ENABLED_SPKR_PROTECTION := true
57AUDIO_FEATURE_ENABLED_ACDB_LICENSE := true
58AUDIO_FEATURE_ENABLED_DEV_ARBI := false
59MM_AUDIO_ENABLED_FTM := true
60TARGET_USES_QCOM_MM_AUDIO := true
Rohit Kumarbe6935f2017-01-20 14:58:34 +053061AUDIO_FEATURE_ENABLED_RAS := true
Dhananjay Kumard3ab9f42016-07-20 17:05:47 +053062##AUDIO_FEATURE_FLAGS
63
64#Audio Specific device overlays
65DEVICE_PACKAGE_OVERLAYS += hardware/qcom/audio/configs/common/overlay
66
67# Audio configuration file
vivek mehta02a52022017-01-27 15:36:19 -080068ifeq ($(TARGET_USES_AOSP_FOR_AUDIO), true)
Dhananjay Kumard3ab9f42016-07-20 17:05:47 +053069PRODUCT_COPY_FILES += \
70 device/qcom/common/media/audio_policy.conf:system/etc/audio_policy.conf
71else
72PRODUCT_COPY_FILES += \
Arusha Goyalfda29152016-12-26 10:53:39 +053073 hardware/qcom/audio/configs/sdm660/audio_policy.conf:system/etc/audio_policy.conf
Dhananjay Kumard3ab9f42016-07-20 17:05:47 +053074endif
75
76PRODUCT_COPY_FILES += \
David Ng06ccd872017-03-15 11:39:33 -070077 hardware/qcom/audio/configs/sdm660/audio_output_policy.conf:$(TARGET_COPY_OUT_VENDOR)/etc/audio_output_policy.conf \
78 hardware/qcom/audio/configs/sdm660/audio_effects.conf:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.conf \
Arusha Goyalfda29152016-12-26 10:53:39 +053079 hardware/qcom/audio/configs/sdm660/mixer_paths.xml:system/etc/mixer_paths.xml \
Niranjan Reddy Dumbala3a336792017-01-19 23:41:27 +053080 hardware/qcom/audio/configs/sdm660/mixer_paths_mtp.xml:system/etc/mixer_paths_mtp.xml \
Arusha Goyalfda29152016-12-26 10:53:39 +053081 hardware/qcom/audio/configs/sdm660/mixer_paths_wcd9335.xml:system/etc/mixer_paths_wcd9335.xml \
82 hardware/qcom/audio/configs/sdm660/mixer_paths_wcd9340.xml:system/etc/mixer_paths_wcd9340.xml \
83 hardware/qcom/audio/configs/sdm660/mixer_paths_wcd9326.xml:system/etc/mixer_paths_wcd9326.xml \
Walter Yanga5cfce42017-01-03 01:22:38 -080084 hardware/qcom/audio/configs/sdm660/mixer_paths_skus.xml:system/etc/mixer_paths_skus.xml \
Walter Yange4c79802017-02-13 20:55:35 +080085 hardware/qcom/audio/configs/sdm660/mixer_paths_skush.xml:system/etc/mixer_paths_skush.xml \
Arusha Goyalfda29152016-12-26 10:53:39 +053086 hardware/qcom/audio/configs/sdm660/mixer_paths_i2s.xml:system/etc/mixer_paths_i2s.xml \
87 hardware/qcom/audio/configs/sdm660/aanc_tuning_mixer.txt:system/etc/aanc_tuning_mixer.txt \
88 hardware/qcom/audio/configs/sdm660/aanc_tuning_mixer_tavil.txt:system/etc/aanc_tuning_mixer_tavil.txt \
89 hardware/qcom/audio/configs/sdm660/audio_platform_info_extcodec.xml:system/etc/audio_platform_info_extcodec.xml \
90 hardware/qcom/audio/configs/sdm660/audio_platform_info.xml:system/etc/audio_platform_info.xml \
Walter Yange4c79802017-02-13 20:55:35 +080091 hardware/qcom/audio/configs/sdm660/audio_platform_info_skush.xml:system/etc/audio_platform_info_skush.xml \
Arusha Goyalfda29152016-12-26 10:53:39 +053092 hardware/qcom/audio/configs/sdm660/sound_trigger_mixer_paths.xml:system/etc/sound_trigger_mixer_paths.xml \
93 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 +053094 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 +053095 hardware/qcom/audio/configs/sdm660/sound_trigger_mixer_paths_wcd9340.xml:system/etc/sound_trigger_mixer_paths_wcd9340.xml \
96 hardware/qcom/audio/configs/sdm660/sound_trigger_platform_info.xml:system/etc/sound_trigger_platform_info.xml \
97 hardware/qcom/audio/configs/sdm660/graphite_ipc_platform_info.xml:system/etc/graphite_ipc_platform_info.xml
Dhananjay Kumard3ab9f42016-07-20 17:05:47 +053098
99#XML Audio configuration files
100ifeq ($(USE_XML_AUDIO_POLICY_CONF), 1)
vivek mehta02a52022017-01-27 15:36:19 -0800101ifeq ($(TARGET_USES_AOSP_FOR_AUDIO), true)
Dhananjay Kumard3ab9f42016-07-20 17:05:47 +0530102PRODUCT_COPY_FILES += \
103 $(TOPDIR)hardware/qcom/audio/configs/common/audio_policy_configuration.xml:/system/etc/audio_policy_configuration.xml
104else
105PRODUCT_COPY_FILES += \
Arusha Goyalfda29152016-12-26 10:53:39 +0530106 $(TOPDIR)hardware/qcom/audio/configs/sdm660/audio_policy_configuration.xml:system/etc/audio_policy_configuration.xml
Dhananjay Kumard3ab9f42016-07-20 17:05:47 +0530107endif
108PRODUCT_COPY_FILES += \
109 $(TOPDIR)frameworks/av/services/audiopolicy/config/a2dp_audio_policy_configuration.xml:/system/etc/a2dp_audio_policy_configuration.xml \
110 $(TOPDIR)frameworks/av/services/audiopolicy/config/audio_policy_volumes.xml:/system/etc/audio_policy_volumes.xml \
111 $(TOPDIR)frameworks/av/services/audiopolicy/config/default_volume_tables.xml:/system/etc/default_volume_tables.xml \
112 $(TOPDIR)frameworks/av/services/audiopolicy/config/r_submix_audio_policy_configuration.xml:/system/etc/r_submix_audio_policy_configuration.xml \
113 $(TOPDIR)frameworks/av/services/audiopolicy/config/usb_audio_policy_configuration.xml:/system/etc/usb_audio_policy_configuration.xml
114endif
115
116# Listen configuration file
117PRODUCT_COPY_FILES += \
Arusha Goyalfda29152016-12-26 10:53:39 +0530118 hardware/qcom/audio/configs/sdm660/listen_platform_info.xml:system/etc/listen_platform_info.xml
Dhananjay Kumard3ab9f42016-07-20 17:05:47 +0530119
120# Reduce client buffer size for fast audio output tracks
121PRODUCT_PROPERTY_OVERRIDES += \
122 af.fast_track_multiplier=1
123
124# Low latency audio buffer size in frames
125PRODUCT_PROPERTY_OVERRIDES += \
126 audio_hal.period_size=192
127
128##fluencetype can be "fluence" or "fluencepro" or "none"
129PRODUCT_PROPERTY_OVERRIDES += \
130ro.qc.sdk.audio.fluencetype=none\
131persist.audio.fluence.voicecall=true\
132persist.audio.fluence.voicerec=false\
133persist.audio.fluence.speaker=true
134
135#disable tunnel encoding
136PRODUCT_PROPERTY_OVERRIDES += \
137tunnel.audio.encode=false
138
Rohit Kumarbe6935f2017-01-20 14:58:34 +0530139#Disable RAS Feature by default
140PRODUCT_PROPERTY_OVERRIDES += \
141persist.audio.ras.enabled=false
142
Dhananjay Kumard3ab9f42016-07-20 17:05:47 +0530143#Buffer size in kbytes for compress offload playback
144PRODUCT_PROPERTY_OVERRIDES += \
Ashish Jainbb44d8a2017-01-02 11:18:44 +0530145audio.offload.buffer.size.kb=64
146
147#Minimum duration for offload playback in secs
148PRODUCT_PROPERTY_OVERRIDES += \
149audio.offload.min.duration.secs=30
Dhananjay Kumard3ab9f42016-07-20 17:05:47 +0530150
151#Enable offload audio video playback by default
152PRODUCT_PROPERTY_OVERRIDES += \
153audio.offload.video=true
154
155#Enable 16 bit PCM offload by default
156PRODUCT_PROPERTY_OVERRIDES += \
157audio.offload.pcm.16bit.enable=true
158
159#Enable 24 bit PCM offload by default
160PRODUCT_PROPERTY_OVERRIDES += \
161audio.offload.pcm.24bit.enable=true
162
163#Enable audio track offload by default
164PRODUCT_PROPERTY_OVERRIDES += \
165audio.offload.track.enable=true
166
167#Enable music through deep buffer
168PRODUCT_PROPERTY_OVERRIDES += \
169audio.deep_buffer.media=true
170
Aalique Grahamece9b6d42016-10-24 11:07:13 -0700171#QC property used when calculating client heap size in audio flinger
Dhananjay Kumard3ab9f42016-07-20 17:05:47 +0530172PRODUCT_PROPERTY_OVERRIDES += \
Aalique Grahamece9b6d42016-10-24 11:07:13 -0700173audio.heap.size.multiplier=7
Dhananjay Kumard3ab9f42016-07-20 17:05:47 +0530174
175#enable voice path for PCM VoIP by default
176PRODUCT_PROPERTY_OVERRIDES += \
177use.voice.path.for.pcm.voip=true
178
179#Enable multi channel aac through offload
180PRODUCT_PROPERTY_OVERRIDES += \
181audio.offload.multiaac.enable=true
182
183#Enable DS2, Hardbypass feature for Dolby
184PRODUCT_PROPERTY_OVERRIDES += \
185audio.dolby.ds2.enabled=true\
186audio.dolby.ds2.hardbypass=true
187
188#Disable Multiple offload sesison
189PRODUCT_PROPERTY_OVERRIDES += \
190audio.offload.multiple.enabled=false
191
Garmond Leunge3e61082017-02-06 15:08:26 -0800192#Disable Compress passthrough playback
Dhananjay Kumard3ab9f42016-07-20 17:05:47 +0530193PRODUCT_PROPERTY_OVERRIDES += \
Garmond Leunge3e61082017-02-06 15:08:26 -0800194audio.offload.passthrough=false
Dhananjay Kumard3ab9f42016-07-20 17:05:47 +0530195
196#Disable surround sound recording
197PRODUCT_PROPERTY_OVERRIDES += \
198ro.qc.sdk.audio.ssr=false
199
200#enable dsp gapless mode by default
201PRODUCT_PROPERTY_OVERRIDES += \
202audio.offload.gapless.enabled=true
203
204#enable pbe effects
205PRODUCT_PROPERTY_OVERRIDES += \
206audio.safx.pbe.enabled=true
207
208#parser input buffer size(256kb) in byte stream mode
209PRODUCT_PROPERTY_OVERRIDES += \
210audio.parser.ip.buffer.size=262144
211
Naresh Tanniru01223b92016-11-01 13:50:57 +0530212#flac sw decoder 24 bit decode capability
213PRODUCT_PROPERTY_OVERRIDES += \
214flac.sw.decoder.24bit.support=true
215
216#split a2dp DSP supported encoder list
217PRODUCT_PROPERTY_OVERRIDES += \
Naresh Tannirued694c82017-02-07 17:01:28 +0530218persist.bt.a2dp_offload_cap=sbc-aptx-aptxhd-aac
Naresh Tanniru01223b92016-11-01 13:50:57 +0530219
220#enable software decoders for ALAC and APE
221PRODUCT_PROPERTY_OVERRIDES += \
222use.qti.sw.alac.decoder=true
223PRODUCT_PROPERTY_OVERRIDES += \
224use.qti.sw.ape.decoder=true
225
226#enable hw aac encoder by default
227PRODUCT_PROPERTY_OVERRIDES += \
228qcom.hw.aac.encoder=true
229
230#Disable FM a2dp concurrency
231PRODUCT_PROPERTY_OVERRIDES += \
232fm.a2dp.conc.disabled=true
233
234#audio becoming noisy intent broadcast delay
235PRODUCT_PROPERTY_OVERRIDES += \
236audio.noisy.broadcast.delay=600
237
238#Enable HIFI audio support for internal codec
239PRODUCT_PROPERTY_OVERRIDES += \
240persist.audio.hifi.int_codec=true
Naresh Tanniruec59ba32016-12-21 19:11:50 +0530241
242#offload pausetime out duration to 3 secs to inline with other outputs
243PRODUCT_PROPERTY_OVERRIDES += \
244audio.offload.pstimeout.secs=3
Dhananjay Kumar05f20b12017-03-31 03:46:42 +0530245
246# for HIDL related packages
247PRODUCT_PACKAGES += \
248 android.hardware.audio@2.0-service \
249 android.hardware.audio@2.0-impl \
250 android.hardware.audio.effect@2.0-impl \
251 android.hardware.soundtrigger@2.0-impl