Snap for 7246408 from 038dc0267a to sc-v2-release

Change-Id: I5ee1406ebaeef1ad7733416b79d4b4f8c34d6466
This commit is contained in:
android-build-team Robot 2021-03-31 01:01:46 +00:00
commit 2578d7d637
22 changed files with 554 additions and 393 deletions

View file

@ -124,9 +124,13 @@
<usecase id="UC_COMPRESSED_OFFLOAD_PLAYBACK" dev1="6" dyn_path="true" dsp_vol="true" mmap="false" period="131072" period_num="4" pre_proc_id="14"/> <usecase id="UC_COMPRESSED_OFFLOAD_PLAYBACK" dev1="6" dyn_path="true" dsp_vol="true" mmap="false" period="131072" period_num="4" pre_proc_id="14"/>
<!-- dev1: audio dev2: haptic --> <!-- dev1: audio dev2: haptic -->
<usecase id="UC_HAPTIC_AUDIO" dev1="2" dev2="7" period="10" period_num="4"/> <usecase id="UC_HAPTIC_AUDIO" dev1="2" dev2="7" period="10" period_num="4"/>
<!-- for VOIP output, 4 * 10ms buffer -->
<usecase id="UC_VOIP_PLAYBACK" dev1="16" dyn_path="true" dsp_vol="true" mmap="false" period="10" period_num="4"/>
<!-- for input --> <!-- for input -->
<usecase id="UC_AUDIO_RECORD" dev1="8" dyn_path="true" dsp_vol="false" mmap="false" period="10" period_num="4"/> <usecase id="UC_AUDIO_RECORD" dev1="8" dyn_path="true" dsp_vol="false" mmap="false" period="10" period_num="4"/>
<usecase id="UC_HOSTLESS_UL" dev1="15"/> <usecase id="UC_HOSTLESS_UL" dev1="15"/>
<!-- for VOIP input, 4 * 10ms buffer -->
<usecase id="UC_VOIP_RECORD" dev1="17" dyn_path="true" dsp_vol="false" mmap="false" period="10" period_num="4"/>
</usecase_attr> </usecase_attr>
<dsp_latency> <dsp_latency>
@ -179,6 +183,10 @@
<item component="TUNING_COMPONENT_CAMCORDER" id="6"/> <item component="TUNING_COMPONENT_CAMCORDER" id="6"/>
</xlate_id> </xlate_id>
<voip_db_mapping>
<voip_path id="VOIP_RX_USB" value="0.01,0.02,0.04,0.1,0.21,0.47,1.0"/>
</voip_db_mapping>
<device_handle> <device_handle>
<hadnler libname="audio_bt_aoc.so"/> <hadnler libname="audio_bt_aoc.so"/>
</device_handle> </device_handle>

View file

@ -72,6 +72,11 @@
samplingRates="48000" samplingRates="48000"
channelMasks="AUDIO_CHANNEL_OUT_STEREO" /> channelMasks="AUDIO_CHANNEL_OUT_STEREO" />
</mixPort> </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"> <mixPort name="primary input" role="sink">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT" <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="48000" samplingRates="48000"
@ -92,6 +97,11 @@
samplingRates="48000" samplingRates="48000"
channelMasks="AUDIO_CHANNEL_IN_MONO"/> channelMasks="AUDIO_CHANNEL_IN_MONO"/>
</mixPort> </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>
</mixPorts> </mixPorts>
<devicePorts> <devicePorts>
<!-- Output devices declaration, i.e. Sink DEVICE PORT --> <!-- Output devices declaration, i.e. Sink DEVICE PORT -->
@ -154,34 +164,36 @@
<!-- route declaration, i.e. list all available sources for a given sink --> <!-- route declaration, i.e. list all available sources for a given sink -->
<routes> <routes>
<route type="mix" sink="Speaker" <route type="mix" sink="Speaker"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/> sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Speaker Safe" <route type="mix" sink="Speaker Safe"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/> sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Earpiece" <route type="mix" sink="Earpiece"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/> sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="BT A2DP Out"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="BT A2DP Headphones"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="BT A2DP Speaker"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="USB Device Out"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="USB Headset Out"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="BT SCO"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="BT SCO Headset"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="BT SCO Car Kit"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Telephony Tx" sources="incall playback,voice call tx" />
<route type="mix" sink="primary input" <route type="mix" sink="primary input"
sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/> sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
<route type="mix" sink="hotword input" <route type="mix" sink="hotword input"
sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/> sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
<route type="mix" sink="incall capture" sources="Voice Call And Telephony Rx" /> <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="voice call rx" sources="Voice Call And Telephony Rx" />
<route type="mix" sink="BT A2DP Out" <route type="mix" sink="voip_tx"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/> sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
<route type="mix" sink="BT A2DP Headphones"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="BT A2DP Speaker"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="USB Device Out"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="USB Headset Out"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="BT SCO"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="BT SCO Headset"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="BT SCO Car Kit"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="Telephony Tx" sources="incall playback,voice call tx" />
</routes> </routes>
</module> </module>
<!-- Bluetooth Audio HAL --> <!-- Bluetooth Audio HAL -->

View file

@ -72,6 +72,11 @@
samplingRates="48000" samplingRates="48000"
channelMasks="AUDIO_CHANNEL_OUT_STEREO" /> channelMasks="AUDIO_CHANNEL_OUT_STEREO" />
</mixPort> </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"> <mixPort name="primary input" role="sink">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT" <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="48000" samplingRates="48000"
@ -92,6 +97,11 @@
samplingRates="48000" samplingRates="48000"
channelMasks="AUDIO_CHANNEL_IN_MONO"/> channelMasks="AUDIO_CHANNEL_IN_MONO"/>
</mixPort> </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>
</mixPorts> </mixPorts>
<devicePorts> <devicePorts>
<!-- Output devices declaration, i.e. Sink DEVICE PORT --> <!-- Output devices declaration, i.e. Sink DEVICE PORT -->
@ -139,28 +149,30 @@
<!-- route declaration, i.e. list all available sources for a given sink --> <!-- route declaration, i.e. list all available sources for a given sink -->
<routes> <routes>
<route type="mix" sink="Speaker" <route type="mix" sink="Speaker"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/> sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Speaker Safe" <route type="mix" sink="Speaker Safe"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/> sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Earpiece" <route type="mix" sink="Earpiece"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/> sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="USB Device Out"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="USB Headset Out"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="BT SCO"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="BT SCO Headset"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="BT SCO Car Kit"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Telephony Tx" sources="incall playback,voice call tx" />
<route type="mix" sink="primary input" <route type="mix" sink="primary input"
sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/> sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
<route type="mix" sink="hotword input" <route type="mix" sink="hotword input"
sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/> sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
<route type="mix" sink="incall capture" sources="Voice Call And Telephony Rx" /> <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="voice call rx" sources="Voice Call And Telephony Rx" />
<route type="mix" sink="USB Device Out" <route type="mix" sink="voip_tx"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/> sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
<route type="mix" sink="USB Headset Out"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="BT SCO"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="BT SCO Headset"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="BT SCO Car Kit"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="Telephony Tx" sources="incall playback,voice call tx" />
</routes> </routes>
</module> </module>
<!-- Bluetooth Audio HAL --> <!-- Bluetooth Audio HAL -->

View file

@ -72,6 +72,11 @@
samplingRates="48000" samplingRates="48000"
channelMasks="AUDIO_CHANNEL_OUT_STEREO" /> channelMasks="AUDIO_CHANNEL_OUT_STEREO" />
</mixPort> </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"> <mixPort name="primary input" role="sink">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT" <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="48000" samplingRates="48000"
@ -92,6 +97,11 @@
samplingRates="48000" samplingRates="48000"
channelMasks="AUDIO_CHANNEL_IN_MONO"/> channelMasks="AUDIO_CHANNEL_IN_MONO"/>
</mixPort> </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>
</mixPorts> </mixPorts>
<devicePorts> <devicePorts>
<!-- Output devices declaration, i.e. Sink DEVICE PORT --> <!-- Output devices declaration, i.e. Sink DEVICE PORT -->
@ -139,28 +149,30 @@
<!-- route declaration, i.e. list all available sources for a given sink --> <!-- route declaration, i.e. list all available sources for a given sink -->
<routes> <routes>
<route type="mix" sink="Speaker" <route type="mix" sink="Speaker"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/> sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Speaker Safe" <route type="mix" sink="Speaker Safe"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/> sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Earpiece" <route type="mix" sink="Earpiece"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/> sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="USB Device Out"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="USB Headset Out"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="BT SCO"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="BT SCO Headset"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="BT SCO Car Kit"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Telephony Tx" sources="incall playback,voice call tx" />
<route type="mix" sink="primary input" <route type="mix" sink="primary input"
sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/> sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
<route type="mix" sink="hotword input" <route type="mix" sink="hotword input"
sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/> sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
<route type="mix" sink="incall capture" sources="Voice Call And Telephony Rx" /> <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="voice call rx" sources="Voice Call And Telephony Rx" />
<route type="mix" sink="USB Device Out" <route type="mix" sink="voip_tx"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/> sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
<route type="mix" sink="USB Headset Out"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="BT SCO"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="BT SCO Headset"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="BT SCO Car Kit"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="Telephony Tx" sources="incall playback,voice call tx" />
</routes> </routes>
</module> </module>
<!-- A2dp Audio HAL --> <!-- A2dp Audio HAL -->

View file

