blob: 9bb0ab7284e84e6f0759eda137c93d0ed6656258 [file] [log] [blame]
Xiaoyu Yea11fdf82017-11-21 16:49:32 -08001#BOARD_USES_GENERIC_AUDIO := true
2#
3#AUDIO_FEATURE_FLAGS
4BOARD_USES_ALSA_AUDIO := true
5TARGET_USES_AOSP_FOR_AUDIO := true
6
7ifneq ($(TARGET_USES_AOSP_FOR_AUDIO), true)
8USE_CUSTOM_AUDIO_POLICY := 1
9AUDIO_FEATURE_ENABLED_COMPRESS_CAPTURE := false
10AUDIO_FEATURE_ENABLED_COMPRESS_VOIP := false
11AUDIO_FEATURE_ENABLED_DYNAMIC_ECNS := false
12AUDIO_FEATURE_ENABLED_EXTN_FORMATS := false
13AUDIO_FEATURE_ENABLED_EXTN_FLAC_DECODER := false
14AUDIO_FEATURE_ENABLED_EXTN_RESAMPLER := true
15AUDIO_FEATURE_ENABLED_FM_POWER_OPT := true
16AUDIO_FEATURE_ENABLED_HDMI_SPK := true
17AUDIO_FEATURE_ENABLED_PCM_OFFLOAD := false
18AUDIO_FEATURE_ENABLED_PCM_OFFLOAD_24 := false
19AUDIO_FEATURE_ENABLED_FLAC_OFFLOAD := false
20AUDIO_FEATURE_ENABLED_VORBIS_OFFLOAD := false
21AUDIO_FEATURE_ENABLED_WMA_OFFLOAD := false
22AUDIO_FEATURE_ENABLED_ALAC_OFFLOAD := false
23AUDIO_FEATURE_ENABLED_APE_OFFLOAD := false
24AUDIO_FEATURE_ENABLED_AAC_ADTS_OFFLOAD := false
25AUDIO_FEATURE_ENABLED_PROXY_DEVICE := true
26AUDIO_FEATURE_ENABLED_SSR := true
27AUDIO_FEATURE_ENABLED_DTS_EAGLE := false
28BOARD_USES_SRS_TRUEMEDIA := false
29DTS_CODEC_M_ := false
30MM_AUDIO_ENABLED_SAFX := true
31AUDIO_FEATURE_ENABLED_HW_ACCELERATED_EFFECTS := false
32AUDIO_FEATURE_ENABLED_AUDIOSPHERE := true
33AUDIO_FEATURE_ENABLED_USB_TUNNEL_AUDIO := true
34AUDIO_FEATURE_ENABLED_SPLIT_A2DP := false
35AUDIO_FEATURE_ENABLED_3D_AUDIO := false
36DOLBY_ENABLE := false
37endif
38
39USE_XML_AUDIO_POLICY_CONF := 1
40BOARD_SUPPORTS_SOUND_TRIGGER := true
41AUDIO_USE_LL_AS_PRIMARY_OUTPUT := true
42AUDIO_FEATURE_ENABLED_VBAT_MONITOR := true
43AUDIO_FEATURE_ENABLED_ANC_HEADSET := true
44AUDIO_FEATURE_ENABLED_CUSTOMSTEREO := true
45AUDIO_FEATURE_ENABLED_FLUENCE := true
46AUDIO_FEATURE_ENABLED_HDMI_EDID := true
47AUDIO_FEATURE_ENABLED_HDMI_PASSTHROUGH := true
48#AUDIO_FEATURE_ENABLED_KEEP_ALIVE := true
49AUDIO_FEATURE_ENABLED_DISPLAY_PORT := true
50AUDIO_FEATURE_ENABLED_DS2_DOLBY_DAP := false
51AUDIO_FEATURE_ENABLED_HFP := true
52AUDIO_FEATURE_ENABLED_INCALL_MUSIC := false
53AUDIO_FEATURE_ENABLED_MULTI_VOICE_SESSIONS := true
54AUDIO_FEATURE_ENABLED_KPI_OPTIMIZE := true
55AUDIO_FEATURE_ENABLED_SPKR_PROTECTION := true
56AUDIO_FEATURE_ENABLED_ACDB_LICENSE := false
57AUDIO_FEATURE_ENABLED_DEV_ARBI := false
58AUDIO_FEATURE_ENABLED_DYNAMIC_LOG := true
59MM_AUDIO_ENABLED_FTM := true
60TARGET_USES_QCOM_MM_AUDIO := true
61AUDIO_FEATURE_ENABLED_SOURCE_TRACKING := true
62AUDIO_FEATURE_ENABLED_GEF_SUPPORT := true
63BOARD_SUPPORTS_QAHW := false
64AUDIO_FEATURE_ENABLED_RAS := true
65AUDIO_FEATURE_ENABLED_SND_MONITOR := true
66##AUDIO_FEATURE_FLAGS
67
68#Audio Specific device overlays
69DEVICE_PACKAGE_OVERLAYS += hardware/qcom/audio/configs/common/overlay
70
71PRODUCT_COPY_FILES += \
72 hardware/qcom/audio/configs/msmnile/audio_output_policy.conf:$(TARGET_COPY_OUT_VENDOR)/etc/audio_output_policy.conf \
73 hardware/qcom/audio/configs/msmnile/audio_effects.conf:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.conf \
74 hardware/qcom/audio/configs/msmnile/mixer_paths_tavil.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_tavil.xml \
75 hardware/qcom/audio/configs/msmnile/audio_tuning_mixer_tavil.txt:$(TARGET_COPY_OUT_VENDOR)/etc/audio_tuning_mixer_tavil.txt \
76 hardware/qcom/audio/configs/msmnile/sound_trigger_mixer_paths_wcd9340.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_mixer_paths_wcd9340.xml \
77 hardware/qcom/audio/configs/msmnile/sound_trigger_platform_info.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_platform_info.xml \
78 hardware/qcom/audio/configs/msmnile/graphite_ipc_platform_info.xml:$(TARGET_COPY_OUT_VENDOR)/etc/graphite_ipc_platform_info.xml \
79 hardware/qcom/audio/configs/msmnile/audio_platform_info.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_platform_info.xml \
80 hardware/qcom/audio/configs/msmnile/mixer_paths_pahu.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_pahu.xml \
81 hardware/qcom/audio/configs/msmnile/sound_trigger_mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_mixer_paths.xml
82
83#XML Audio configuration files
84ifneq ($(TARGET_USES_AOSP_FOR_AUDIO), true)
85PRODUCT_COPY_FILES += \
86 $(TOPDIR)hardware/qcom/audio/configs/msmnile/audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio/audio_policy_configuration.xml
87endif
88PRODUCT_COPY_FILES += \
89 $(TOPDIR)hardware/qcom/audio/configs/common/audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration.xml \
90 $(TOPDIR)frameworks/av/services/audiopolicy/config/a2dp_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/a2dp_audio_policy_configuration.xml \
91 $(TOPDIR)frameworks/av/services/audiopolicy/config/audio_policy_volumes.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_volumes.xml \
92 $(TOPDIR)frameworks/av/services/audiopolicy/config/default_volume_tables.xml:$(TARGET_COPY_OUT_VENDOR)/etc/default_volume_tables.xml \
93 $(TOPDIR)frameworks/av/services/audiopolicy/config/r_submix_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/r_submix_audio_policy_configuration.xml \
94 $(TOPDIR)frameworks/av/services/audiopolicy/config/usb_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/usb_audio_policy_configuration.xml
95
96# Listen configuration file
97PRODUCT_COPY_FILES += \
98 hardware/qcom/audio/configs/msmnile/listen_platform_info.xml:$(TARGET_COPY_OUT_VENDOR)/etc/listen_platform_info.xml
99
100# Reduce client buffer size for fast audio output tracks
101PRODUCT_PROPERTY_OVERRIDES += \
102 af.fast_track_multiplier=1
103
104# Low latency audio buffer size in frames
105PRODUCT_PROPERTY_OVERRIDES += \
106 vendor.audio_hal.period_size=192
107
108##fluencetype can be "fluence" or "fluencepro" or "none"
109PRODUCT_PROPERTY_OVERRIDES += \
110ro.vendor.audio.sdk.fluencetype=none\
111persist.vendor.audio.fluence.voicecall=true\
112persist.vendor.audio.fluence.voicerec=false\
113persist.vendor.audio.fluence.speaker=true
114
115#disable tunnel encoding
116PRODUCT_PROPERTY_OVERRIDES += \
117vendor.audio.tunnel.encode=false
118
119#Disable RAS Feature by default
120PRODUCT_PROPERTY_OVERRIDES += \
121persist.vendor.audio.ras.enabled=false
122
123#Buffer size in kbytes for compress offload playback
124PRODUCT_PROPERTY_OVERRIDES += \
125vendor.audio.offload.buffer.size.kb=32
126
127#Enable offload audio video playback by default
128PRODUCT_PROPERTY_OVERRIDES += \
129audio.offload.video=true
130
131#Enable audio track offload by default
132PRODUCT_PROPERTY_OVERRIDES += \
133vendor.audio.offload.track.enable=true
134
135#Enable music through deep buffer
136PRODUCT_PROPERTY_OVERRIDES += \
137audio.deep_buffer.media=true
138
139#enable voice path for PCM VoIP by default
140PRODUCT_PROPERTY_OVERRIDES += \
141vendor.voice.path.for.pcm.voip=true
142
143#Enable multi channel aac through offload
144PRODUCT_PROPERTY_OVERRIDES += \
145vendor.audio.offload.multiaac.enable=true
146
147#Enable DS2, Hardbypass feature for Dolby
148PRODUCT_PROPERTY_OVERRIDES += \
149vendor.audio.dolby.ds2.enabled=false\
150vendor.audio.dolby.ds2.hardbypass=false
151
152#Disable Multiple offload sesison
153PRODUCT_PROPERTY_OVERRIDES += \
154vendor.audio.offload.multiple.enabled=false
155
156#Disable Compress passthrough playback
157PRODUCT_PROPERTY_OVERRIDES += \
158vendor.audio.offload.passthrough=false
159
160#Disable surround sound recording
161PRODUCT_PROPERTY_OVERRIDES += \
162ro.vendor.audio.sdk.ssr=false
163
164#enable dsp gapless mode by default
165PRODUCT_PROPERTY_OVERRIDES += \
166vendor.audio.offload.gapless.enabled=true
167
168#enable pbe effects
169PRODUCT_PROPERTY_OVERRIDES += \
170vendor.audio.safx.pbe.enabled=true
171
172#parser input buffer size(256kb) in byte stream mode
173PRODUCT_PROPERTY_OVERRIDES += \
174vendor.audio.parser.ip.buffer.size=262144
175
176#flac sw decoder 24 bit decode capability
177PRODUCT_PROPERTY_OVERRIDES += \
178vendor.audio.flac.sw.decoder.24bit=true
179
180#split a2dp DSP supported encoder list
181PRODUCT_PROPERTY_OVERRIDES += \
182persist.vendor.bt.a2dp_offload_cap=sbc-aptx-aptxtws-aptxhd-aac
183
184#enable software decoders for ALAC and APE
185PRODUCT_PROPERTY_OVERRIDES += \
186vendor.audio.use.sw.alac.decoder=true
187PRODUCT_PROPERTY_OVERRIDES += \
188vendor.audio.use.sw.ape.decoder=true
189
190#enable hw aac encoder by default
191PRODUCT_PROPERTY_OVERRIDES += \
192vendor.audio.hw.aac.encoder=true
193
194#Disable FM a2dp concurrency
195PRODUCT_PROPERTY_OVERRIDES += \
196vendor.fm.a2dp.conc.disabled=true
197
198#audio becoming noisy intent broadcast delay
199PRODUCT_PROPERTY_OVERRIDES += \
200vendor.audio.noisy.broadcast.delay=600
201
202#offload pausetime out duration to 3 secs to inline with other outputs
203PRODUCT_PROPERTY_OVERRIDES += \
204vendor.audio.offload.pstimeout.secs=3
205
206#Set AudioFlinger client heap size
207PRODUCT_PROPERTY_OVERRIDES += \
208ro.af.client_heap_size_kbyte=7168
209
210#Set HAL buffer size to samples equal to 3 ms
211PRODUCT_PROPERTY_OVERRIDES += \
212vendor.audio_hal.in_period_size=144
213
214#Set HAL buffer size to 3 ms
215PRODUCT_PROPERTY_OVERRIDES += \
216vendor.audio_hal.period_multiplier=3
217
218#ADM Buffering size in ms
219PRODUCT_PROPERTY_OVERRIDES += \
220vendor.audio.adm.buffering.ms=2
221
222# for HIDL related packages
223PRODUCT_PACKAGES += \
224 android.hardware.audio@2.0-service \
225 android.hardware.audio@2.0-impl \
226 android.hardware.audio.effect@2.0-impl \
227 android.hardware.soundtrigger@2.0-impl