4581323719
AoC can support mmap on BT both playback and recording after gpar/322484. Bug: 232205959 Test: OboeTester Change-Id: I3f8eb8e83d95a1fb60e8f4c3ecc5ab442035aac7 Signed-off-by: millerliang <millerliang@google.com>
279 lines
18 KiB
XML
279 lines
18 KiB
XML
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
|
<!-- Copyright (C) 2020 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="7.0" xmlns:xi="http://www.w3.org/2001/XInclude">
|
|
<globalConfiguration speaker_drc_enabled="false" call_screen_mode_supported="true" />
|
|
<modules>
|
|
<!-- Primary Audio HAL -->
|
|
<module name="primary" halVersion="2.0">
|
|
<attachedDevices>
|
|
<item>Speaker</item>
|
|
<item>Speaker Safe</item>
|
|
<item>Earpiece</item>
|
|
<item>Built-In Mic</item>
|
|
<item>Built-In Back Mic</item>
|
|
<item>Telephony Tx</item>
|
|
<item>Voice Call And Telephony Rx</item>
|
|
<item>Echo Ref In</item>
|
|
</attachedDevices>
|
|
<defaultOutputDevice>Speaker</defaultOutputDevice>
|
|
<mixPorts>
|
|
<mixPort name="primary output" role="source" flags="AUDIO_OUTPUT_FLAG_PRIMARY AUDIO_OUTPUT_FLAG_FAST"
|
|
recommendedMuteDurationMs="40">
|
|
<profile name="" format="AUDIO_FORMAT_PCM_FLOAT"
|
|
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_FLOAT"
|
|
samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
|
|
</mixPort>
|
|
<mixPort name="compressed_offload" role="source"
|
|
flags="AUDIO_OUTPUT_FLAG_DIRECT AUDIO_OUTPUT_FLAG_COMPRESS_OFFLOAD AUDIO_OUTPUT_FLAG_NON_BLOCKING AUDIO_OUTPUT_FLAG_GAPLESS_OFFLOAD">
|
|
<profile name="" format="AUDIO_FORMAT_MP3"
|
|
samplingRates="8000 16000 24000 32000 44100 48000"
|
|
channelMasks="AUDIO_CHANNEL_OUT_STEREO AUDIO_CHANNEL_OUT_MONO"/>
|
|
<profile name="" format="AUDIO_FORMAT_AAC_LC"
|
|
samplingRates="8000 16000 24000 32000 44100 48000"
|
|
channelMasks="AUDIO_CHANNEL_OUT_STEREO AUDIO_CHANNEL_OUT_MONO"/>
|
|
<profile name="" format="AUDIO_FORMAT_AAC_HE_V1"
|
|
samplingRates="8000 16000 24000 32000 44100 48000"
|
|
channelMasks="AUDIO_CHANNEL_OUT_STEREO AUDIO_CHANNEL_OUT_MONO"/>
|
|
<profile name="" format="AUDIO_FORMAT_AAC_HE_V2"
|
|
samplingRates="8000 16000 24000 32000 44100 48000"
|
|
channelMasks="AUDIO_CHANNEL_OUT_STEREO AUDIO_CHANNEL_OUT_MONO"/>
|
|
</mixPort>
|
|
<mixPort name="haptic" role="source">
|
|
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
|
samplingRates="48000"
|
|
channelMasks="AUDIO_CHANNEL_OUT_STEREO_HAPTIC_A" />
|
|
</mixPort>
|
|
<mixPort name="raw" role="source" flags="AUDIO_OUTPUT_FLAG_RAW AUDIO_OUTPUT_FLAG_FAST">
|
|
<profile name="" format="AUDIO_FORMAT_PCM_32_BIT"
|
|
samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
|
|
</mixPort>
|
|
<mixPort name="mmap_no_irq_out" role="source" flags="AUDIO_OUTPUT_FLAG_DIRECT AUDIO_OUTPUT_FLAG_MMAP_NOIRQ">
|
|
<profile name="" format="AUDIO_FORMAT_PCM_FLOAT"
|
|
samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
|
|
</mixPort>
|
|
<mixPort name="incall playback" role="source"
|
|
flags="AUDIO_OUTPUT_FLAG_INCALL_MUSIC">
|
|
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
|
samplingRates="48000"
|
|
channelMasks="AUDIO_CHANNEL_OUT_STEREO" />
|
|
</mixPort>
|
|
<mixPort name="voice call tx" role="source">
|
|
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
|
samplingRates="48000"
|
|
channelMasks="AUDIO_CHANNEL_OUT_STEREO" />
|
|
</mixPort>
|
|
<mixPort name="voip_rx" role="source"
|
|
flags="AUDIO_OUTPUT_FLAG_VOIP_RX">
|
|
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
|
samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
|
|
</mixPort>
|
|
<mixPort name="primary input" role="sink">
|
|
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
|
samplingRates="48000"
|
|
channelMasks="AUDIO_CHANNEL_IN_MONO AUDIO_CHANNEL_IN_STEREO"/>
|
|
</mixPort>
|
|
<mixPort name="hotword input" role="sink" flags="AUDIO_INPUT_FLAG_HW_HOTWORD" maxActiveCount="0" >
|
|
<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"/>
|
|
</mixPort>
|
|
<mixPort name="incall capture" role="sink">
|
|
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
|
samplingRates="48000"
|
|
channelMasks="AUDIO_CHANNEL_IN_MONO"/>
|
|
</mixPort>
|
|
<mixPort name="voice call rx" role="sink">
|
|
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
|
samplingRates="48000"
|
|
channelMasks="AUDIO_CHANNEL_IN_MONO"/>
|
|
</mixPort>
|
|
<mixPort name="voip_tx" role="sink"
|
|
flags="AUDIO_INPUT_FLAG_VOIP_TX">
|
|
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
|
samplingRates="48000" channelMasks="AUDIO_CHANNEL_IN_MONO"/>
|
|
</mixPort>
|
|
<mixPort name="fast input" role="sink" flags="AUDIO_INPUT_FLAG_RAW AUDIO_INPUT_FLAG_FAST">
|
|
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
|
samplingRates="48000"
|
|
channelMasks="AUDIO_CHANNEL_IN_MONO AUDIO_CHANNEL_IN_STEREO"/>
|
|
</mixPort>
|
|
<mixPort name="mmap_no_irq_in" role="sink" flags="AUDIO_INPUT_FLAG_MMAP_NOIRQ">
|
|
<profile name="" format="AUDIO_FORMAT_PCM_32_BIT"
|
|
samplingRates="48000"
|
|
channelMasks="AUDIO_CHANNEL_IN_MONO AUDIO_CHANNEL_IN_STEREO"/>
|
|
</mixPort>
|
|
<mixPort name="hifi_playback" role="source" />
|
|
<mixPort name="hifi_input" role="sink" />
|
|
<mixPort name="echo_ref_input" role="sink">
|
|
<profile name="" format="AUDIO_FORMAT_PCM_32_BIT"
|
|
samplingRates="48000"
|
|
channelMasks="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">
|
|
</devicePort>
|
|
<devicePort tagName="Speaker" type="AUDIO_DEVICE_OUT_SPEAKER" role="sink">
|
|
</devicePort>
|
|
<devicePort tagName="Speaker Safe" type="AUDIO_DEVICE_OUT_SPEAKER_SAFE" role="sink">
|
|
</devicePort>
|
|
<devicePort tagName="Wired Headset" type="AUDIO_DEVICE_OUT_WIRED_HEADSET" role="sink">
|
|
</devicePort>
|
|
<devicePort tagName="Wired Headphones" type="AUDIO_DEVICE_OUT_WIRED_HEADPHONE" role="sink">
|
|
</devicePort>
|
|
<devicePort tagName="BT SCO" type="AUDIO_DEVICE_OUT_BLUETOOTH_SCO" role="sink">
|
|
</devicePort>
|
|
<devicePort tagName="BT SCO Headset" type="AUDIO_DEVICE_OUT_BLUETOOTH_SCO_HEADSET" role="sink">
|
|
</devicePort>
|
|
<devicePort tagName="BT SCO Car Kit" type="AUDIO_DEVICE_OUT_BLUETOOTH_SCO_CARKIT" role="sink">
|
|
</devicePort>
|
|
<devicePort tagName="USB Device Out" type="AUDIO_DEVICE_OUT_USB_DEVICE" role="sink">
|
|
</devicePort>
|
|
<devicePort tagName="USB Headset Out" type="AUDIO_DEVICE_OUT_USB_HEADSET" role="sink">
|
|
</devicePort>
|
|
<devicePort tagName="Aux Digital" type="AUDIO_DEVICE_OUT_AUX_DIGITAL" role="sink">
|
|
</devicePort>
|
|
<devicePort tagName="Telephony Tx" type="AUDIO_DEVICE_OUT_TELEPHONY_TX" role="sink">
|
|
</devicePort>
|
|
<!-- Input devices declaration, i.e. Source DEVICE PORT -->
|
|
<devicePort tagName="Built-In Mic" type="AUDIO_DEVICE_IN_BUILTIN_MIC" role="source">
|
|
</devicePort>
|
|
<devicePort tagName="Built-In Back Mic" type="AUDIO_DEVICE_IN_BACK_MIC" role="source">
|
|
</devicePort>
|
|
<devicePort tagName="Wired Headset Mic" type="AUDIO_DEVICE_IN_WIRED_HEADSET" role="source">
|
|
</devicePort>
|
|
<devicePort tagName="BT SCO Headset Mic" type="AUDIO_DEVICE_IN_BLUETOOTH_SCO_HEADSET" role="source">
|
|
</devicePort>
|
|
<devicePort tagName="BT A2DP Out" type="AUDIO_DEVICE_OUT_BLUETOOTH_A2DP" role="sink"
|
|
encodedFormats="AUDIO_FORMAT_AAC AUDIO_FORMAT_SBC">
|
|
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
|
samplingRates="44100 48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
|
|
</devicePort>
|
|
<devicePort tagName="BT A2DP Headphones" type="AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES" role="sink"
|
|
encodedFormats="AUDIO_FORMAT_AAC AUDIO_FORMAT_SBC">
|
|
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
|
samplingRates="44100 48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
|
|
</devicePort>
|
|
<devicePort tagName="BT A2DP Speaker" type="AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER" role="sink"
|
|
encodedFormats="AUDIO_FORMAT_AAC AUDIO_FORMAT_SBC">
|
|
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
|
samplingRates="44100 48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
|
|
</devicePort>
|
|
<devicePort tagName="BT BLE Headset" type="AUDIO_DEVICE_OUT_BLE_HEADSET" role="sink"
|
|
encodedFormats="AUDIO_FORMAT_LC3">
|
|
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
|
samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
|
|
</devicePort>
|
|
<devicePort tagName="BT BLE Speaker" type="AUDIO_DEVICE_OUT_BLE_SPEAKER" role="sink"
|
|
encodedFormats="AUDIO_FORMAT_LC3">
|
|
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
|
samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
|
|
</devicePort>
|
|
<devicePort tagName="BT BLE Broadcast" type="AUDIO_DEVICE_OUT_BLE_BROADCAST" role="sink"
|
|
encodedFormats="AUDIO_FORMAT_LC3">
|
|
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
|
samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
|
|
</devicePort>
|
|
<devicePort tagName="BLE Headset Mic" type="AUDIO_DEVICE_IN_BLE_HEADSET" role="source">
|
|
</devicePort>
|
|
<devicePort tagName="USB Device In" type="AUDIO_DEVICE_IN_USB_DEVICE" role="source">
|
|
</devicePort>
|
|
<devicePort tagName="USB Headset In" type="AUDIO_DEVICE_IN_USB_HEADSET" role="source">
|
|
</devicePort>
|
|
<!-- AUDIO_DEVICE_IN_VOICE_CALL and AUDIO_DEVICE_IN_TELEPHONY_RX are in the same value -->
|
|
<devicePort tagName="Voice Call And Telephony Rx" type="AUDIO_DEVICE_IN_VOICE_CALL" role="source">
|
|
</devicePort>
|
|
<devicePort tagName="Echo Ref In" type="AUDIO_DEVICE_IN_ECHO_REFERENCE" role="source">
|
|
</devicePort>
|
|
</devicePorts>
|
|
<!-- route declaration, i.e. list all available sources for a given sink -->
|
|
<routes>
|
|
<route type="mix" sink="Speaker"
|
|
sources="primary output,deep buffer,haptic,raw,mmap_no_irq_out,voip_rx,compressed_offload"/>
|
|
<route type="mix" sink="Speaker Safe"
|
|
sources="primary output,deep buffer,haptic,raw,mmap_no_irq_out,voip_rx,compressed_offload"/>
|
|
<route type="mix" sink="Earpiece"
|
|
sources="primary output,deep buffer,haptic,raw,mmap_no_irq_out,voip_rx,compressed_offload"/>
|
|
<route type="mix" sink="BT A2DP Out"
|
|
sources="primary output,deep buffer,haptic,voip_rx,compressed_offload,raw,mmap_no_irq_out"/>
|
|
<route type="mix" sink="BT A2DP Headphones"
|
|
sources="primary output,deep buffer,haptic,voip_rx,compressed_offload,raw,mmap_no_irq_out"/>
|
|
<route type="mix" sink="BT A2DP Speaker"
|
|
sources="primary output,deep buffer,haptic,voip_rx,compressed_offload,raw,mmap_no_irq_out"/>
|
|
<route type="mix" sink="BT BLE Headset"
|
|
sources="primary output,deep buffer,haptic,compressed_offload,voip_rx,raw,mmap_no_irq_out"/>
|
|
<route type="mix" sink="BT BLE Speaker"
|
|
sources="primary output,deep buffer,haptic,compressed_offload,voip_rx,raw,mmap_no_irq_out"/>
|
|
<route type="mix" sink="BT BLE Broadcast"
|
|
sources="primary output,deep buffer,haptic,compressed_offload,voip_rx,raw,mmap_no_irq_out"/>
|
|
<route type="mix" sink="USB Device Out"
|
|
sources="primary output,deep buffer,haptic,raw,mmap_no_irq_out,voip_rx,hifi_playback,compressed_offload"/>
|
|
<route type="mix" sink="USB Headset Out"
|
|
sources="primary output,deep buffer,haptic,raw,mmap_no_irq_out,voip_rx,hifi_playback,compressed_offload"/>
|
|
<route type="mix" sink="BT SCO"
|
|
sources="primary output,deep buffer,haptic,voip_rx,compressed_offload,raw,mmap_no_irq_out"/>
|
|
<route type="mix" sink="BT SCO Headset"
|
|
sources="primary output,deep buffer,haptic,voip_rx,compressed_offload,raw,mmap_no_irq_out"/>
|
|
<route type="mix" sink="BT SCO Car Kit"
|
|
sources="primary output,deep buffer,haptic,voip_rx,compressed_offload,raw,mmap_no_irq_out"/>
|
|
<route type="mix" sink="Telephony Tx" sources="incall playback,voice call tx" />
|
|
<route type="mix" sink="primary input"
|
|
sources="Built-In Mic,Built-In Back Mic,USB Device In,USB Headset In,BT SCO Headset Mic,BLE Headset Mic"/>
|
|
<route type="mix" sink="hotword input"
|
|
sources="Built-In Mic,Built-In Back Mic,USB Device In,USB Headset In,BT SCO Headset Mic,BLE Headset Mic"/>
|
|
<route type="mix" sink="incall capture" sources="Voice Call And Telephony Rx" />
|
|
<route type="mix" sink="voice call rx" sources="Voice Call And Telephony Rx" />
|
|
<route type="mix" sink="voip_tx"
|
|
sources="Built-In Mic,Built-In Back Mic,USB Device In,USB Headset In,BT SCO Headset Mic,BLE Headset Mic"/>
|
|
<route type="mix" sink="fast input"
|
|
sources="Built-In Mic,Built-In Back Mic,USB Device In,USB Headset In,BT SCO Headset Mic,BLE Headset Mic"/>
|
|
<route type="mix" sink="mmap_no_irq_in"
|
|
sources="Built-In Mic,Built-In Back Mic,USB Device In,USB Headset In,BT SCO Headset Mic,BLE Headset Mic"/>
|
|
<route type="mix" sink="hifi_input" sources="USB Device In,USB Headset In" />
|
|
<route type="mix" sink="echo_ref_input" sources="Echo Ref In"/>
|
|
</routes>
|
|
</module>
|
|
<!-- Bluetooth Audio HAL -->
|
|
<xi:include href="bluetooth_audio_policy_configuration_7_0.xml"/>
|
|
<!-- Usb Audio HAL -->
|
|
<module name="usbv2" halVersion="2.0">
|
|
<mixPorts>
|
|
<mixPort name="usb_accessory output" role="source">
|
|
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
|
samplingRates="44100" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
|
|
</mixPort>
|
|
</mixPorts>
|
|
<devicePorts>
|
|
<devicePort tagName="USB Host Out" type="AUDIO_DEVICE_OUT_USB_ACCESSORY" role="sink">
|
|
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
|
samplingRates="44100" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
|
|
</devicePort>
|
|
</devicePorts>
|
|
<routes>
|
|
<route type="mix" sink="USB Host Out"
|
|
sources="usb_accessory output"/>
|
|
</routes>
|
|
</module>
|
|
<!-- 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>
|