@ -26,6 +26,9 @@
<!-- IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. --> <!-- IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -->
<mixer> <mixer>
<!-- Initial default value of ALSA command --> <!-- Initial default value of ALSA command -->
<!-- PCM timeout -->
<ctl name="PCM Stream Wait Time in MSec" value="500"/>
<!-- TDM 0 setting --> <!-- TDM 0 setting -->
<ctl name="TDM_0_RX Chan" value="Four"/> <ctl name="TDM_0_RX Chan" value="Four"/>
<ctl name="TDM_0_RX Format" value="S32_LE"/> <ctl name="TDM_0_RX Format" value="S32_LE"/>
@ -98,6 +101,7 @@
<ctl name="TDM_0_RX Mixer EP7" value="0"/> <ctl name="TDM_0_RX Mixer EP7" value="0"/>
<ctl name="TDM_0_RX Mixer EP8" value="0"/> <ctl name="TDM_0_RX Mixer EP8" value="0"/>
<ctl name="TDM_0_RX Mixer NoHost1" value="0"/> <ctl name="TDM_0_RX Mixer NoHost1" value="0"/>
<ctl name="TDM_0_RX Mixer VOIP" value="0"/>
<ctl name="TDM_1_RX Mixer EP1" value="0"/> <ctl name="TDM_1_RX Mixer EP1" value="0"/>
<ctl name="TDM_1_RX Mixer EP2" value="0"/> <ctl name="TDM_1_RX Mixer EP2" value="0"/>
@ -117,6 +121,7 @@
<ctl name="USB_RX Mixer EP6" value="0"/> <ctl name="USB_RX Mixer EP6" value="0"/>
<ctl name="USB_RX Mixer EP7" value="0"/> <ctl name="USB_RX Mixer EP7" value="0"/>
<ctl name="USB_RX Mixer NoHost1" value="0"/> <ctl name="USB_RX Mixer NoHost1" value="0"/>
<ctl name="USB_RX Mixer VOIP" value="0"/>
<ctl name="BT_RX Mixer EP1" value="0"/> <ctl name="BT_RX Mixer EP1" value="0"/>
<ctl name="BT_RX Mixer EP2" value="0"/> <ctl name="BT_RX Mixer EP2" value="0"/>
@ -126,6 +131,7 @@
<ctl name="BT_RX Mixer EP6" value="0"/> <ctl name="BT_RX Mixer EP6" value="0"/>
<ctl name="BT_RX Mixer EP7" value="0"/> <ctl name="BT_RX Mixer EP7" value="0"/>
<ctl name="BT_RX Mixer NoHost1" value="0"/> <ctl name="BT_RX Mixer NoHost1" value="0"/>
<ctl name="BT_RX Mixer VOIP" value="0"/>
<ctl name="INCALL_RX Mixer EP1" value="0"/> <ctl name="INCALL_RX Mixer EP1" value="0"/>
<ctl name="INCALL_RX Mixer EP2" value="0"/> <ctl name="INCALL_RX Mixer EP2" value="0"/>
@ -163,6 +169,7 @@
<ctl name="EP5 TX Mixer INTERNAL_MIC_TX" value="0"/> <ctl name="EP5 TX Mixer INTERNAL_MIC_TX" value="0"/>
<ctl name="EP6 TX Mixer INTERNAL_MIC_TX" value="0"/> <ctl name="EP6 TX Mixer INTERNAL_MIC_TX" value="0"/>
<ctl name="NoHost1 TX Mixer INTERNAL_MIC_TX" value="0"/> <ctl name="NoHost1 TX Mixer INTERNAL_MIC_TX" value="0"/>
<ctl name="VOIP TX Mixer INTERNAL_MIC_TX" value="0"/>
<ctl name="EP1 TX Mixer BT_TX" value="0"/> <ctl name="EP1 TX Mixer BT_TX" value="0"/>
<ctl name="EP2 TX Mixer BT_TX" value="0"/> <ctl name="EP2 TX Mixer BT_TX" value="0"/>
@ -171,6 +178,7 @@
<ctl name="EP5 TX Mixer BT_TX" value="0"/> <ctl name="EP5 TX Mixer BT_TX" value="0"/>
<ctl name="EP6 TX Mixer BT_TX" value="0"/> <ctl name="EP6 TX Mixer BT_TX" value="0"/>
<ctl name="NoHost1 TX Mixer BT_TX" value="0"/> <ctl name="NoHost1 TX Mixer BT_TX" value="0"/>
<ctl name="VOIP TX Mixer BT_TX" value="0"/>
<ctl name="EP1 TX Mixer USB_TX" value="0"/> <ctl name="EP1 TX Mixer USB_TX" value="0"/>
<ctl name="EP2 TX Mixer USB_TX" value="0"/> <ctl name="EP2 TX Mixer USB_TX" value="0"/>
@ -179,6 +187,7 @@
<ctl name="EP5 TX Mixer USB_TX" value="0"/> <ctl name="EP5 TX Mixer USB_TX" value="0"/>
<ctl name="EP6 TX Mixer USB_TX" value="0"/> <ctl name="EP6 TX Mixer USB_TX" value="0"/>
<ctl name="NoHost1 TX Mixer USB_TX" value="0"/> <ctl name="NoHost1 TX Mixer USB_TX" value="0"/>
<ctl name="VOIP TX Mixer USB_TX" value="0"/>
<ctl name="EP1 TX Mixer INCALL_TX" value="0"/> <ctl name="EP1 TX Mixer INCALL_TX" value="0"/>
<ctl name="EP2 TX Mixer INCALL_TX" value="0"/> <ctl name="EP2 TX Mixer INCALL_TX" value="0"/>
@ -320,15 +329,6 @@
<ctl name="USB_RX Mixer EP6" value="1"/> <ctl name="USB_RX Mixer EP6" value="1"/>
</path> </path>
<path name="deep-buffer-playbackP usb-tty-full">
</path>
<path name="deep-buffer-playbackP usb-tty-hco">
</path>
<path name="deep-buffer-playbackP usb-tty-vco">
</path>
<path name="deep-buffer-playbackP hearing-aid"> <path name="deep-buffer-playbackP hearing-aid">
</path> </path>
@ -356,15 +356,6 @@
<ctl name="USB_RX Mixer EP2" value="1"/> <ctl name="USB_RX Mixer EP2" value="1"/>
</path> </path>
<path name="low-latency-playbackP usb-tty-full">
</path>
<path name="low-latency-playbackP usb-tty-hco">
</path>
<path name="low-latency-playbackP usb-tty-vco">
</path>
<path name="low-latency-playbackP hearing-aid"> <path name="low-latency-playbackP hearing-aid">
</path> </path>
@ -392,15 +383,6 @@
<ctl name="USB_RX Mixer EP4" value="1"/> <ctl name="USB_RX Mixer EP4" value="1"/>
</path> </path>
<path name="raw-playbackP usb-tty-full">
</path>
<path name="raw-playbackP usb-tty-hco">
</path>
<path name="raw-playbackP usb-tty-vco">
</path>
<path name="raw-playbackP hearing-aid"> <path name="raw-playbackP hearing-aid">
</path> </path>
@ -470,38 +452,23 @@
<ctl name="USB_RX Mixer EP7" value="1"/> <ctl name="USB_RX Mixer EP7" value="1"/>
</path> </path>
<path name="compress-offload-playbackP usb-tty-full">
</path>
<path name="compress-offload-playbackP usb-tty-hco">
</path>
<path name="compress-offload-playbackP usb-tty-vco">
</path>
<path name="compress-offload-playbackP hearing-aid"> <path name="compress-offload-playbackP hearing-aid">
<path name="compress-offload-playback" /> <path name="compress-offload-playback" />
</path> </path>
<path name="voip-playbackP"> <path name="voip-playbackP">
<ctl name="TDM_0_RX Mixer VOIP" value="1"/>
</path> </path>
<path name="voip-playbackP hac-handset"> <path name="voip-playbackP hac-handset">
</path> </path>
<path name="voip-playbackP bt"> <path name="voip-playbackP bt">
<ctl name="BT_RX Mixer VOIP" value="1"/>
</path> </path>
<path name="voip-playbackP usb-headphone"> <path name="voip-playbackP usb-headphone">
</path> <ctl name="USB_RX Mixer VOIP" value="1"/>
<path name="voip-playbackP usb-tty-full">
</path>
<path name="voip-playbackP usb-tty-hco">
</path>
<path name="voip-playbackP usb-tty-vco">
</path> </path>
<path name="voip-playbackP hearing-aid"> <path name="voip-playbackP hearing-aid">
@ -548,31 +515,16 @@
<ctl name="EP1 TX Mixer BT_TX" value="1"/> <ctl name="EP1 TX Mixer BT_TX" value="1"/>
</path> </path>
<path name="audio-recordC usb-tty-full-mic">
</path>
<path name="audio-recordC usb-tty-hco-mic">
</path>
<path name="audio-recordC usb-tty-vco-mic">
</path>
<path name="voip-recordC"> <path name="voip-recordC">
<ctl name="VOIP TX Mixer INTERNAL_MIC_TX" value="1"/>
</path> </path>
<path name="voip-recordC usb-headset-mic"> <path name="voip-recordC usb-headset-mic">
<ctl name="VOIP TX Mixer USB_TX" value="1"/>
</path> </path>
<path name="voip-recordC bt-mic"> <path name="voip-recordC bt-mic">
</path> <ctl name="VOIP TX Mixer BT_TX" value="1"/>
<path name="voip-recordC usb-tty-full-mic">
</path>
<path name="voip-recordC usb-tty-hco-mic">
</path>
<path name="voip-recordC usb-tty-vco-mic">
</path> </path>
<!-- voice-call dynamic route --> <!-- voice-call dynamic route -->
@ -588,15 +540,6 @@
<ctl name="USB_RX Mixer EP5" value="1"/> <ctl name="USB_RX Mixer EP5" value="1"/>
</path> </path>
<path name="voice-callP usb-tty-full">
</path>
<path name="voice-callP usb-tty-hco">
</path>
<path name="voice-callP usb-tty-vco">
</path>
<path name="voice-callP hearing-aid"> <path name="voice-callP hearing-aid">
<ctl name="INCALL_RX Mixer EP5" value="1"/> <ctl name="INCALL_RX Mixer EP5" value="1"/>
</path> </path>
@ -618,15 +561,6 @@
<ctl name="EP4 TX Mixer BT_TX" value="1"/> <ctl name="EP4 TX Mixer BT_TX" value="1"/>
</path> </path>
<path name="voice-callC usb-tty-full-mic">
</path>
<path name="voice-callC usb-tty-hco-mic">
</path>
<path name="voice-callC usb-tty-vco-mic">
</path>
<path name="voice-callC hearing-aid"> <path name="voice-callC hearing-aid">
<ctl name="EP4 TX Mixer INCALL_TX" value="1"/> <ctl name="EP4 TX Mixer INCALL_TX" value="1"/>
</path> </path>

