mirror of
https://github.com/team-infusion-developers/android_device_samsung_msm8976-common.git
synced 2024-11-07 06:19:20 +00:00
msm8976-common: Import CAF audio policy
* Enable XML audio policy * From LA.BR.1.3.6-02810-8976.0
This commit is contained in:
parent
067107eb39
commit
155c078243
7 changed files with 365 additions and 173 deletions
|
@ -82,6 +82,7 @@ AUDIO_FEATURE_ENABLED_VOICE_CONCURRENCY := true
|
||||||
AUDIO_USE_LL_AS_PRIMARY_OUTPUT := true
|
AUDIO_USE_LL_AS_PRIMARY_OUTPUT := true
|
||||||
BOARD_USES_ALSA_AUDIO := true
|
BOARD_USES_ALSA_AUDIO := true
|
||||||
USE_CUSTOM_AUDIO_POLICY := 1
|
USE_CUSTOM_AUDIO_POLICY := 1
|
||||||
|
USE_XML_AUDIO_POLICY_CONF := 1
|
||||||
|
|
||||||
# Bluetooth
|
# Bluetooth
|
||||||
BOARD_BLUETOOTH_BDROID_BUILDCFG_INCLUDE_DIR := $(VENDOR_PATH)/bluetooth
|
BOARD_BLUETOOTH_BDROID_BUILDCFG_INCLUDE_DIR := $(VENDOR_PATH)/bluetooth
|
||||||
|
|
|
@ -1,3 +1,30 @@
|
||||||
|
# Copyright (c) 2015-2016, The Linux Foundation. All rights reserved.
|
||||||
|
#
|
||||||
|
# Redistribution and use in source and binary forms, with or without
|
||||||
|
# modification, are permitted provided that the following conditions are
|
||||||
|
# met:
|
||||||
|
# * Redistributions of source code must retain the above copyright
|
||||||
|
# notice, this list of conditions and the following disclaimer.
|
||||||
|
# * Redistributions in binary form must reproduce the above
|
||||||
|
# copyright notice, this list of conditions and the following
|
||||||
|
# disclaimer in the documentation and/or other materials provided
|
||||||
|
# with the distribution.
|
||||||
|
# * Neither the name of The Linux Foundation nor the names of its
|
||||||
|
# contributors may be used to endorse or promote products derived
|
||||||
|
# from this software without specific prior written permission.
|
||||||
|
#
|
||||||
|
# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
|
||||||
|
# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||||
|
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
|
||||||
|
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
|
||||||
|
# BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
||||||
|
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
||||||
|
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
|
||||||
|
# BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
|
||||||
|
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
|
||||||
|
# OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
|
||||||
|
# IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
|
||||||
# List of profiles for the output device session where stream is routed.
|
# List of profiles for the output device session where stream is routed.
|
||||||
# A stream opened with the inputs attributes which match the "flags" and
|
# A stream opened with the inputs attributes which match the "flags" and
|
||||||
# "formats" as specified in the profile is routed to a device at
|
# "formats" as specified in the profile is routed to a device at
|
||||||
|
@ -32,23 +59,30 @@ outputs {
|
||||||
bit_width 16
|
bit_width 16
|
||||||
app_type 69936
|
app_type 69936
|
||||||
}
|
}
|
||||||
direct_pcm {
|
direct_pcm_16 {
|
||||||
flags AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_DIRECT_PCM
|
flags AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_DIRECT_PCM
|
||||||
formats AUDIO_FORMAT_PCM_16_BIT
|
formats AUDIO_FORMAT_PCM_16_BIT|AUDIO_FORMAT_PCM_24_BIT_PACKED|AUDIO_FORMAT_PCM_8_24_BIT
|
||||||
sampling_rates 44100|48000|96000|192000
|
sampling_rates 44100|48000|96000|192000
|
||||||
bit_width 16
|
bit_width 16
|
||||||
app_type 69936
|
app_type 69936
|
||||||
}
|
}
|
||||||
|
direct_pcm_24 {
|
||||||
|
flags AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_DIRECT_PCM
|
||||||
|
formats AUDIO_FORMAT_PCM_24_BIT_PACKED|AUDIO_FORMAT_PCM_8_24_BIT
|
||||||
|
sampling_rates 44100|48000|96000|192000
|
||||||
|
bit_width 24
|
||||||
|
app_type 69940
|
||||||
|
}
|
||||||
compress_offload_16 {
|
compress_offload_16 {
|
||||||
flags AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_COMPRESS_OFFLOAD|AUDIO_OUTPUT_FLAG_NON_BLOCKING
|
flags AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_COMPRESS_OFFLOAD|AUDIO_OUTPUT_FLAG_NON_BLOCKING
|
||||||
formats AUDIO_FORMAT_MP3|AUDIO_FORMAT_AC3|AUDIO_FORMAT_E_AC3|AUDIO_FORMAT_PCM_16_BIT_OFFLOAD|AUDIO_FORMAT_PCM_24_BIT_OFFLOAD|AUDIO_FORMAT_FLAC|AUDIO_FORMAT_ALAC|AUDIO_FORMAT_APE|AUDIO_FORMAT_AAC_LC|AUDIO_FORMAT_AAC_HE_V1|AUDIO_FORMAT_AAC_HE_V2|AUDIO_FORMAT_WMA|AUDIO_FORMAT_WMA_PRO|AUDIO_FORMAT_VORBIS|AUDIO_FORMAT_AAC_ADTS_LC|AUDIO_FORMAT_AAC_ADTS_HE_V1|AUDIO_FORMAT_AAC_ADTS_HE_V2
|
formats AUDIO_FORMAT_MP3|AUDIO_FORMAT_AC3|AUDIO_FORMAT_E_AC3|AUDIO_FORMAT_FLAC|AUDIO_FORMAT_ALAC|AUDIO_FORMAT_APE|AUDIO_FORMAT_AAC_LC|AUDIO_FORMAT_AAC_HE_V1|AUDIO_FORMAT_AAC_HE_V2|AUDIO_FORMAT_WMA|AUDIO_FORMAT_WMA_PRO|AUDIO_FORMAT_VORBIS|AUDIO_FORMAT_AAC_ADTS_LC|AUDIO_FORMAT_AAC_ADTS_HE_V1|AUDIO_FORMAT_AAC_ADTS_HE_V2
|
||||||
sampling_rates 44100|48000
|
sampling_rates 44100|48000
|
||||||
bit_width 16
|
bit_width 16
|
||||||
app_type 69936
|
app_type 69936
|
||||||
}
|
}
|
||||||
compress_offload_24 {
|
compress_offload_24 {
|
||||||
flags AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_COMPRESS_OFFLOAD|AUDIO_OUTPUT_FLAG_NON_BLOCKING
|
flags AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_COMPRESS_OFFLOAD|AUDIO_OUTPUT_FLAG_NON_BLOCKING
|
||||||
formats AUDIO_FORMAT_PCM_24_BIT_OFFLOAD|AUDIO_FORMAT_FLAC|AUDIO_FORMAT_ALAC|AUDIO_FORMAT_APE|AUDIO_FORMAT_VORBIS
|
formats AUDIO_FORMAT_FLAC|AUDIO_FORMAT_ALAC|AUDIO_FORMAT_APE|AUDIO_FORMAT_VORBIS
|
||||||
sampling_rates 44100|48000|96000|192000
|
sampling_rates 44100|48000|96000|192000
|
||||||
bit_width 24
|
bit_width 24
|
||||||
app_type 69940
|
app_type 69940
|
||||||
|
|
|
@ -53,3 +53,4 @@
|
||||||
<device name="SND_DEVICE_OUT_SPEAKER" spkr_1_tz_name="wsa881x.0f" spkr_2_tz_name=""/>
|
<device name="SND_DEVICE_OUT_SPEAKER" spkr_1_tz_name="wsa881x.0f" spkr_2_tz_name=""/>
|
||||||
</tz_names>
|
</tz_names>
|
||||||
</audio_platform_info>
|
</audio_platform_info>
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||||
<!-- Copyright (c) 2015, The Linux Foundation. All rights reserved. -->
|
<!-- Copyright (c) 2015-2016, The Linux Foundation. All rights reserved. -->
|
||||||
<!-- -->
|
<!-- -->
|
||||||
<!-- Redistribution and use in source and binary forms, with or without -->
|
<!-- Redistribution and use in source and binary forms, with or without -->
|
||||||
<!-- modification, are permitted provided that the following conditions are -->
|
<!-- modification, are permitted provided that the following conditions are -->
|
||||||
|
@ -22,12 +22,22 @@
|
||||||
<!-- CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -->
|
<!-- CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -->
|
||||||
<!-- SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR -->
|
<!-- SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR -->
|
||||||
<!-- BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -->
|
<!-- BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -->
|
||||||
|
<!-- WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE -->
|
||||||
<!-- OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN -->
|
<!-- OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN -->
|
||||||
<!-- IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -->
|
<!-- IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -->
|
||||||
<audio_platform_info>
|
<audio_platform_info>
|
||||||
|
<acdb_ids>
|
||||||
|
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_2_PROTECTED" acdb_id="150"/>
|
||||||
|
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_2_PROTECTED_VBAT" acdb_id="150"/>
|
||||||
|
<device name="SND_DEVICE_IN_CAPTURE_VI_FEEDBACK_MONO_1" acdb_id="151"/>
|
||||||
|
<device name="SND_DEVICE_IN_CAPTURE_VI_FEEDBACK_MONO_2" acdb_id="152"/>
|
||||||
|
</acdb_ids>
|
||||||
<bit_width_configs>
|
<bit_width_configs>
|
||||||
<device name="SND_DEVICE_OUT_SPEAKER" bit_width="24"/>
|
<device name="SND_DEVICE_OUT_SPEAKER" bit_width="24"/>
|
||||||
</bit_width_configs>
|
</bit_width_configs>
|
||||||
|
<config_params>
|
||||||
|
<param key="input_mic_max_count" value="4"/>
|
||||||
|
</config_params>
|
||||||
<interface_names>
|
<interface_names>
|
||||||
<device name="AUDIO_DEVICE_IN_BUILTIN_MIC" interface="SLIMBUS_0" codec_type="external"/>
|
<device name="AUDIO_DEVICE_IN_BUILTIN_MIC" interface="SLIMBUS_0" codec_type="external"/>
|
||||||
<device name="AUDIO_DEVICE_IN_BACK_MIC" interface="SLIMBUS_0" codec_type="external"/>
|
<device name="AUDIO_DEVICE_IN_BACK_MIC" interface="SLIMBUS_0" codec_type="external"/>
|
||||||
|
@ -36,13 +46,13 @@
|
||||||
</interface_names>
|
</interface_names>
|
||||||
<pcm_ids>
|
<pcm_ids>
|
||||||
<usecase name="USECASE_AUDIO_PLAYBACK_OFFLOAD2" type="out" id="24"/>
|
<usecase name="USECASE_AUDIO_PLAYBACK_OFFLOAD2" type="out" id="24"/>
|
||||||
<usecase name="USECASE_AUDIO_PLAYBACK_OFFLOAD3" type="out" id="29"/>
|
<usecase name="USECASE_AUDIO_PLAYBACK_OFFLOAD3" type="out" id="28"/>
|
||||||
<usecase name="USECASE_AUDIO_PLAYBACK_OFFLOAD4" type="out" id="30"/>
|
<usecase name="USECASE_AUDIO_PLAYBACK_OFFLOAD4" type="out" id="29"/>
|
||||||
<usecase name="USECASE_AUDIO_PLAYBACK_OFFLOAD5" type="out" id="31"/>
|
<usecase name="USECASE_AUDIO_PLAYBACK_OFFLOAD5" type="out" id="30"/>
|
||||||
<usecase name="USECASE_AUDIO_PLAYBACK_OFFLOAD6" type="out" id="32"/>
|
<usecase name="USECASE_AUDIO_PLAYBACK_OFFLOAD6" type="out" id="31"/>
|
||||||
<usecase name="USECASE_AUDIO_PLAYBACK_OFFLOAD7" type="out" id="33"/>
|
<usecase name="USECASE_AUDIO_PLAYBACK_OFFLOAD7" type="out" id="32"/>
|
||||||
<usecase name="USECASE_AUDIO_PLAYBACK_OFFLOAD8" type="out" id="34"/>
|
<usecase name="USECASE_AUDIO_PLAYBACK_OFFLOAD8" type="out" id="33"/>
|
||||||
<usecase name="USECASE_AUDIO_PLAYBACK_OFFLOAD9" type="out" id="35"/>
|
<usecase name="USECASE_AUDIO_PLAYBACK_OFFLOAD9" type="out" id="34"/>
|
||||||
<usecase name="USECASE_VOICEMMODE1_CALL" type="in" id="35"/>
|
<usecase name="USECASE_VOICEMMODE1_CALL" type="in" id="35"/>
|
||||||
<usecase name="USECASE_VOICEMMODE1_CALL" type="out" id="35"/>
|
<usecase name="USECASE_VOICEMMODE1_CALL" type="out" id="35"/>
|
||||||
<usecase name="USECASE_VOICEMMODE2_CALL" type="in" id="36"/>
|
<usecase name="USECASE_VOICEMMODE2_CALL" type="in" id="36"/>
|
||||||
|
|
|
@ -1,160 +0,0 @@
|
||||||
# Global configuration section:
|
|
||||||
# - lists input and output devices always present on the device
|
|
||||||
# as well as the output device selected by default.
|
|
||||||
# Devices are designated by a string that corresponds to the enum in audio.h
|
|
||||||
# - defines whether the speaker output path uses DRC
|
|
||||||
# "TRUE" means DRC is enabled, "FALSE" or omission means DRC isn't used.
|
|
||||||
global_configuration {
|
|
||||||
attached_output_devices AUDIO_DEVICE_OUT_EARPIECE|AUDIO_DEVICE_OUT_SPEAKER|AUDIO_DEVICE_OUT_TELEPHONY_TX
|
|
||||||
default_output_device AUDIO_DEVICE_OUT_SPEAKER
|
|
||||||
attached_input_devices AUDIO_DEVICE_IN_BUILTIN_MIC|AUDIO_DEVICE_IN_BACK_MIC|AUDIO_DEVICE_IN_REMOTE_SUBMIX|AUDIO_DEVICE_IN_FM_TUNER|AUDIO_DEVICE_IN_VOICE_CALL|AUDIO_DEVICE_IN_TELEPHONY_RX
|
|
||||||
|
|
||||||
speaker_drc_enabled TRUE
|
|
||||||
}
|
|
||||||
|
|
||||||
# audio hardware module section: contains descriptors for all audio hw modules present on the
|
|
||||||
# device. Each hw module node is named after the corresponding hw module library base name.
|
|
||||||
# For instance, "primary" corresponds to audio.primary.<device>.so.
|
|
||||||
# The "primary" module is mandatory and must include at least one output with
|
|
||||||
# AUDIO_OUTPUT_FLAG_PRIMARY flag.
|
|
||||||
# Each module descriptor contains one or more output profile descriptors and zero or more
|
|
||||||
# input profile descriptors. Each profile lists all the parameters supported by a given output
|
|
||||||
# or input stream category.
|
|
||||||
# The "channel_masks", "formats", "devices" and "flags" are specified using strings corresponding
|
|
||||||
# to enums in audio.h and audio_policy.h. They are concatenated by use of "|" without space or "\n".
|
|
||||||
|
|
||||||
audio_hw_modules {
|
|
||||||
primary {
|
|
||||||
outputs {
|
|
||||||
primary {
|
|
||||||
sampling_rates 44100|48000
|
|
||||||
channel_masks AUDIO_CHANNEL_OUT_STEREO
|
|
||||||
formats AUDIO_FORMAT_PCM_16_BIT
|
|
||||||
devices AUDIO_DEVICE_OUT_EARPIECE|AUDIO_DEVICE_OUT_SPEAKER|AUDIO_DEVICE_OUT_WIRED_HEADSET|AUDIO_DEVICE_OUT_WIRED_HEADPHONE|AUDIO_DEVICE_OUT_LINE|AUDIO_DEVICE_OUT_ALL_SCO|AUDIO_DEVICE_OUT_AUX_DIGITAL|AUDIO_DEVICE_OUT_PROXY|AUDIO_DEVICE_OUT_FM
|
|
||||||
flags AUDIO_OUTPUT_FLAG_FAST|AUDIO_OUTPUT_FLAG_PRIMARY
|
|
||||||
}
|
|
||||||
deep_buffer {
|
|
||||||
sampling_rates 44100|48000
|
|
||||||
channel_masks AUDIO_CHANNEL_OUT_STEREO
|
|
||||||
formats AUDIO_FORMAT_PCM_16_BIT
|
|
||||||
devices AUDIO_DEVICE_OUT_SPEAKER|AUDIO_DEVICE_OUT_EARPIECE|AUDIO_DEVICE_OUT_WIRED_HEADSET|AUDIO_DEVICE_OUT_WIRED_HEADPHONE|AUDIO_DEVICE_OUT_LINE|AUDIO_DEVICE_OUT_ALL_SCO|AUDIO_DEVICE_OUT_AUX_DIGITAL|AUDIO_DEVICE_OUT_PROXY
|
|
||||||
flags AUDIO_OUTPUT_FLAG_DEEP_BUFFER
|
|
||||||
}
|
|
||||||
multichannel {
|
|
||||||
sampling_rates 44100|48000
|
|
||||||
channel_masks dynamic
|
|
||||||
formats AUDIO_FORMAT_PCM_16_BIT
|
|
||||||
devices AUDIO_DEVICE_OUT_AUX_DIGITAL|AUDIO_DEVICE_OUT_PROXY
|
|
||||||
flags AUDIO_OUTPUT_FLAG_DIRECT
|
|
||||||
}
|
|
||||||
direct_pcm {
|
|
||||||
sampling_rates 8000|11025|16000|22050|32000|44100|48000|64000|88200|96000|176400|192000
|
|
||||||
channel_masks AUDIO_CHANNEL_OUT_MONO|AUDIO_CHANNEL_OUT_STEREO|AUDIO_CHANNEL_OUT_2POINT1|AUDIO_CHANNEL_OUT_QUAD|AUDIO_CHANNEL_OUT_PENTA|AUDIO_CHANNEL_OUT_5POINT1|AUDIO_CHANNEL_OUT_6POINT1|AUDIO_CHANNEL_OUT_7POINT1
|
|
||||||
formats AUDIO_FORMAT_PCM_16_BIT
|
|
||||||
devices AUDIO_DEVICE_OUT_SPEAKER|AUDIO_DEVICE_OUT_EARPIECE|AUDIO_DEVICE_OUT_WIRED_HEADSET|AUDIO_DEVICE_OUT_WIRED_HEADPHONE|AUDIO_DEVICE_OUT_LINE|AUDIO_DEVICE_OUT_ALL_SCO|AUDIO_DEVICE_OUT_PROXY
|
|
||||||
flags AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_DIRECT_PCM
|
|
||||||
}
|
|
||||||
compress_offload {
|
|
||||||
sampling_rates 8000|11025|12000|16000|22050|24000|32000|44100|48000|64000|88200|96000|176400|192000
|
|
||||||
channel_masks AUDIO_CHANNEL_OUT_MONO|AUDIO_CHANNEL_OUT_STEREO|AUDIO_CHANNEL_OUT_2POINT1|AUDIO_CHANNEL_OUT_QUAD|AUDIO_CHANNEL_OUT_PENTA|AUDIO_CHANNEL_OUT_5POINT1|AUDIO_CHANNEL_OUT_6POINT1|AUDIO_CHANNEL_OUT_7POINT1
|
|
||||||
formats AUDIO_FORMAT_MP3|AUDIO_FORMAT_AC3|AUDIO_FORMAT_E_AC3|AUDIO_FORMAT_PCM_16_BIT_OFFLOAD|AUDIO_FORMAT_PCM_24_BIT_OFFLOAD|AUDIO_FORMAT_FLAC|AUDIO_FORMAT_ALAC|AUDIO_FORMAT_APE|AUDIO_FORMAT_AAC_LC|AUDIO_FORMAT_AAC_HE_V1|AUDIO_FORMAT_AAC_HE_V2|AUDIO_FORMAT_WMA|AUDIO_FORMAT_WMA_PRO|AUDIO_FORMAT_VORBIS|AUDIO_FORMAT_AAC_ADTS_LC|AUDIO_FORMAT_AAC_ADTS_HE_V1|AUDIO_FORMAT_AAC_ADTS_HE_V2
|
|
||||||
devices AUDIO_DEVICE_OUT_SPEAKER|AUDIO_DEVICE_OUT_EARPIECE|AUDIO_DEVICE_OUT_WIRED_HEADSET|AUDIO_DEVICE_OUT_WIRED_HEADPHONE|AUDIO_DEVICE_OUT_LINE|AUDIO_DEVICE_OUT_ALL_SCO|AUDIO_DEVICE_OUT_AUX_DIGITAL|AUDIO_DEVICE_OUT_PROXY
|
|
||||||
flags AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_COMPRESS_OFFLOAD|AUDIO_OUTPUT_FLAG_NON_BLOCKING
|
|
||||||
}
|
|
||||||
incall_music {
|
|
||||||
sampling_rates 8000|16000|48000
|
|
||||||
channel_masks AUDIO_CHANNEL_OUT_MONO
|
|
||||||
formats AUDIO_FORMAT_PCM_16_BIT
|
|
||||||
devices AUDIO_DEVICE_OUT_SPEAKER|AUDIO_DEVICE_OUT_EARPIECE|AUDIO_DEVICE_OUT_WIRED_HEADSET|AUDIO_DEVICE_OUT_WIRED_HEADPHONE|AUDIO_DEVICE_OUT_LINE|AUDIO_DEVICE_OUT_ALL_SCO
|
|
||||||
flags AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_INCALL_MUSIC
|
|
||||||
}
|
|
||||||
voice_tx {
|
|
||||||
sampling_rates 8000|16000|48000
|
|
||||||
channel_masks AUDIO_CHANNEL_OUT_STEREO|AUDIO_CHANNEL_OUT_MONO
|
|
||||||
formats AUDIO_FORMAT_PCM_16_BIT
|
|
||||||
devices AUDIO_DEVICE_OUT_TELEPHONY_TX
|
|
||||||
}
|
|
||||||
voip_rx {
|
|
||||||
sampling_rates 8000|16000
|
|
||||||
channel_masks AUDIO_CHANNEL_OUT_MONO
|
|
||||||
formats AUDIO_FORMAT_PCM_16_BIT
|
|
||||||
devices AUDIO_DEVICE_OUT_SPEAKER|AUDIO_DEVICE_OUT_EARPIECE|AUDIO_DEVICE_OUT_WIRED_HEADSET|AUDIO_DEVICE_OUT_WIRED_HEADPHONE|AUDIO_DEVICE_OUT_LINE|AUDIO_DEVICE_OUT_ALL_SCO
|
|
||||||
flags AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_VOIP_RX
|
|
||||||
}
|
|
||||||
}
|
|
||||||
inputs {
|
|
||||||
primary {
|
|
||||||
sampling_rates 8000|11025|12000|16000|22050|24000|32000|44100|48000
|
|
||||||
channel_masks AUDIO_CHANNEL_IN_5POINT1|AUDIO_CHANNEL_IN_MONO|AUDIO_CHANNEL_IN_STEREO|AUDIO_CHANNEL_IN_FRONT_BACK
|
|
||||||
formats AUDIO_FORMAT_PCM_16_BIT
|
|
||||||
devices AUDIO_DEVICE_IN_BUILTIN_MIC|AUDIO_DEVICE_IN_WIRED_HEADSET|AUDIO_DEVICE_IN_BLUETOOTH_SCO_HEADSET|AUDIO_DEVICE_IN_BACK_MIC|AUDIO_DEVICE_IN_FM_TUNER|AUDIO_DEVICE_IN_VOICE_CALL
|
|
||||||
}
|
|
||||||
voice_rx {
|
|
||||||
sampling_rates 8000|16000|48000
|
|
||||||
channel_masks AUDIO_CHANNEL_IN_STEREO|AUDIO_CHANNEL_IN_MONO
|
|
||||||
formats AUDIO_FORMAT_PCM_16_BIT
|
|
||||||
devices AUDIO_DEVICE_IN_TELEPHONY_RX
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
a2dp {
|
|
||||||
outputs {
|
|
||||||
a2dp {
|
|
||||||
sampling_rates 44100
|
|
||||||
channel_masks AUDIO_CHANNEL_OUT_STEREO
|
|
||||||
formats AUDIO_FORMAT_PCM_16_BIT
|
|
||||||
devices AUDIO_DEVICE_OUT_ALL_A2DP
|
|
||||||
}
|
|
||||||
}
|
|
||||||
inputs {
|
|
||||||
a2dp {
|
|
||||||
sampling_rates 44100|48000
|
|
||||||
channel_masks AUDIO_CHANNEL_IN_MONO|AUDIO_CHANNEL_IN_STEREO
|
|
||||||
formats AUDIO_FORMAT_PCM_16_BIT
|
|
||||||
devices AUDIO_DEVICE_IN_BLUETOOTH_A2DP
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
usb {
|
|
||||||
outputs {
|
|
||||||
usb_accessory {
|
|
||||||
sampling_rates 44100
|
|
||||||
channel_masks AUDIO_CHANNEL_OUT_STEREO
|
|
||||||
formats AUDIO_FORMAT_PCM_16_BIT
|
|
||||||
devices AUDIO_DEVICE_OUT_USB_ACCESSORY
|
|
||||||
}
|
|
||||||
usb_device {
|
|
||||||
sampling_rates dynamic
|
|
||||||
channel_masks dynamic
|
|
||||||
formats dynamic
|
|
||||||
devices AUDIO_DEVICE_OUT_USB_DEVICE
|
|
||||||
}
|
|
||||||
}
|
|
||||||
inputs {
|
|
||||||
usb_device {
|
|
||||||
sampling_rates dynamic
|
|
||||||
channel_masks AUDIO_CHANNEL_IN_STEREO
|
|
||||||
formats AUDIO_FORMAT_PCM_16_BIT
|
|
||||||
devices AUDIO_DEVICE_IN_USB_DEVICE
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
r_submix {
|
|
||||||
outputs {
|
|
||||||
submix {
|
|
||||||
sampling_rates 48000
|
|
||||||
channel_masks AUDIO_CHANNEL_OUT_STEREO
|
|
||||||
formats AUDIO_FORMAT_PCM_16_BIT
|
|
||||||
devices AUDIO_DEVICE_OUT_REMOTE_SUBMIX
|
|
||||||
}
|
|
||||||
}
|
|
||||||
inputs {
|
|
||||||
submix {
|
|
||||||
sampling_rates 48000
|
|
||||||
channel_masks AUDIO_CHANNEL_IN_STEREO
|
|
||||||
formats AUDIO_FORMAT_PCM_16_BIT
|
|
||||||
devices AUDIO_DEVICE_IN_REMOTE_SUBMIX
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
298
audio/audio_policy_configuration.xml
Normal file
298
audio/audio_policy_configuration.xml
Normal file
|
@ -0,0 +1,298 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||||
|
<!-- Copyright (c) 2016, The Linux Foundation. All rights reserved
|
||||||
|
Not a Contribution.
|
||||||
|
-->
|
||||||
|
<!-- Copyright (C) 2015 The Android Open Source Project
|
||||||
|
|
||||||
|
Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
you may not use this file except in compliance with the License.
|
||||||
|
You may obtain a copy of the License at
|
||||||
|
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
|
Unless required by applicable law or agreed to in writing, software
|
||||||
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
See the License for the specific language governing permissions and
|
||||||
|
limitations under the License.
|
||||||
|
-->
|
||||||
|
|
||||||
|
<audioPolicyConfiguration version="1.0" xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||||
|
<!-- version section contains a “version” tag in the form “major.minor” e.g version=”1.0” -->
|
||||||
|
|
||||||
|
<!-- Global configuration Decalaration -->
|
||||||
|
<globalConfiguration speaker_drc_enabled="true"/>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- Modules section:
|
||||||
|
There is one section per audio HW module present on the platform.
|
||||||
|
Each module section will contains two mandatory tags for audio HAL “halVersion” and “name”.
|
||||||
|
The module names are the same as in current .conf file:
|
||||||
|
“primary”, “A2DP”, “remote_submix”, “USB”
|
||||||
|
Each module will contain the following sections:
|
||||||
|
“devicePorts”: a list of device descriptors for all input and output devices accessible via this
|
||||||
|
module.
|
||||||
|
This contains both permanently attached devices and removable devices.
|
||||||
|
“mixPorts”: listing all output and input streams exposed by the audio HAL
|
||||||
|
“routes”: list of possible connections between input and output devices or between stream and
|
||||||
|
devices.
|
||||||
|
"route": is defined by an attribute:
|
||||||
|
-"type": <mux|mix> means all sources are mutual exclusive (mux) or can be mixed (mix)
|
||||||
|
-"sink": the sink involved in this route
|
||||||
|
-"sources": all the sources than can be connected to the sink via vis route
|
||||||
|
“attachedDevices”: permanently attached devices.
|
||||||
|
The attachedDevices section is a list of devices names. The names correspond to device names
|
||||||
|
defined in <devicePorts> section.
|
||||||
|
“defaultOutputDevice”: device to be used by default when no policy rule applies
|
||||||
|
-->
|
||||||
|
<modules>
|
||||||
|
<!-- Primary Audio HAL -->
|
||||||
|
<module name="primary" halVersion="2.0">
|
||||||
|
<attachedDevices>
|
||||||
|
<item>Earpiece</item>
|
||||||
|
<item>Speaker</item>
|
||||||
|
<item>Telephony Tx</item>
|
||||||
|
<item>Built-In Mic</item>
|
||||||
|
<item>Built-In Back Mic</item>
|
||||||
|
<item>FM Tuner</item>
|
||||||
|
<item>Telephony Rx</item>
|
||||||
|
</attachedDevices>
|
||||||
|
<defaultOutputDevice>Speaker</defaultOutputDevice>
|
||||||
|
<mixPorts>
|
||||||
|
<mixPort name="primary output" role="source" flags="AUDIO_OUTPUT_FLAG_FAST|AUDIO_OUTPUT_FLAG_PRIMARY">
|
||||||
|
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||||
|
samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
|
||||||
|
</mixPort>
|
||||||
|
<mixPort name="raw" role="source"
|
||||||
|
flags="AUDIO_OUTPUT_FLAG_FAST|AUDIO_OUTPUT_FLAG_RAW">
|
||||||
|
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||||
|
samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
|
||||||
|
</mixPort>
|
||||||
|
<mixPort name="deep_buffer" role="source"
|
||||||
|
flags="AUDIO_OUTPUT_FLAG_DEEP_BUFFER">
|
||||||
|
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||||
|
samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
|
||||||
|
</mixPort>
|
||||||
|
<mixPort name="multichannel" role="source"
|
||||||
|
flags="AUDIO_OUTPUT_FLAG_DIRECT">
|
||||||
|
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||||
|
samplingRates="44100,48000" channelMasks="dynamic"/>
|
||||||
|
</mixPort>
|
||||||
|
<mixPort name="direct_pcm" role="source"
|
||||||
|
flags="AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_DIRECT_PCM">
|
||||||
|
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||||
|
samplingRates="8000,11025,12000,16000,22050,24000,32000,44100,48000,64000,88200,96000,176400,192000"
|
||||||
|
channelMasks="AUDIO_CHANNEL_OUT_MONO,AUDIO_CHANNEL_OUT_STEREO,AUDIO_CHANNEL_OUT_2POINT1,AUDIO_CHANNEL_OUT_QUAD,AUDIO_CHANNEL_OUT_PENTA,AUDIO_CHANNEL_OUT_5POINT1,AUDIO_CHANNEL_OUT_6POINT1,AUDIO_CHANNEL_OUT_7POINT1"/>
|
||||||
|
<profile name="" format="AUDIO_FORMAT_PCM_8_24_BIT"
|
||||||
|
samplingRates="8000,11025,12000,16000,22050,24000,32000,44100,48000,64000,88200,96000,176400,192000"
|
||||||
|
channelMasks="AUDIO_CHANNEL_OUT_MONO,AUDIO_CHANNEL_OUT_STEREO,AUDIO_CHANNEL_OUT_2POINT1,AUDIO_CHANNEL_OUT_QUAD,AUDIO_CHANNEL_OUT_PENTA,AUDIO_CHANNEL_OUT_5POINT1,AUDIO_CHANNEL_OUT_6POINT1,AUDIO_CHANNEL_OUT_7POINT1"/>
|
||||||
|
<profile name="" format="AUDIO_FORMAT_PCM_24_BIT_PACKED"
|
||||||
|
samplingRates="8000,11025,12000,16000,22050,24000,32000,44100,48000,64000,88200,96000,176400,192000"
|
||||||
|
channelMasks="AUDIO_CHANNEL_OUT_MONO,AUDIO_CHANNEL_OUT_STEREO,AUDIO_CHANNEL_OUT_2POINT1,AUDIO_CHANNEL_OUT_QUAD,AUDIO_CHANNEL_OUT_PENTA,AUDIO_CHANNEL_OUT_5POINT1,AUDIO_CHANNEL_OUT_6POINT1,AUDIO_CHANNEL_OUT_7POINT1"/>
|
||||||
|
</mixPort>
|
||||||
|
<mixPort name="compressed_offload" role="source"
|
||||||
|
flags="AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_COMPRESS_OFFLOAD|AUDIO_OUTPUT_FLAG_NON_BLOCKING">
|
||||||
|
<profile name="" format="AUDIO_FORMAT_MP3"
|
||||||
|
samplingRates="8000,11025,12000,16000,22050,24000,32000,44100,48000"
|
||||||
|
channelMasks="AUDIO_CHANNEL_OUT_STEREO,AUDIO_CHANNEL_OUT_MONO"/>
|
||||||
|
<profile name="" format="AUDIO_FORMAT_FLAC"
|
||||||
|
samplingRates="8000,11025,12000,16000,22050,24000,32000,44100,48000,64000,88200,96000,128000,176400,192000"
|
||||||
|
channelMasks="AUDIO_CHANNEL_OUT_STEREO,AUDIO_CHANNEL_OUT_MONO"/>
|
||||||
|
<profile name="" format="AUDIO_FORMAT_ALAC"
|
||||||
|
samplingRates="8000,11025,12000,16000,22050,24000,32000,44100,48000,64000,88200,96000,128000,176400,192000"
|
||||||
|
channelMasks="AUDIO_CHANNEL_OUT_MONO,AUDIO_CHANNEL_OUT_STEREO,AUDIO_CHANNEL_OUT_2POINT1,AUDIO_CHANNEL_OUT_QUAD,AUDIO_CHANNEL_OUT_PENTA,AUDIO_CHANNEL_OUT_5POINT1,AUDIO_CHANNEL_OUT_6POINT1,AUDIO_CHANNEL_OUT_7POINT1"/>
|
||||||
|
<profile name="" format="AUDIO_FORMAT_APE"
|
||||||
|
samplingRates="8000,11025,12000,16000,22050,24000,32000,44100,48000,64000,88200,96000,128000,176400,192000"
|
||||||
|
channelMasks="AUDIO_CHANNEL_OUT_STEREO,AUDIO_CHANNEL_OUT_MONO"/>
|
||||||
|
<profile name="" format="AUDIO_FORMAT_AAC_LC"
|
||||||
|
samplingRates="8000,11025,12000,16000,22050,24000,32000,44100,48000,64000,88200,96000"
|
||||||
|
channelMasks="AUDIO_CHANNEL_OUT_STEREO,AUDIO_CHANNEL_OUT_MONO"/>
|
||||||
|
<profile name="" format="AUDIO_FORMAT_AAC_HE_V1"
|
||||||
|
samplingRates="8000,11025,12000,16000,22050,24000,32000,44100,48000,64000,88200,96000"
|
||||||
|
channelMasks="AUDIO_CHANNEL_OUT_STEREO,AUDIO_CHANNEL_OUT_MONO"/>
|
||||||
|
<profile name="" format="AUDIO_FORMAT_AAC_HE_V2"
|
||||||
|
samplingRates="8000,11025,12000,16000,22050,24000,32000,44100,48000,64000,88200,96000"
|
||||||
|
channelMasks="AUDIO_CHANNEL_OUT_STEREO,AUDIO_CHANNEL_OUT_MONO"/>
|
||||||
|
<profile name="" format="AUDIO_FORMAT_WMA"
|
||||||
|
samplingRates="8000,11025,12000,16000,22050,24000,32000,44100,48000"
|
||||||
|
channelMasks="AUDIO_CHANNEL_OUT_MONO,AUDIO_CHANNEL_OUT_STEREO,AUDIO_CHANNEL_OUT_2POINT1,AUDIO_CHANNEL_OUT_QUAD,AUDIO_CHANNEL_OUT_PENTA,AUDIO_CHANNEL_OUT_5POINT1,AUDIO_CHANNEL_OUT_6POINT1,AUDIO_CHANNEL_OUT_7POINT1"/>
|
||||||
|
<profile name="" format="AUDIO_FORMAT_WMA_PRO"
|
||||||
|
samplingRates="8000,11025,12000,16000,22050,24000,32000,44100,48000,64000,88200,96000"
|
||||||
|
channelMasks="AUDIO_CHANNEL_OUT_MONO,AUDIO_CHANNEL_OUT_STEREO,AUDIO_CHANNEL_OUT_2POINT1,AUDIO_CHANNEL_OUT_QUAD,AUDIO_CHANNEL_OUT_PENTA,AUDIO_CHANNEL_OUT_5POINT1,AUDIO_CHANNEL_OUT_6POINT1,AUDIO_CHANNEL_OUT_7POINT1"/>
|
||||||
|
<profile name="" format="AUDIO_FORMAT_VORBIS"
|
||||||
|
samplingRates="8000,11025,12000,16000,22050,24000,32000,44100,48000,64000,88200,96000,128000,176400,192000"
|
||||||
|
channelMasks="AUDIO_CHANNEL_OUT_STEREO,AUDIO_CHANNEL_OUT_MONO"/>
|
||||||
|
<profile name="" format="AUDIO_FORMAT_AAC_ADTS_LC"
|
||||||
|
samplingRates="8000,11025,12000,16000,22050,24000,32000,44100,48000,64000,88200,96000"
|
||||||
|
channelMasks="AUDIO_CHANNEL_OUT_STEREO,AUDIO_CHANNEL_OUT_MONO"/>
|
||||||
|
<profile name="" format="AUDIO_FORMAT_AAC_ADTS_HE_V1"
|
||||||
|
samplingRates="8000,11025,12000,16000,22050,24000,32000,44100,48000,64000,88200,96000"
|
||||||
|
channelMasks="AUDIO_CHANNEL_OUT_STEREO,AUDIO_CHANNEL_OUT_MONO"/>
|
||||||
|
<profile name="" format="AUDIO_FORMAT_AAC_ADTS_HE_V2"
|
||||||
|
samplingRates="8000,11025,12000,16000,22050,24000,32000,44100,48000,64000,88200,96000"
|
||||||
|
channelMasks="AUDIO_CHANNEL_OUT_STEREO,AUDIO_CHANNEL_OUT_MONO"/>
|
||||||
|
</mixPort>
|
||||||
|
<mixPort name="voice_tx" role="source">
|
||||||
|
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||||
|
samplingRates="8000,16000,48000" channelMasks="AUDIO_CHANNEL_OUT_MONO,AUDIO_CHANNEL_OUT_STEREO"/>
|
||||||
|
</mixPort>
|
||||||
|
<mixPort name="voip_rx" role="source"
|
||||||
|
flags="AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_VOIP_RX">
|
||||||
|
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||||
|
samplingRates="8000,16000" channelMasks="AUDIO_CHANNEL_OUT_MONO"/>
|
||||||
|
</mixPort>
|
||||||
|
|
||||||
|
<mixPort name="primary input" role="sink">
|
||||||
|
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||||
|
samplingRates="8000,11025,12000,16000,22050,24000,32000,44100,48000"
|
||||||
|
channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO,AUDIO_CHANNEL_IN_FRONT_BACK"/>
|
||||||
|
</mixPort>
|
||||||
|
<mixPort name="surround_sound" role="sink">
|
||||||
|
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||||
|
samplingRates="8000,11025,12000,16000,22050,24000,32000,44100,48000"
|
||||||
|
channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO,AUDIO_CHANNEL_IN_FRONT_BACK,AUDIO_CHANNEL_INDEX_MASK_3,AUDIO_CHANNEL_INDEX_MASK_4,AUDIO_CHANNEL_IN_5POINT1,AUDIO_CHANNEL_INDEX_MASK_6"/>
|
||||||
|
</mixPort>
|
||||||
|
<mixPort name="voice_rx" role="sink">
|
||||||
|
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||||
|
samplingRates="8000,16000,48000" channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO"/>
|
||||||
|
</mixPort>
|
||||||
|
</mixPorts>
|
||||||
|
|
||||||
|
<devicePorts>
|
||||||
|
<!-- Output devices declaration, i.e. Sink DEVICE PORT -->
|
||||||
|
<devicePort tagName="Earpiece" type="AUDIO_DEVICE_OUT_EARPIECE" role="sink">
|
||||||
|
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||||
|
samplingRates="48000" channelMasks="AUDIO_CHANNEL_IN_MONO"/>
|
||||||
|
</devicePort>
|
||||||
|
<devicePort tagName="Speaker" role="sink" type="AUDIO_DEVICE_OUT_SPEAKER" address="">
|
||||||
|
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||||
|
samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
|
||||||
|
</devicePort>
|
||||||
|
<devicePort tagName="Wired Headset" type="AUDIO_DEVICE_OUT_WIRED_HEADSET" role="sink">
|
||||||
|
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||||
|
samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
|
||||||
|
</devicePort>
|
||||||
|
<devicePort tagName="Wired Headphones" type="AUDIO_DEVICE_OUT_WIRED_HEADPHONE" role="sink">
|
||||||
|
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||||
|
samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
|
||||||
|
</devicePort>
|
||||||
|
<devicePort tagName="Line" type="AUDIO_DEVICE_OUT_LINE" role="sink">
|
||||||
|
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||||
|
samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
|
||||||
|
</devicePort>
|
||||||
|
<devicePort tagName="BT SCO" type="AUDIO_DEVICE_OUT_BLUETOOTH_SCO" role="sink">
|
||||||
|
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||||
|
samplingRates="8000,16000" channelMasks="AUDIO_CHANNEL_OUT_MONO"/>
|
||||||
|
</devicePort>
|
||||||
|
<devicePort tagName="BT SCO Headset" type="AUDIO_DEVICE_OUT_BLUETOOTH_SCO_HEADSET" role="sink">
|
||||||
|
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||||
|
samplingRates="8000,16000" channelMasks="AUDIO_CHANNEL_OUT_MONO"/>
|
||||||
|
</devicePort>
|
||||||
|
<devicePort tagName="BT SCO Car Kit" type="AUDIO_DEVICE_OUT_BLUETOOTH_SCO_CARKIT" role="sink">
|
||||||
|
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||||
|
samplingRates="8000,16000" channelMasks="AUDIO_CHANNEL_OUT_MONO"/>
|
||||||
|
</devicePort>
|
||||||
|
<devicePort tagName="BT SCO All" type="AUDIO_DEVICE_OUT_ALL_SCO" role="sink">
|
||||||
|
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||||
|
samplingRates="8000,16000" channelMasks="AUDIO_CHANNEL_OUT_MONO"/>
|
||||||
|
</devicePort>
|
||||||
|
<devicePort tagName="Telephony Tx" type="AUDIO_DEVICE_OUT_TELEPHONY_TX" role="sink">
|
||||||
|
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||||
|
samplingRates="8000,16000" channelMasks="AUDIO_CHANNEL_OUT_MONO,AUDIO_CHANNEL_OUT_STEREO"/>
|
||||||
|
</devicePort>
|
||||||
|
<devicePort tagName="HDMI" type="AUDIO_DEVICE_OUT_AUX_DIGITAL" role="sink">
|
||||||
|
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||||
|
samplingRates="8000,11025,16000,22050,32000,44100,48000,64000,88200,96000,128000,176400,192000" channelMasks="dynamic"/>
|
||||||
|
</devicePort>
|
||||||
|
<devicePort tagName="Proxy" type="AUDIO_DEVICE_OUT_PROXY" role="sink">
|
||||||
|
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||||
|
samplingRates="8000,11025,16000,22050,32000,44100,48000,64000,88200,96000,128000,176400,192000" channelMasks="dynamic"/>
|
||||||
|
</devicePort>
|
||||||
|
<devicePort tagName="FM" type="AUDIO_DEVICE_OUT_FM" role="sink">
|
||||||
|
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||||
|
samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_MONO,AUDIO_CHANNEL_OUT_STEREO"/>
|
||||||
|
</devicePort>
|
||||||
|
|
||||||
|
<devicePort tagName="Built-In Mic" type="AUDIO_DEVICE_IN_BUILTIN_MIC" role="source">
|
||||||
|
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||||
|
samplingRates="8000,11025,12000,16000,22050,24000,32000,44100,48000"
|
||||||
|
channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO,AUDIO_CHANNEL_IN_FRONT_BACK"/>
|
||||||
|
</devicePort>
|
||||||
|
<devicePort tagName="Built-In Back Mic" type="AUDIO_DEVICE_IN_BACK_MIC" role="source">
|
||||||
|
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||||
|
samplingRates="8000,11025,12000,16000,22050,24000,32000,44100,48000"
|
||||||
|
channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO,AUDIO_CHANNEL_IN_FRONT_BACK"/>
|
||||||
|
</devicePort>
|
||||||
|
<devicePort tagName="FM Tuner" type="AUDIO_DEVICE_IN_FM_TUNER" role="source">
|
||||||
|
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||||
|
samplingRates="48000"
|
||||||
|
channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO"/>
|
||||||
|
</devicePort>
|
||||||
|
<devicePort tagName="Wired Headset Mic" type="AUDIO_DEVICE_IN_WIRED_HEADSET" role="source">
|
||||||
|
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||||
|
samplingRates="8000,11025,12000,16000,22050,24000,32000,44100,48000"
|
||||||
|
channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO,AUDIO_CHANNEL_IN_FRONT_BACK"/>
|
||||||
|
</devicePort>
|
||||||
|
<devicePort tagName="BT SCO Headset Mic" type="AUDIO_DEVICE_IN_BLUETOOTH_SCO_HEADSET" role="source">
|
||||||
|
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||||
|
samplingRates="8000,16000" channelMasks="AUDIO_CHANNEL_IN_MONO"/>
|
||||||
|
</devicePort>
|
||||||
|
<devicePort tagName="Telephony Rx" type="AUDIO_DEVICE_IN_TELEPHONY_RX" role="source">
|
||||||
|
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||||
|
samplingRates="8000,16000,48000" channelMasks="AUDIO_CHANNEL_IN_MONO"/>
|
||||||
|
</devicePort>
|
||||||
|
</devicePorts>
|
||||||
|
<!-- route declaration, i.e. list all available sources for a given sink -->
|
||||||
|
<routes>
|
||||||
|
<route type="mix" sink="Earpiece"
|
||||||
|
sources="primary output,raw,deep_buffer,direct_pcm,compressed_offload,voip_rx,BT SCO Headset Mic"/>
|
||||||
|
<route type="mix" sink="Speaker"
|
||||||
|
sources="primary output,raw,deep_buffer,direct_pcm,compressed_offload,voip_rx,BT SCO Headset Mic,Telephony Rx"/>
|
||||||
|
<route type="mix" sink="Wired Headset"
|
||||||
|
sources="primary output,raw,deep_buffer,direct_pcm,compressed_offload,voip_rx,BT SCO Headset Mic,Telephony Rx"/>
|
||||||
|
<route type="mix" sink="Wired Headphones"
|
||||||
|
sources="primary output,raw,deep_buffer,direct_pcm,compressed_offload,voip_rx,BT SCO Headset Mic,Telephony Rx"/>
|
||||||
|
<route type="mix" sink="Line"
|
||||||
|
sources="primary output,raw,deep_buffer,direct_pcm,compressed_offload,voip_rx"/>
|
||||||
|
<route type="mix" sink="HDMI"
|
||||||
|
sources="primary output,raw,deep_buffer,multichannel,direct_pcm,compressed_offload"/>
|
||||||
|
<route type="mix" sink="Proxy"
|
||||||
|
sources="primary output,raw,deep_buffer,multichannel,direct_pcm,compressed_offload"/>
|
||||||
|
<route type="mix" sink="FM"
|
||||||
|
sources="primary output"/>
|
||||||
|
<route type="mix" sink="BT SCO All"
|
||||||
|
sources="primary output,raw,deep_buffer,direct_pcm,compressed_offload,voip_rx"/>
|
||||||
|
<route type="mix" sink="Telephony Tx"
|
||||||
|
sources="voice_tx"/>
|
||||||
|
<route type="mix" sink="primary input"
|
||||||
|
sources="Wired Headset Mic,BT SCO Headset Mic,FM Tuner,Telephony Rx"/>
|
||||||
|
<route type="mix" sink="surround_sound"
|
||||||
|
sources="Built-In Mic,Built-In Back Mic"/>
|
||||||
|
<route type="mix" sink="Telephony Tx"
|
||||||
|
sources="Built-In Mic,Built-In Back Mic,Wired Headset Mic,BT SCO Headset Mic"/>
|
||||||
|
<route type="mix" sink="voice_rx"
|
||||||
|
sources="Telephony Rx"/>
|
||||||
|
</routes>
|
||||||
|
|
||||||
|
</module>
|
||||||
|
|
||||||
|
<!-- A2dp Audio HAL -->
|
||||||
|
<xi:include href="a2dp_audio_policy_configuration.xml"/>
|
||||||
|
|
||||||
|
<!-- Usb Audio HAL -->
|
||||||
|
<xi:include href="usb_audio_policy_configuration.xml"/>
|
||||||
|
|
||||||
|
<!-- Remote Submix Audio HAL -->
|
||||||
|
<xi:include href="r_submix_audio_policy_configuration.xml"/>
|
||||||
|
|
||||||
|
</modules>
|
||||||
|
<!-- End of Modules section -->
|
||||||
|
|
||||||
|
<!-- Volume section -->
|
||||||
|
|
||||||
|
<xi:include href="audio_policy_volumes.xml"/>
|
||||||
|
<xi:include href="default_volume_tables.xml"/>
|
||||||
|
|
||||||
|
<!-- End of Volume section -->
|
||||||
|
|
||||||
|
</audioPolicyConfiguration>
|
10
msm8976.mk
10
msm8976.mk
|
@ -88,9 +88,17 @@ PRODUCT_COPY_FILES += \
|
||||||
$(LOCAL_PATH)/audio/audio_output_policy.conf:system/vendor/etc/audio_output_policy.conf \
|
$(LOCAL_PATH)/audio/audio_output_policy.conf:system/vendor/etc/audio_output_policy.conf \
|
||||||
$(LOCAL_PATH)/audio/audio_platform_info_extcodec.xml:system/etc/audio_platform_info_extcodec.xml \
|
$(LOCAL_PATH)/audio/audio_platform_info_extcodec.xml:system/etc/audio_platform_info_extcodec.xml \
|
||||||
$(LOCAL_PATH)/audio/audio_platform_info.xml:system/etc/audio_platform_info.xml \
|
$(LOCAL_PATH)/audio/audio_platform_info.xml:system/etc/audio_platform_info.xml \
|
||||||
$(LOCAL_PATH)/audio/audio_policy.conf:system/etc/audio_policy.conf \
|
|
||||||
$(LOCAL_PATH)/audio/mixer_paths_wcd9330.xml:system/etc/mixer_paths_wcd9330.xml
|
$(LOCAL_PATH)/audio/mixer_paths_wcd9330.xml:system/etc/mixer_paths_wcd9330.xml
|
||||||
|
|
||||||
|
# XML Audio configuration files
|
||||||
|
PRODUCT_COPY_FILES += \
|
||||||
|
$(LOCAL_PATH)/audio/audio_policy_configuration.xml:system/etc/audio_policy_configuration.xml \
|
||||||
|
frameworks/av/services/audiopolicy/config/a2dp_audio_policy_configuration.xml:system/etc/a2dp_audio_policy_configuration.xml \
|
||||||
|
frameworks/av/services/audiopolicy/config/audio_policy_volumes.xml:system/etc/audio_policy_volumes.xml \
|
||||||
|
frameworks/av/services/audiopolicy/config/default_volume_tables.xml:system/etc/default_volume_tables.xml \
|
||||||
|
frameworks/av/services/audiopolicy/config/r_submix_audio_policy_configuration.xml:system/etc/r_submix_audio_policy_configuration.xml \
|
||||||
|
frameworks/av/services/audiopolicy/config/usb_audio_policy_configuration.xml:system/etc/usb_audio_policy_configuration.xml
|
||||||
|
|
||||||
# Browser
|
# Browser
|
||||||
PRODUCT_PACKAGES += \
|
PRODUCT_PACKAGES += \
|
||||||
Gello
|
Gello
|
||||||
|
|
Loading…
Reference in a new issue