View file

@ -124,9 +124,13 @@
<usecase id="UC_COMPRESSED_OFFLOAD_PLAYBACK" dev1="6" dyn_path="true" dsp_vol="true" mmap="false" period="131072" period_num="4" pre_proc_id="14"/> <usecase id="UC_COMPRESSED_OFFLOAD_PLAYBACK" dev1="6" dyn_path="true" dsp_vol="true" mmap="false" period="131072" period_num="4" pre_proc_id="14"/>
<!-- dev1: audio dev2: haptic --> <!-- dev1: audio dev2: haptic -->
<usecase id="UC_HAPTIC_AUDIO" dev1="2" dev2="7" period="10" period_num="4"/> <usecase id="UC_HAPTIC_AUDIO" dev1="2" dev2="7" period="10" period_num="4"/>
<!-- for VOIP output, 4 * 10ms buffer -->
<usecase id="UC_VOIP_PLAYBACK" dev1="16" dyn_path="true" dsp_vol="true" mmap="false" period="10" period_num="4"/>
<!-- for input --> <!-- for input -->
<usecase id="UC_AUDIO_RECORD" dev1="8" dyn_path="true" dsp_vol="false" mmap="false" period="10" period_num="4"/> <usecase id="UC_AUDIO_RECORD" dev1="8" dyn_path="true" dsp_vol="false" mmap="false" period="10" period_num="4"/>
<usecase id="UC_HOSTLESS_UL" dev1="15"/> <usecase id="UC_HOSTLESS_UL" dev1="15"/>
<!-- for VOIP input, 4 * 10ms buffer -->
<usecase id="UC_VOIP_RECORD" dev1="17" dyn_path="true" dsp_vol="false" mmap="false" period="10" period_num="4"/>
</usecase_attr> </usecase_attr>
<dsp_latency> <dsp_latency>
@ -179,6 +183,10 @@
<item component="TUNING_COMPONENT_CAMCORDER" id="6"/> <item component="TUNING_COMPONENT_CAMCORDER" id="6"/>
</xlate_id> </xlate_id>
<voip_db_mapping>
<voip_path id="VOIP_RX_USB" value="0.01,0.02,0.04,0.1,0.21,0.47,1.0"/>
</voip_db_mapping>
<device_handle> <device_handle>
<hadnler libname="audio_bt_aoc.so"/> <hadnler libname="audio_bt_aoc.so"/>
</device_handle> </device_handle>

View file

@ -72,6 +72,11 @@
samplingRates="48000" samplingRates="48000"
channelMasks="AUDIO_CHANNEL_OUT_STEREO" /> channelMasks="AUDIO_CHANNEL_OUT_STEREO" />
</mixPort> </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"> <mixPort name="primary input" role="sink">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT" <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="48000" samplingRates="48000"
@ -92,6 +97,11 @@
samplingRates="48000" samplingRates="48000"
channelMasks="AUDIO_CHANNEL_IN_MONO"/> channelMasks="AUDIO_CHANNEL_IN_MONO"/>
</mixPort> </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>
</mixPorts> </mixPorts>
<devicePorts> <devicePorts>
<!-- Output devices declaration, i.e. Sink DEVICE PORT --> <!-- Output devices declaration, i.e. Sink DEVICE PORT -->
@ -154,34 +164,36 @@
<!-- route declaration, i.e. list all available sources for a given sink --> <!-- route declaration, i.e. list all available sources for a given sink -->
<routes> <routes>
<route type="mix" sink="Speaker" <route type="mix" sink="Speaker"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/> sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Speaker Safe" <route type="mix" sink="Speaker Safe"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/> sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Earpiece" <route type="mix" sink="Earpiece"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/> sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="BT A2DP Out"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="BT A2DP Headphones"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="BT A2DP Speaker"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="USB Device Out"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="USB Headset Out"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="BT SCO"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="BT SCO Headset"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="BT SCO Car Kit"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Telephony Tx" sources="incall playback,voice call tx" />
<route type="mix" sink="primary input" <route type="mix" sink="primary input"
sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/> sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
<route type="mix" sink="hotword input" <route type="mix" sink="hotword input"
sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/> sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
<route type="mix" sink="incall capture" sources="Voice Call And Telephony Rx" /> <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="voice call rx" sources="Voice Call And Telephony Rx" />
<route type="mix" sink="BT A2DP Out" <route type="mix" sink="voip_tx"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/> sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
<route type="mix" sink="BT A2DP Headphones"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="BT A2DP Speaker"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="USB Device Out"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="USB Headset Out"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="BT SCO"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="BT SCO Headset"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="BT SCO Car Kit"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="Telephony Tx" sources="incall playback,voice call tx" />
</routes> </routes>
</module> </module>
<!-- Bluetooth Audio HAL --> <!-- Bluetooth Audio HAL -->

View file

@ -72,6 +72,11 @@
samplingRates="48000" samplingRates="48000"
channelMasks="AUDIO_CHANNEL_OUT_STEREO" /> channelMasks="AUDIO_CHANNEL_OUT_STEREO" />
</mixPort> </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"> <mixPort name="primary input" role="sink">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT" <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="48000" samplingRates="48000"
@ -92,6 +97,11 @@
samplingRates="48000" samplingRates="48000"
channelMasks="AUDIO_CHANNEL_IN_MONO"/> channelMasks="AUDIO_CHANNEL_IN_MONO"/>
</mixPort> </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>
</mixPorts> </mixPorts>
<devicePorts> <devicePorts>
<!-- Output devices declaration, i.e. Sink DEVICE PORT --> <!-- Output devices declaration, i.e. Sink DEVICE PORT -->
@ -139,28 +149,30 @@
<!-- route declaration, i.e. list all available sources for a given sink --> <!-- route declaration, i.e. list all available sources for a given sink -->
<routes> <routes>
<route type="mix" sink="Speaker" <route type="mix" sink="Speaker"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/> sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Speaker Safe" <route type="mix" sink="Speaker Safe"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/> sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Earpiece" <route type="mix" sink="Earpiece"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/> sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="USB Device Out"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="USB Headset Out"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="BT SCO"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="BT SCO Headset"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="BT SCO Car Kit"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Telephony Tx" sources="incall playback,voice call tx" />
<route type="mix" sink="primary input" <route type="mix" sink="primary input"
sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/> sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
<route type="mix" sink="hotword input" <route type="mix" sink="hotword input"
sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/> sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
<route type="mix" sink="incall capture" sources="Voice Call And Telephony Rx" /> <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="voice call rx" sources="Voice Call And Telephony Rx" />
<route type="mix" sink="USB Device Out" <route type="mix" sink="voip_tx"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/> sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
<route type="mix" sink="USB Headset Out"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="BT SCO"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="BT SCO Headset"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="BT SCO Car Kit"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="Telephony Tx" sources="incall playback,voice call tx" />
</routes> </routes>
</module> </module>
<!-- Bluetooth Audio HAL --> <!-- Bluetooth Audio HAL -->

View file

@ -72,6 +72,11 @@
samplingRates="48000" samplingRates="48000"
channelMasks="AUDIO_CHANNEL_OUT_STEREO" /> channelMasks="AUDIO_CHANNEL_OUT_STEREO" />
</mixPort> </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"> <mixPort name="primary input" role="sink">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT" <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="48000" samplingRates="48000"
@ -92,6 +97,11 @@
samplingRates="48000" samplingRates="48000"
channelMasks="AUDIO_CHANNEL_IN_MONO"/> channelMasks="AUDIO_CHANNEL_IN_MONO"/>
</mixPort> </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>
</mixPorts> </mixPorts>
<devicePorts> <devicePorts>
<!-- Output devices declaration, i.e. Sink DEVICE PORT --> <!-- Output devices declaration, i.e. Sink DEVICE PORT -->
@ -139,28 +149,30 @@
<!-- route declaration, i.e. list all available sources for a given sink --> <!-- route declaration, i.e. list all available sources for a given sink -->
<routes> <routes>
<route type="mix" sink="Speaker" <route type="mix" sink="Speaker"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/> sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Speaker Safe" <route type="mix" sink="Speaker Safe"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/> sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Earpiece" <route type="mix" sink="Earpiece"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/> sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="USB Device Out"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="USB Headset Out"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="BT SCO"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="BT SCO Headset"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="BT SCO Car Kit"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Telephony Tx" sources="incall playback,voice call tx" />
<route type="mix" sink="primary input" <route type="mix" sink="primary input"
sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/> sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
<route type="mix" sink="hotword input" <route type="mix" sink="hotword input"
sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/> sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
<route type="mix" sink="incall capture" sources="Voice Call And Telephony Rx" /> <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="voice call rx" sources="Voice Call And Telephony Rx" />
<route type="mix" sink="USB Device Out" <route type="mix" sink="voip_tx"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/> sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
<route type="mix" sink="USB Headset Out"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="BT SCO"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="BT SCO Headset"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="BT SCO Car Kit"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="Telephony Tx" sources="incall playback,voice call tx" />
</routes> </routes>
</module> </module>
<!-- A2dp Audio HAL --> <!-- A2dp Audio HAL -->

View file

@ -26,6 +26,9 @@
<!-- IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. --> <!-- IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -->
<mixer> <mixer>
<!-- Initial default value of ALSA command --> <!-- Initial default value of ALSA command -->
<!-- PCM timeout -->
<ctl name="PCM Stream Wait Time in MSec" value="500"/>
<!-- TDM 0 setting --> <!-- TDM 0 setting -->
<ctl name="TDM_0_RX Chan" value="Four"/> <ctl name="TDM_0_RX Chan" value="Four"/>
<ctl name="TDM_0_RX Format" value="S32_LE"/> <ctl name="TDM_0_RX Format" value="S32_LE"/>
@ -98,6 +101,7 @@
<ctl name="TDM_0_RX Mixer EP7" value="0"/> <ctl name="TDM_0_RX Mixer EP7" value="0"/>
<ctl name="TDM_0_RX Mixer EP8" value="0"/> <ctl name="TDM_0_RX Mixer EP8" value="0"/>
<ctl name="TDM_0_RX Mixer NoHost1" value="0"/> <ctl name="TDM_0_RX Mixer NoHost1" value="0"/>
<ctl name="TDM_0_RX Mixer VOIP" value="0"/>
<ctl name="TDM_1_RX Mixer EP1" value="0"/> <ctl name="TDM_1_RX Mixer EP1" value="0"/>
<ctl name="TDM_1_RX Mixer EP2" value="0"/> <ctl name="TDM_1_RX Mixer EP2" value="0"/>
@ -117,6 +121,7 @@
<ctl name="USB_RX Mixer EP6" value="0"/> <ctl name="USB_RX Mixer EP6" value="0"/>
<ctl name="USB_RX Mixer EP7" value="0"/> <ctl name="USB_RX Mixer EP7" value="0"/>
<ctl name="USB_RX Mixer NoHost1" value="0"/> <ctl name="USB_RX Mixer NoHost1" value="0"/>
<ctl name="USB_RX Mixer VOIP" value="0"/>
<ctl name="BT_RX Mixer EP1" value="0"/> <ctl name="BT_RX Mixer EP1" value="0"/>
<ctl name="BT_RX Mixer EP2" value="0"/> <ctl name="BT_RX Mixer EP2" value="0"/>
@ -126,6 +131,7 @@
<ctl name="BT_RX Mixer EP6" value="0"/> <ctl name="BT_RX Mixer EP6" value="0"/>
<ctl name="BT_RX Mixer EP7" value="0"/> <ctl name="BT_RX Mixer EP7" value="0"/>
<ctl name="BT_RX Mixer NoHost1" value="0"/> <ctl name="BT_RX Mixer NoHost1" value="0"/>
<ctl name="BT_RX Mixer VOIP" value="0"/>
<ctl name="INCALL_RX Mixer EP1" value="0"/> <ctl name="INCALL_RX Mixer EP1" value="0"/>
<ctl name="INCALL_RX Mixer EP2" value="0"/> <ctl name="INCALL_RX Mixer EP2" value="0"/>
@ -163,6 +169,7 @@
<ctl name="EP5 TX Mixer INTERNAL_MIC_TX" value="0"/> <ctl name="EP5 TX Mixer INTERNAL_MIC_TX" value="0"/>
<ctl name="EP6 TX Mixer INTERNAL_MIC_TX" value="0"/> <ctl name="EP6 TX Mixer INTERNAL_MIC_TX" value="0"/>
<ctl name="NoHost1 TX Mixer INTERNAL_MIC_TX" value="0"/> <ctl name="NoHost1 TX Mixer INTERNAL_MIC_TX" value="0"/>
<ctl name="VOIP TX Mixer INTERNAL_MIC_TX" value="0"/>
<ctl name="EP1 TX Mixer BT_TX" value="0"/> <ctl name="EP1 TX Mixer BT_TX" value="0"/>
<ctl name="EP2 TX Mixer BT_TX" value="0"/> <ctl name="EP2 TX Mixer BT_TX" value="0"/>
@ -171,6 +178,7 @@
<ctl name="EP5 TX Mixer BT_TX" value="0"/> <ctl name="EP5 TX Mixer BT_TX" value="0"/>
<ctl name="EP6 TX Mixer BT_TX" value="0"/> <ctl name="EP6 TX Mixer BT_TX" value="0"/>
<ctl name="NoHost1 TX Mixer BT_TX" value="0"/> <ctl name="NoHost1 TX Mixer BT_TX" value="0"/>
<ctl name="VOIP TX Mixer BT_TX" value="0"/>
<ctl name="EP1 TX Mixer USB_TX" value="0"/> <ctl name="EP1 TX Mixer USB_TX" value="0"/>
<ctl name="EP2 TX Mixer USB_TX" value="0"/> <ctl name="EP2 TX Mixer USB_TX" value="0"/>
@ -179,6 +187,7 @@
<ctl name="EP5 TX Mixer USB_TX" value="0"/> <ctl name="EP5 TX Mixer USB_TX" value="0"/>
<ctl name="EP6 TX Mixer USB_TX" value="0"/> <ctl name="EP6 TX Mixer USB_TX" value="0"/>
<ctl name="NoHost1 TX Mixer USB_TX" value="0"/> <ctl name="NoHost1 TX Mixer USB_TX" value="0"/>
<ctl name="VOIP TX Mixer USB_TX" value="0"/>
<ctl name="EP4 TX Mixer I2S_2_TX" value="0"/> <ctl name="EP4 TX Mixer I2S_2_TX" value="0"/>
@ -470,38 +479,23 @@
<ctl name="USB_RX Mixer EP7" value="1"/> <ctl name="USB_RX Mixer EP7" value="1"/>
</path> </path>
<path name="compress-offload-playbackP usb-tty-full">
</path>
<path name="compress-offload-playbackP usb-tty-hco">
</path>
<path name="compress-offload-playbackP usb-tty-vco">
</path>
<path name="compress-offload-playbackP hearing-aid"> <path name="compress-offload-playbackP hearing-aid">
<path name="compress-offload-playback" /> <path name="compress-offload-playback" />
</path> </path>
<path name="voip-playbackP"> <path name="voip-playbackP">
<ctl name="TDM_0_RX Mixer VOIP" value="1"/>
</path> </path>
<path name="voip-playbackP hac-handset"> <path name="voip-playbackP hac-handset">
</path> </path>
<path name="voip-playbackP bt"> <path name="voip-playbackP bt">
<ctl name="BT_RX Mixer VOIP" value="1"/>
</path> </path>
<path name="voip-playbackP usb-headphone"> <path name="voip-playbackP usb-headphone">
</path> <ctl name="USB_RX Mixer VOIP" value="1"/>
<path name="voip-playbackP usb-tty-full">
</path>
<path name="voip-playbackP usb-tty-hco">
</path>
<path name="voip-playbackP usb-tty-vco">
</path> </path>
<path name="voip-playbackP hearing-aid"> <path name="voip-playbackP hearing-aid">
@ -548,31 +542,16 @@
<ctl name="EP1 TX Mixer BT_TX" value="1"/> <ctl name="EP1 TX Mixer BT_TX" value="1"/>
</path> </path>
<path name="audio-recordC usb-tty-full-mic">
</path>
<path name="audio-recordC usb-tty-hco-mic">
</path>
<path name="audio-recordC usb-tty-vco-mic">
</path>
<path name="voip-recordC"> <path name="voip-recordC">
<ctl name="VOIP TX Mixer INTERNAL_MIC_TX" value="1"/>
</path> </path>
<path name="voip-recordC usb-headset-mic"> <path name="voip-recordC usb-headset-mic">
<ctl name="VOIP TX Mixer USB_TX" value="1"/>
</path> </path>
<path name="voip-recordC bt-mic"> <path name="voip-recordC bt-mic">
</path> <ctl name="VOIP TX Mixer BT_TX" value="1"/>
<path name="voip-recordC usb-tty-full-mic">
</path>
<path name="voip-recordC usb-tty-hco-mic">
</path>
<path name="voip-recordC usb-tty-vco-mic">
</path> </path>
<!-- voice-call dynamic route --> <!-- voice-call dynamic route -->
@ -588,15 +567,6 @@
<ctl name="USB_RX Mixer EP5" value="1"/> <ctl name="USB_RX Mixer EP5" value="1"/>
</path> </path>
<path name="voice-callP usb-tty-full">
</path>
<path name="voice-callP usb-tty-hco">
</path>
<path name="voice-callP usb-tty-vco">
</path>
<path name="voice-callP hearing-aid"> <path name="voice-callP hearing-aid">
<ctl name="INCALL_RX Mixer EP5" value="1"/> <ctl name="INCALL_RX Mixer EP5" value="1"/>
</path> </path>
@ -618,15 +588,6 @@
<ctl name="EP4 TX Mixer BT_TX" value="1"/> <ctl name="EP4 TX Mixer BT_TX" value="1"/>
</path> </path>
<path name="voice-callC usb-tty-full-mic">
</path>
<path name="voice-callC usb-tty-hco-mic">
</path>
<path name="voice-callC usb-tty-vco-mic">
</path>
<path name="voice-callC hearing-aid"> <path name="voice-callC hearing-aid">
<ctl name="EP4 TX Mixer INCALL_TX" value="1"/> <ctl name="EP4 TX Mixer INCALL_TX" value="1"/>
</path> </path>

View file

@ -124,9 +124,13 @@
<usecase id="UC_COMPRESSED_OFFLOAD_PLAYBACK" dev1="6" dyn_path="true" dsp_vol="true" mmap="false" period="131072" period_num="4" pre_proc_id="14"/> <usecase id="UC_COMPRESSED_OFFLOAD_PLAYBACK" dev1="6" dyn_path="true" dsp_vol="true" mmap="false" period="131072" period_num="4" pre_proc_id="14"/>
<!-- dev1: audio dev2: haptic --> <!-- dev1: audio dev2: haptic -->
<usecase id="UC_HAPTIC_AUDIO" dev1="2" dev2="7" period="10" period_num="4"/> <usecase id="UC_HAPTIC_AUDIO" dev1="2" dev2="7" period="10" period_num="4"/>
<!-- for VOIP output, 4 * 10ms buffer -->
<usecase id="UC_VOIP_PLAYBACK" dev1="16" dyn_path="true" dsp_vol="true" mmap="false" period="10" period_num="4"/>
<!-- for input --> <!-- for input -->
<usecase id="UC_AUDIO_RECORD" dev1="8" dyn_path="true" dsp_vol="false" mmap="false" period="10" period_num="4"/> <usecase id="UC_AUDIO_RECORD" dev1="8" dyn_path="true" dsp_vol="false" mmap="false" period="10" period_num="4"/>
<usecase id="UC_HOSTLESS_UL" dev1="15"/> <usecase id="UC_HOSTLESS_UL" dev1="15"/>
<!-- for VOIP input, 4 * 10ms buffer -->
<usecase id="UC_VOIP_RECORD" dev1="17" dyn_path="true" dsp_vol="false" mmap="false" period="10" period_num="4"/>
</usecase_attr> </usecase_attr>
<dsp_latency> <dsp_latency>
@ -179,6 +183,10 @@
<item component="TUNING_COMPONENT_CAMCORDER" id="6"/> <item component="TUNING_COMPONENT_CAMCORDER" id="6"/>
</xlate_id> </xlate_id>
<voip_db_mapping>
<voip_path id="VOIP_RX_USB" value="0.01,0.02,0.04,0.1,0.21,0.47,1.0"/>
</voip_db_mapping>
<device_handle> <device_handle>
<hadnler libname="audio_bt_aoc.so"/> <hadnler libname="audio_bt_aoc.so"/>
</device_handle> </device_handle>

View file

@ -72,6 +72,11 @@
samplingRates="48000" samplingRates="48000"
channelMasks="AUDIO_CHANNEL_OUT_STEREO" /> channelMasks="AUDIO_CHANNEL_OUT_STEREO" />
</mixPort> </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"> <mixPort name="primary input" role="sink">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT" <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="48000" samplingRates="48000"
@ -92,6 +97,11 @@
samplingRates="48000" samplingRates="48000"
channelMasks="AUDIO_CHANNEL_IN_MONO"/> channelMasks="AUDIO_CHANNEL_IN_MONO"/>
</mixPort> </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>
</mixPorts> </mixPorts>
<devicePorts> <devicePorts>
<!-- Output devices declaration, i.e. Sink DEVICE PORT --> <!-- Output devices declaration, i.e. Sink DEVICE PORT -->
@ -154,34 +164,36 @@
<!-- route declaration, i.e. list all available sources for a given sink --> <!-- route declaration, i.e. list all available sources for a given sink -->
<routes> <routes>
<route type="mix" sink="Speaker" <route type="mix" sink="Speaker"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/> sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Speaker Safe" <route type="mix" sink="Speaker Safe"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/> sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Earpiece" <route type="mix" sink="Earpiece"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/> sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="BT A2DP Out"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="BT A2DP Headphones"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="BT A2DP Speaker"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="USB Device Out"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="USB Headset Out"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="BT SCO"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="BT SCO Headset"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="BT SCO Car Kit"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Telephony Tx" sources="incall playback,voice call tx" />
<route type="mix" sink="primary input" <route type="mix" sink="primary input"
sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/> sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
<route type="mix" sink="hotword input" <route type="mix" sink="hotword input"
sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/> sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
<route type="mix" sink="incall capture" sources="Voice Call And Telephony Rx" /> <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="voice call rx" sources="Voice Call And Telephony Rx" />
<route type="mix" sink="BT A2DP Out" <route type="mix" sink="voip_tx"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/> sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
<route type="mix" sink="BT A2DP Headphones"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="BT A2DP Speaker"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="USB Device Out"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="USB Headset Out"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="BT SCO"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="BT SCO Headset"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="BT SCO Car Kit"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="Telephony Tx" sources="incall playback,voice call tx" />
</routes> </routes>
</module> </module>
<!-- Bluetooth Audio HAL --> <!-- Bluetooth Audio HAL -->

View file

@ -72,6 +72,11 @@
samplingRates="48000" samplingRates="48000"
channelMasks="AUDIO_CHANNEL_OUT_STEREO" /> channelMasks="AUDIO_CHANNEL_OUT_STEREO" />
</mixPort> </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"> <mixPort name="primary input" role="sink">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT" <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="48000" samplingRates="48000"
@ -92,6 +97,11 @@
samplingRates="48000" samplingRates="48000"
channelMasks="AUDIO_CHANNEL_IN_MONO"/> channelMasks="AUDIO_CHANNEL_IN_MONO"/>
</mixPort> </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>
</mixPorts> </mixPorts>
<devicePorts> <devicePorts>
<!-- Output devices declaration, i.e. Sink DEVICE PORT --> <!-- Output devices declaration, i.e. Sink DEVICE PORT -->
@ -139,28 +149,30 @@
<!-- route declaration, i.e. list all available sources for a given sink --> <!-- route declaration, i.e. list all available sources for a given sink -->
<routes> <routes>
<route type="mix" sink="Speaker" <route type="mix" sink="Speaker"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/> sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Speaker Safe" <route type="mix" sink="Speaker Safe"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/> sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Earpiece" <route type="mix" sink="Earpiece"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/> sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="USB Device Out"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="USB Headset Out"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="BT SCO"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="BT SCO Headset"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="BT SCO Car Kit"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Telephony Tx" sources="incall playback,voice call tx" />
<route type="mix" sink="primary input" <route type="mix" sink="primary input"
sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/> sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
<route type="mix" sink="hotword input" <route type="mix" sink="hotword input"
sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/> sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
<route type="mix" sink="incall capture" sources="Voice Call And Telephony Rx" /> <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="voice call rx" sources="Voice Call And Telephony Rx" />
<route type="mix" sink="USB Device Out" <route type="mix" sink="voip_tx"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/> sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
<route type="mix" sink="USB Headset Out"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="BT SCO"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="BT SCO Headset"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="BT SCO Car Kit"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="Telephony Tx" sources="incall playback,voice call tx" />
</routes> </routes>
</module> </module>
<!-- Bluetooth Audio HAL --> <!-- Bluetooth Audio HAL -->

View file

@ -72,6 +72,11 @@
samplingRates="48000" samplingRates="48000"
channelMasks="AUDIO_CHANNEL_OUT_STEREO" /> channelMasks="AUDIO_CHANNEL_OUT_STEREO" />
</mixPort> </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"> <mixPort name="primary input" role="sink">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT" <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="48000" samplingRates="48000"
@ -92,6 +97,11 @@
samplingRates="48000" samplingRates="48000"
channelMasks="AUDIO_CHANNEL_IN_MONO"/> channelMasks="AUDIO_CHANNEL_IN_MONO"/>
</mixPort> </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>
</mixPorts> </mixPorts>
<devicePorts> <devicePorts>
<!-- Output devices declaration, i.e. Sink DEVICE PORT --> <!-- Output devices declaration, i.e. Sink DEVICE PORT -->
@ -139,28 +149,30 @@
<!-- route declaration, i.e. list all available sources for a given sink --> <!-- route declaration, i.e. list all available sources for a given sink -->
<routes> <routes>
<route type="mix" sink="Speaker" <route type="mix" sink="Speaker"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/> sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Speaker Safe" <route type="mix" sink="Speaker Safe"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/> sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Earpiece" <route type="mix" sink="Earpiece"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/> sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="USB Device Out"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="USB Headset Out"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="BT SCO"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="BT SCO Headset"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="BT SCO Car Kit"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Telephony Tx" sources="incall playback,voice call tx" />
<route type="mix" sink="primary input" <route type="mix" sink="primary input"
sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/> sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
<route type="mix" sink="hotword input" <route type="mix" sink="hotword input"
sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/> sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
<route type="mix" sink="incall capture" sources="Voice Call And Telephony Rx" /> <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="voice call rx" sources="Voice Call And Telephony Rx" />
<route type="mix" sink="USB Device Out" <route type="mix" sink="voip_tx"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/> sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
<route type="mix" sink="USB Headset Out"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="BT SCO"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="BT SCO Headset"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="BT SCO Car Kit"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="Telephony Tx" sources="incall playback,voice call tx" />
</routes> </routes>
</module> </module>
<!-- A2dp Audio HAL --> <!-- A2dp Audio HAL -->

View file

@ -26,6 +26,9 @@
<!-- IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. --> <!-- IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -->
<mixer> <mixer>
<!-- Initial default value of ALSA command --> <!-- Initial default value of ALSA command -->
<!-- PCM timeout -->
<ctl name="PCM Stream Wait Time in MSec" value="500"/>
<!-- TDM 0 setting --> <!-- TDM 0 setting -->
<ctl name="TDM_0_RX Chan" value="Four"/> <ctl name="TDM_0_RX Chan" value="Four"/>
<ctl name="TDM_0_RX Format" value="S32_LE"/> <ctl name="TDM_0_RX Format" value="S32_LE"/>
@ -91,6 +94,7 @@
<ctl name="TDM_0_RX Mixer EP6" value="0"/> <ctl name="TDM_0_RX Mixer EP6" value="0"/>
<ctl name="TDM_0_RX Mixer EP7" value="0"/> <ctl name="TDM_0_RX Mixer EP7" value="0"/>
<ctl name="TDM_0_RX Mixer EP8" value="0"/> <ctl name="TDM_0_RX Mixer EP8" value="0"/>
<ctl name="TDM_0_RX Mixer VOIP" value="0"/>
<ctl name="TDM_1_RX Mixer EP1" value="0"/> <ctl name="TDM_1_RX Mixer EP1" value="0"/>
<ctl name="TDM_1_RX Mixer EP2" value="0"/> <ctl name="TDM_1_RX Mixer EP2" value="0"/>
@ -104,6 +108,7 @@
<ctl name="USB_RX Mixer EP6" value="0"/> <ctl name="USB_RX Mixer EP6" value="0"/>
<ctl name="USB_RX Mixer EP7" value="0"/> <ctl name="USB_RX Mixer EP7" value="0"/>
<ctl name="USB_RX Mixer NoHost1" value="0"/> <ctl name="USB_RX Mixer NoHost1" value="0"/>
<ctl name="USB_RX Mixer VOIP" value="0"/>
<ctl name="BT_RX Mixer EP1" value="0"/> <ctl name="BT_RX Mixer EP1" value="0"/>
<ctl name="BT_RX Mixer EP2" value="0"/> <ctl name="BT_RX Mixer EP2" value="0"/>
@ -113,6 +118,7 @@
<ctl name="BT_RX Mixer EP6" value="0"/> <ctl name="BT_RX Mixer EP6" value="0"/>
<ctl name="BT_RX Mixer EP7" value="0"/> <ctl name="BT_RX Mixer EP7" value="0"/>
<ctl name="BT_RX Mixer NoHost1" value="0"/> <ctl name="BT_RX Mixer NoHost1" value="0"/>
<ctl name="BT_RX Mixer VOIP" value="0"/>
<ctl name="INCALL_RX Mixer EP1" value="0"/> <ctl name="INCALL_RX Mixer EP1" value="0"/>
<ctl name="INCALL_RX Mixer EP2" value="0"/> <ctl name="INCALL_RX Mixer EP2" value="0"/>
@ -127,8 +133,15 @@
<ctl name="EP2 TX Mixer TDM_0_TX" value="0"/> <ctl name="EP2 TX Mixer TDM_0_TX" value="0"/>
<ctl name="EP4 TX Mixer TDM_0_TX" value="0"/> <ctl name="EP4 TX Mixer TDM_0_TX" value="0"/>
<ctl name="EP4 TX Mixer I2S_2_TX" value="0"/> <ctl name="EP4 TX Mixer I2S_2_TX" value="0"/>
<ctl name="EP1 TX Mixer INTERNAL_MIC_TX" value="0"/> <ctl name="EP1 TX Mixer INTERNAL_MIC_TX" value="0"/>
<ctl name="EP2 TX Mixer INTERNAL_MIC_TX" value="0"/>
<ctl name="EP3 TX Mixer INTERNAL_MIC_TX" value="0"/>
<ctl name="EP4 TX Mixer INTERNAL_MIC_TX" value="0"/> <ctl name="EP4 TX Mixer INTERNAL_MIC_TX" value="0"/>
<ctl name="EP5 TX Mixer INTERNAL_MIC_TX" value="0"/>
<ctl name="EP6 TX Mixer INTERNAL_MIC_TX" value="0"/>
<ctl name="NoHost1 TX Mixer INTERNAL_MIC_TX" value="0"/>
<ctl name="VOIP TX Mixer INTERNAL_MIC_TX" value="0"/>
<ctl name="EP1 TX Mixer BT_TX" value="0"/> <ctl name="EP1 TX Mixer BT_TX" value="0"/>
<ctl name="EP2 TX Mixer BT_TX" value="0"/> <ctl name="EP2 TX Mixer BT_TX" value="0"/>
@ -137,6 +150,7 @@
<ctl name="EP5 TX Mixer BT_TX" value="0"/> <ctl name="EP5 TX Mixer BT_TX" value="0"/>
<ctl name="EP6 TX Mixer BT_TX" value="0"/> <ctl name="EP6 TX Mixer BT_TX" value="0"/>
<ctl name="NoHost1 TX Mixer BT_TX" value="0"/> <ctl name="NoHost1 TX Mixer BT_TX" value="0"/>
<ctl name="VOIP TX Mixer BT_TX" value="0"/>
<ctl name="EP1 TX Mixer USB_TX" value="0"/> <ctl name="EP1 TX Mixer USB_TX" value="0"/>
<ctl name="EP2 TX Mixer USB_TX" value="0"/> <ctl name="EP2 TX Mixer USB_TX" value="0"/>
@ -145,6 +159,7 @@
<ctl name="EP5 TX Mixer USB_TX" value="0"/> <ctl name="EP5 TX Mixer USB_TX" value="0"/>
<ctl name="EP6 TX Mixer USB_TX" value="0"/> <ctl name="EP6 TX Mixer USB_TX" value="0"/>
<ctl name="NoHost1 TX Mixer USB_TX" value="0"/> <ctl name="NoHost1 TX Mixer USB_TX" value="0"/>
<ctl name="VOIP TX Mixer USB_TX" value="0"/>
<ctl name="EP1 TX Mixer INCALL_TX" value="0"/> <ctl name="EP1 TX Mixer INCALL_TX" value="0"/>
<ctl name="EP2 TX Mixer INCALL_TX" value="0"/> <ctl name="EP2 TX Mixer INCALL_TX" value="0"/>
@ -284,15 +299,6 @@
<ctl name="USB_RX Mixer EP6" value="1"/> <ctl name="USB_RX Mixer EP6" value="1"/>
</path> </path>
<path name="deep-buffer-playbackP usb-tty-full">
</path>
<path name="deep-buffer-playbackP usb-tty-hco">
</path>
<path name="deep-buffer-playbackP usb-tty-vco">
</path>
<path name="deep-buffer-playbackP hearing-aid"> <path name="deep-buffer-playbackP hearing-aid">
</path> </path>
@ -320,15 +326,6 @@
<ctl name="USB_RX Mixer EP2" value="1"/> <ctl name="USB_RX Mixer EP2" value="1"/>
</path> </path>
<path name="low-latency-playbackP usb-tty-full">
</path>
<path name="low-latency-playbackP usb-tty-hco">
</path>
<path name="low-latency-playbackP usb-tty-vco">
</path>
<path name="low-latency-playbackP hearing-aid"> <path name="low-latency-playbackP hearing-aid">
</path> </path>
@ -356,15 +353,6 @@
<ctl name="USB_RX Mixer EP4" value="1"/> <ctl name="USB_RX Mixer EP4" value="1"/>
</path> </path>
<path name="raw-playbackP usb-tty-full">
</path>
<path name="raw-playbackP usb-tty-hco">
</path>
<path name="raw-playbackP usb-tty-vco">
</path>
<path name="raw-playbackP hearing-aid"> <path name="raw-playbackP hearing-aid">
</path> </path>
@ -434,38 +422,23 @@
<ctl name="USB_RX Mixer EP7" value="1"/> <ctl name="USB_RX Mixer EP7" value="1"/>
</path> </path>
<path name="compress-offload-playbackP usb-tty-full">
</path>
<path name="compress-offload-playbackP usb-tty-hco">
</path>
<path name="compress-offload-playbackP usb-tty-vco">
</path>
<path name="compress-offload-playbackP hearing-aid"> <path name="compress-offload-playbackP hearing-aid">
<path name="compress-offload-playback" /> <path name="compress-offload-playback" />
</path> </path>
<path name="voip-playbackP"> <path name="voip-playbackP">
<ctl name="TDM_0_RX Mixer VOIP" value="1"/>
</path> </path>
<path name="voip-playbackP hac-handset"> <path name="voip-playbackP hac-handset">
</path> </path>
<path name="voip-playbackP bt"> <path name="voip-playbackP bt">
<ctl name="BT_RX Mixer VOIP" value="1"/>
</path> </path>
<path name="voip-playbackP usb-headphone"> <path name="voip-playbackP usb-headphone">
</path> <ctl name="USB_RX Mixer VOIP" value="1"/>
<path name="voip-playbackP usb-tty-full">
</path>
<path name="voip-playbackP usb-tty-hco">
</path>
<path name="voip-playbackP usb-tty-vco">
</path> </path>
<path name="voip-playbackP hearing-aid"> <path name="voip-playbackP hearing-aid">
@ -512,31 +485,16 @@
<ctl name="EP1 TX Mixer BT_TX" value="1"/> <ctl name="EP1 TX Mixer BT_TX" value="1"/>
</path> </path>
<path name="audio-recordC usb-tty-full-mic">
</path>
<path name="audio-recordC usb-tty-hco-mic">
</path>
<path name="audio-recordC usb-tty-vco-mic">
</path>
<path name="voip-recordC"> <path name="voip-recordC">
<ctl name="VOIP TX Mixer INTERNAL_MIC_TX" value="1"/>
</path> </path>
<path name="voip-recordC usb-headset-mic"> <path name="voip-recordC usb-headset-mic">
<ctl name="VOIP TX Mixer USB_TX" value="1"/>
</path> </path>
<path name="voip-recordC bt-mic"> <path name="voip-recordC bt-mic">
</path> <ctl name="VOIP TX Mixer BT_TX" value="1"/>
<path name="voip-recordC usb-tty-full-mic">
</path>
<path name="voip-recordC usb-tty-hco-mic">
</path>
<path name="voip-recordC usb-tty-vco-mic">
</path> </path>
<!-- voice-call dynamic route --> <!-- voice-call dynamic route -->
@ -552,15 +510,6 @@
<ctl name="USB_RX Mixer EP5" value="1"/> <ctl name="USB_RX Mixer EP5" value="1"/>
</path> </path>
<path name="voice-callP usb-tty-full">
</path>
<path name="voice-callP usb-tty-hco">
</path>
<path name="voice-callP usb-tty-vco">
</path>
<path name="voice-callP hearing-aid"> <path name="voice-callP hearing-aid">
<ctl name="INCALL_RX Mixer EP5" value="1"/> <ctl name="INCALL_RX Mixer EP5" value="1"/>
</path> </path>

View file

@ -124,9 +124,13 @@
<usecase id="UC_COMPRESSED_OFFLOAD_PLAYBACK" dev1="6" dyn_path="true" dsp_vol="true" mmap="false" period="131072" period_num="4" pre_proc_id="14"/> <usecase id="UC_COMPRESSED_OFFLOAD_PLAYBACK" dev1="6" dyn_path="true" dsp_vol="true" mmap="false" period="131072" period_num="4" pre_proc_id="14"/>
<!-- dev1: audio dev2: haptic --> <!-- dev1: audio dev2: haptic -->
<usecase id="UC_HAPTIC_AUDIO" dev1="2" dev2="7" period="10" period_num="4"/> <usecase id="UC_HAPTIC_AUDIO" dev1="2" dev2="7" period="10" period_num="4"/>
<!-- for VOIP output, 4 * 10ms buffer -->
<usecase id="UC_VOIP_PLAYBACK" dev1="16" dyn_path="true" dsp_vol="true" mmap="false" period="10" period_num="4"/>
<!-- for input --> <!-- for input -->
<usecase id="UC_AUDIO_RECORD" dev1="8" dyn_path="true" dsp_vol="false" mmap="false" period="10" period_num="4"/> <usecase id="UC_AUDIO_RECORD" dev1="8" dyn_path="true" dsp_vol="false" mmap="false" period="10" period_num="4"/>
<usecase id="UC_HOSTLESS_UL" dev1="15"/> <usecase id="UC_HOSTLESS_UL" dev1="15"/>
<!-- for VOIP input, 4 * 10ms buffer -->
<usecase id="UC_VOIP_RECORD" dev1="17" dyn_path="true" dsp_vol="false" mmap="false" period="10" period_num="4"/>
</usecase_attr> </usecase_attr>
<dsp_latency> <dsp_latency>
@ -179,6 +183,10 @@
<item component="TUNING_COMPONENT_CAMCORDER" id="6"/> <item component="TUNING_COMPONENT_CAMCORDER" id="6"/>
</xlate_id> </xlate_id>
<voip_db_mapping>
<voip_path id="VOIP_RX_USB" value="0.01,0.02,0.04,0.1,0.21,0.47,1.0"/>
</voip_db_mapping>
<device_handle> <device_handle>
<hadnler libname="audio_bt_aoc.so"/> <hadnler libname="audio_bt_aoc.so"/>
</device_handle> </device_handle>

View file

@ -67,6 +67,11 @@
samplingRates="48000" samplingRates="48000"
channelMasks="AUDIO_CHANNEL_OUT_STEREO" /> channelMasks="AUDIO_CHANNEL_OUT_STEREO" />
</mixPort> </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"> <mixPort name="primary input" role="sink">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT" <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="48000" samplingRates="48000"
@ -87,6 +92,11 @@
samplingRates="48000" samplingRates="48000"
channelMasks="AUDIO_CHANNEL_IN_MONO"/> channelMasks="AUDIO_CHANNEL_IN_MONO"/>
</mixPort> </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>
</mixPorts> </mixPorts>
<devicePorts> <devicePorts>
<!-- Output devices declaration, i.e. Sink DEVICE PORT --> <!-- Output devices declaration, i.e. Sink DEVICE PORT -->
@ -134,28 +144,30 @@
<!-- route declaration, i.e. list all available sources for a given sink --> <!-- route declaration, i.e. list all available sources for a given sink -->
<routes> <routes>
<route type="mix" sink="Speaker" <route type="mix" sink="Speaker"
sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out"/> sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Speaker Safe" <route type="mix" sink="Speaker Safe"
sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out"/> sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Earpiece" <route type="mix" sink="Earpiece"
sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out"/> sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="USB Device Out"
sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="USB Headset Out"
sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="BT SCO"
sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="BT SCO Headset"
sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="BT SCO Car Kit"
sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Telephony Tx" sources="incall playback,voice call tx" />
<route type="mix" sink="primary input" <route type="mix" sink="primary input"
sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/> sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
<route type="mix" sink="hotword input" <route type="mix" sink="hotword input"
sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/> sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
<route type="mix" sink="incall capture" sources="Voice Call And Telephony Rx" /> <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="voice call rx" sources="Voice Call And Telephony Rx" />
<route type="mix" sink="USB Device Out" <route type="mix" sink="voip_tx"
sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out"/> sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
<route type="mix" sink="USB Headset Out"
sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="BT SCO"
sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="BT SCO Headset"
sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="BT SCO Car Kit"
sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="Telephony Tx" sources="incall playback,voice call tx" />
</routes> </routes>
</module> </module>
<!-- Bluetooth Audio HAL --> <!-- Bluetooth Audio HAL -->

View file

@ -67,6 +67,11 @@
samplingRates="48000" samplingRates="48000"
channelMasks="AUDIO_CHANNEL_OUT_STEREO" /> channelMasks="AUDIO_CHANNEL_OUT_STEREO" />
</mixPort> </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"> <mixPort name="primary input" role="sink">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT" <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="48000" samplingRates="48000"
@ -87,6 +92,11 @@
samplingRates="48000" samplingRates="48000"
channelMasks="AUDIO_CHANNEL_IN_MONO"/> channelMasks="AUDIO_CHANNEL_IN_MONO"/>
</mixPort> </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>
</mixPorts> </mixPorts>
<devicePorts> <devicePorts>
<!-- Output devices declaration, i.e. Sink DEVICE PORT --> <!-- Output devices declaration, i.e. Sink DEVICE PORT -->
@ -134,28 +144,30 @@
<!-- route declaration, i.e. list all available sources for a given sink --> <!-- route declaration, i.e. list all available sources for a given sink -->
<routes> <routes>
<route type="mix" sink="Speaker" <route type="mix" sink="Speaker"
sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out"/> sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Speaker Safe" <route type="mix" sink="Speaker Safe"
sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out"/> sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Earpiece" <route type="mix" sink="Earpiece"
sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out"/> sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="USB Device Out"
sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="USB Headset Out"
sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="BT SCO"
sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="BT SCO Headset"
sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="BT SCO Car Kit"
sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Telephony Tx" sources="incall playback,voice call tx" />
<route type="mix" sink="primary input" <route type="mix" sink="primary input"
sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/> sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
<route type="mix" sink="hotword input" <route type="mix" sink="hotword input"
sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/> sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
<route type="mix" sink="incall capture" sources="Voice Call And Telephony Rx" /> <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="voice call rx" sources="Voice Call And Telephony Rx" />
<route type="mix" sink="USB Device Out" <route type="mix" sink="voip_tx"
sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out"/> sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
<route type="mix" sink="USB Headset Out"
sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="BT SCO"
sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="BT SCO Headset"
sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="BT SCO Car Kit"
sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="Telephony Tx" sources="incall playback,voice call tx" />
</routes> </routes>
</module> </module>
<!-- Bluetooth Audio HAL --> <!-- Bluetooth Audio HAL -->

View file

@ -67,6 +67,11 @@
samplingRates="48000" samplingRates="48000"
channelMasks="AUDIO_CHANNEL_OUT_STEREO" /> channelMasks="AUDIO_CHANNEL_OUT_STEREO" />
</mixPort> </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"> <mixPort name="primary input" role="sink">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT" <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="48000" samplingRates="48000"
@ -87,6 +92,11 @@
samplingRates="48000" samplingRates="48000"
channelMasks="AUDIO_CHANNEL_IN_MONO"/> channelMasks="AUDIO_CHANNEL_IN_MONO"/>
</mixPort> </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>
</mixPorts> </mixPorts>
<devicePorts> <devicePorts>
<!-- Output devices declaration, i.e. Sink DEVICE PORT --> <!-- Output devices declaration, i.e. Sink DEVICE PORT -->
@ -134,28 +144,30 @@
<!-- route declaration, i.e. list all available sources for a given sink --> <!-- route declaration, i.e. list all available sources for a given sink -->
<routes> <routes>
<route type="mix" sink="Speaker" <route type="mix" sink="Speaker"
sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out"/> sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Speaker Safe" <route type="mix" sink="Speaker Safe"
sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out"/> sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Earpiece" <route type="mix" sink="Earpiece"
sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out"/> sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="USB Device Out"
sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="USB Headset Out"
sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="BT SCO"
sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="BT SCO Headset"
sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="BT SCO Car Kit"
sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Telephony Tx" sources="incall playback,voice call tx" />
<route type="mix" sink="primary input" <route type="mix" sink="primary input"
sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/> sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
<route type="mix" sink="hotword input" <route type="mix" sink="hotword input"
sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/> sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
<route type="mix" sink="incall capture" sources="Voice Call And Telephony Rx" /> <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="voice call rx" sources="Voice Call And Telephony Rx" />
<route type="mix" sink="USB Device Out" <route type="mix" sink="voip_tx"
sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out"/> sources="Built-In Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
<route type="mix" sink="USB Headset Out"
sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="BT SCO"
sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="BT SCO Headset"
sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="BT SCO Car Kit"
sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out"/>
<route type="mix" sink="Telephony Tx" sources="incall playback,voice call tx" />
</routes> </routes>
</module> </module>
<!-- A2dp Audio HAL --> <!-- A2dp Audio HAL -->

View file

@ -26,6 +26,9 @@
<!-- IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. --> <!-- IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -->
<mixer> <mixer>
<!-- Initial default value of ALSA command --> <!-- Initial default value of ALSA command -->
<!-- PCM timeout -->
<ctl name="PCM Stream Wait Time in MSec" value="500"/>
<!-- TDM 0 setting --> <!-- TDM 0 setting -->
<ctl name="TDM_0_RX Chan" value="Four"/> <ctl name="TDM_0_RX Chan" value="Four"/>
<ctl name="TDM_0_RX Format" value="S32_LE"/> <ctl name="TDM_0_RX Format" value="S32_LE"/>
@ -99,6 +102,7 @@
<ctl name="TDM_0_RX Mixer EP7" value="0"/> <ctl name="TDM_0_RX Mixer EP7" value="0"/>
<ctl name="TDM_0_RX Mixer EP8" value="0"/> <ctl name="TDM_0_RX Mixer EP8" value="0"/>
<ctl name="TDM_0_RX Mixer NoHost1" value="0"/> <ctl name="TDM_0_RX Mixer NoHost1" value="0"/>
<ctl name="TDM_0_RX Mixer VOIP" value="0"/>
<ctl name="TDM_1_RX Mixer EP1" value="0"/> <ctl name="TDM_1_RX Mixer EP1" value="0"/>
<ctl name="TDM_1_RX Mixer EP2" value="0"/> <ctl name="TDM_1_RX Mixer EP2" value="0"/>
@ -118,6 +122,7 @@
<ctl name="USB_RX Mixer EP6" value="0"/> <ctl name="USB_RX Mixer EP6" value="0"/>
<ctl name="USB_RX Mixer EP7" value="0"/> <ctl name="USB_RX Mixer EP7" value="0"/>
<ctl name="USB_RX Mixer NoHost1" value="0"/> <ctl name="USB_RX Mixer NoHost1" value="0"/>
<ctl name="USB_RX Mixer VOIP" value="0"/>
<ctl name="BT_RX Mixer EP1" value="0"/> <ctl name="BT_RX Mixer EP1" value="0"/>
<ctl name="BT_RX Mixer EP2" value="0"/> <ctl name="BT_RX Mixer EP2" value="0"/>
@ -127,6 +132,7 @@
<ctl name="BT_RX Mixer EP6" value="0"/> <ctl name="BT_RX Mixer EP6" value="0"/>
<ctl name="BT_RX Mixer EP7" value="0"/> <ctl name="BT_RX Mixer EP7" value="0"/>
<ctl name="BT_RX Mixer NoHost1" value="0"/> <ctl name="BT_RX Mixer NoHost1" value="0"/>
<ctl name="BT_RX Mixer VOIP" value="0"/>
<ctl name="INCALL_RX Mixer EP1" value="0"/> <ctl name="INCALL_RX Mixer EP1" value="0"/>
<ctl name="INCALL_RX Mixer EP2" value="0"/> <ctl name="INCALL_RX Mixer EP2" value="0"/>
@ -164,6 +170,7 @@
<ctl name="EP5 TX Mixer INTERNAL_MIC_TX" value="0"/> <ctl name="EP5 TX Mixer INTERNAL_MIC_TX" value="0"/>
<ctl name="EP6 TX Mixer INTERNAL_MIC_TX" value="0"/> <ctl name="EP6 TX Mixer INTERNAL_MIC_TX" value="0"/>
<ctl name="NoHost1 TX Mixer INTERNAL_MIC_TX" value="0"/> <ctl name="NoHost1 TX Mixer INTERNAL_MIC_TX" value="0"/>
<ctl name="VOIP TX Mixer INTERNAL_MIC_TX" value="0"/>
<ctl name="EP1 TX Mixer BT_TX" value="0"/> <ctl name="EP1 TX Mixer BT_TX" value="0"/>
<ctl name="EP2 TX Mixer BT_TX" value="0"/> <ctl name="EP2 TX Mixer BT_TX" value="0"/>
@ -172,6 +179,7 @@
<ctl name="EP5 TX Mixer BT_TX" value="0"/> <ctl name="EP5 TX Mixer BT_TX" value="0"/>
<ctl name="EP6 TX Mixer BT_TX" value="0"/> <ctl name="EP6 TX Mixer BT_TX" value="0"/>
<ctl name="NoHost1 TX Mixer BT_TX" value="0"/> <ctl name="NoHost1 TX Mixer BT_TX" value="0"/>
<ctl name="VOIP TX Mixer BT_TX" value="0"/>
<ctl name="EP1 TX Mixer USB_TX" value="0"/> <ctl name="EP1 TX Mixer USB_TX" value="0"/>
<ctl name="EP2 TX Mixer USB_TX" value="0"/> <ctl name="EP2 TX Mixer USB_TX" value="0"/>
@ -180,6 +188,7 @@
<ctl name="EP5 TX Mixer USB_TX" value="0"/> <ctl name="EP5 TX Mixer USB_TX" value="0"/>
<ctl name="EP6 TX Mixer USB_TX" value="0"/> <ctl name="EP6 TX Mixer USB_TX" value="0"/>
<ctl name="NoHost1 TX Mixer USB_TX" value="0"/> <ctl name="NoHost1 TX Mixer USB_TX" value="0"/>
<ctl name="VOIP TX Mixer USB_TX" value="0"/>
<ctl name="EP1 TX Mixer INCALL_TX" value="0"/> <ctl name="EP1 TX Mixer INCALL_TX" value="0"/>
<ctl name="EP2 TX Mixer INCALL_TX" value="0"/> <ctl name="EP2 TX Mixer INCALL_TX" value="0"/>
@ -485,15 +494,18 @@
</path> </path>
<path name="voip-playbackP"> <path name="voip-playbackP">
<ctl name="TDM_0_RX Mixer VOIP" value="1"/>
</path> </path>
<path name="voip-playbackP hac-handset"> <path name="voip-playbackP hac-handset">
</path> </path>
<path name="voip-playbackP bt"> <path name="voip-playbackP bt">
<ctl name="BT_RX Mixer VOIP" value="1"/>
</path> </path>
<path name="voip-playbackP usb-headphone"> <path name="voip-playbackP usb-headphone">
<ctl name="USB_RX Mixer VOIP" value="1"/>
</path> </path>
<path name="voip-playbackP usb-tty-full"> <path name="voip-playbackP usb-tty-full">
@ -559,12 +571,15 @@
</path> </path>
<path name="voip-recordC"> <path name="voip-recordC">
<ctl name="VOIP TX Mixer INTERNAL_MIC_TX" value="1"/>
</path> </path>
<path name="voip-recordC usb-headset-mic"> <path name="voip-recordC usb-headset-mic">
<ctl name="VOIP TX Mixer USB_TX" value="1"/>
</path> </path>
<path name="voip-recordC bt-mic"> <path name="voip-recordC bt-mic">
<ctl name="VOIP TX Mixer BT_TX" value="1"/>
</path> </path>
<path name="voip-recordC usb-tty-full-mic"> <path name="voip-recordC usb-tty-full-mic">

View file

@ -0,0 +1,63 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
/*
** Copyright 2021, 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.
*/
-->
<!-- These resources are around just to allow their values to be customized
for different hardware and product builds. -->
<resources>
<!-- Type of a sensor that provides a low-power estimate of the desired display
brightness, suitable to listen to while the device is asleep (e.g. during
always-on display) -->
<string name="doze_brightness_sensor_type" translatable="false">com.google.sensor.binned_brightness</string>
<!-- Override value to use for proximity sensor. -->
<string name="proximity_sensor_type" translatable="false">com.google.sensor.binned_brightness</string>
<!-- If using proximity_sensor_type, specifies a threshold value to distinguish near and
far break points. A sensor value less than this is considered "near". -->
<item name="proximity_sensor_threshold" translatable="false" format="float" type="dimen">1</item>
<!-- Doze: can we assume the pickup sensor includes a proximity check? -->
<bool name="doze_pickup_performs_proximity_check">true</bool>
<!-- Doze: whether the double tap sensor reports 2D touch coordinates -->
<bool name="doze_double_tap_reports_touch_coordinates">true</bool>
<!-- Doze: Table that translates sensor values from the doze_brightness_sensor_type sensor
to brightness values; -1 means keeping the current brightness. -->
<integer-array name="config_doze_brightness_sensor_to_brightness">
<item>-1</item> <!-- 0: OFF -->
<item>5</item> <!-- 1: NIGHT -->
<item>5</item> <!-- 2: LOW -->
<item>27</item> <!-- 3: HIGH -->
<item>27</item> <!-- 4: SUN -->
</integer-array>
<!-- Doze: Table that translates sensor values from the doze_brightness_sensor_type sensor
to an opacity value for a black scrim that is overlaid in AOD1.
Valid range is from 0 (transparent) to 255 (opaque).
-1 means keeping the current opacity. -->
<integer-array name="config_doze_brightness_sensor_to_scrim_opacity">
<item>-1</item> <!-- 0: OFF -->
<item>133</item> <!-- 1: NIGHT -->
<item>0</item> <!-- 2: LOW -->
<item>0</item> <!-- 3: HIGH -->
<item>0</item> <!-- 4: SUN -->
</integer-array>
</resources>

View file

@ -0,0 +1,63 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
/*
** Copyright 2021, 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.
*/
-->
<!-- These resources are around just to allow their values to be customized
for different hardware and product builds. -->
<resources>
<!-- Type of a sensor that provides a low-power estimate of the desired display
brightness, suitable to listen to while the device is asleep (e.g. during
always-on display) -->
<string name="doze_brightness_sensor_type" translatable="false">com.google.sensor.binned_brightness</string>
<!-- Override value to use for proximity sensor. -->
<string name="proximity_sensor_type" translatable="false">com.google.sensor.binned_brightness</string>
<!-- If using proximity_sensor_type, specifies a threshold value to distinguish near and
far break points. A sensor value less than this is considered "near". -->
<item name="proximity_sensor_threshold" translatable="false" format="float" type="dimen">1</item>
<!-- Doze: can we assume the pickup sensor includes a proximity check? -->
<bool name="doze_pickup_performs_proximity_check">true</bool>
<!-- Doze: whether the double tap sensor reports 2D touch coordinates -->
<bool name="doze_double_tap_reports_touch_coordinates">true</bool>
<!-- Doze: Table that translates sensor values from the doze_brightness_sensor_type sensor
to brightness values; -1 means keeping the current brightness. -->
<integer-array name="config_doze_brightness_sensor_to_brightness">
<item>-1</item> <!-- 0: OFF -->
<item>5</item> <!-- 1: NIGHT -->
<item>5</item> <!-- 2: LOW -->
<item>27</item> <!-- 3: HIGH -->
<item>27</item> <!-- 4: SUN -->
</integer-array>
<!-- Doze: Table that translates sensor values from the doze_brightness_sensor_type sensor
to an opacity value for a black scrim that is overlaid in AOD1.
Valid range is from 0 (transparent) to 255 (opaque).
-1 means keeping the current opacity. -->
<integer-array name="config_doze_brightness_sensor_to_scrim_opacity">
<item>-1</item> <!-- 0: OFF -->
<item>133</item> <!-- 1: NIGHT -->
<item>0</item> <!-- 2: LOW -->
<item>0</item> <!-- 3: HIGH -->
<item>0</item> <!-- 4: SUN -->
</integer-array>
</resources>