Jelajahi Sumber

lynx: add sound_trigger_tap and hotword_lookback_capture

note: add path for new use-case
      sync diff from P23.

Test: end-to-end test with test apk
Bug: 259455755

Change-Id: I8fa123e36e04723f4b6e24fc30412301bb2c0363
Rios Kao 2 tahun lalu
induk
melakukan
8c5ab2215e

+ 13 - 3
audio/lynx/aidl_config/audio_policy_configuration.xml

@@ -77,8 +77,7 @@
           <profile name="" format="AUDIO_FORMAT_PCM_FLOAT"
             samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO" />
         </mixPort>
-        <mixPort name="raw" role="source"
-          flags="AUDIO_OUTPUT_FLAG_RAW AUDIO_OUTPUT_FLAG_FAST">
+        <mixPort name="raw" role="source" flags="AUDIO_OUTPUT_FLAG_RAW AUDIO_OUTPUT_FLAG_FAST">
           <profile name="" format="AUDIO_FORMAT_PCM_32_BIT"
             samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO" />
         </mixPort> -->
@@ -104,12 +103,21 @@
             samplingRates="16000"
             channelMasks="AUDIO_CHANNEL_IN_MONO AUDIO_CHANNEL_IN_STEREO" />
         </mixPort>
+        <mixPort name="hotword tap" role="sink" flags="AUDIO_INPUT_FLAG_HOTWORD_TAP">
+          <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
+            samplingRates="16000"
+            channelMasks="AUDIO_CHANNEL_IN_MONO AUDIO_CHANNEL_IN_STEREO" />
+        </mixPort>
+        <mixPort name="hotword lookback" role="sink" flags="AUDIO_INPUT_FLAG_HOTWORD_TAP AUDIO_INPUT_FLAG_HW_LOOKBACK">
+          <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
+            samplingRates="16000"
+            channelMasks="AUDIO_CHANNEL_IN_MONO AUDIO_CHANNEL_IN_STEREO" />
+        </mixPort>
         <!-- <mixPort name="mmap capture" role="sink" flags="AUDIO_INPUT_FLAG_MMAP_NOIRQ">
           <profile name="" format="AUDIO_FORMAT_PCM_32_BIT"
             samplingRates="48000"
             channelMasks="AUDIO_CHANNEL_IN_MONO AUDIO_CHANNEL_IN_STEREO" />
         </mixPort> -->
-
       </mixPorts>
       <devicePorts>
         <!-- Output devices declaration, i.e. Sink DEVICE PORT -->
@@ -192,6 +200,8 @@
         <route type="mix" sink="fast input"
           sources="Built-In Mic,Built-In Back Mic" />
         <route type="mix" sink="hotword input" sources="Built-In Mic" />
+        <route type="mix" sink="hotword tap" sources="Built-In Mic" />
+        <route type="mix" sink="hotword lookback" sources="Built-In Mic" />
       </routes>
     </module>
   </modules>

+ 26 - 11
audio/lynx/aidl_config/mixer_paths_aidl.xml

@@ -254,7 +254,9 @@
 
   <ctl name="AoC Modem Downlink ASRC Mode" value="ASP_ON" />
   <ctl name="Voice Call Mic Source" value="Builtin_MIC" />
+  <ctl name="Mic Spatial Module Enable" value="0" />
   <ctl name="Audio Capture Eraser Enable" value="0" />
+  <ctl name="Hotword Tap Enable" value="0" />
 
   <!-- audio PDM mic default state -->
   <ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="-1" />
@@ -604,6 +606,12 @@
   <path name="microphones -> sound-trigger-capture-0">
   </path>
 
+  <path name="microphones -> sound-trigger-tap-capture-0">
+  </path>
+
+  <path name="microphones -> hotword-lookback-capture-0">
+  </path>
+
   <!-- voice-call dynamic route -->
   <path name="voice-call-downlink-0 -> speaker">
     <ctl name="TDM_0_RX Mixer EP5" value="1" />
@@ -696,8 +704,7 @@
     <ctl name="Boost Peak Current Limit" value="3.50A" />
     <ctl name="ASPTX1 Slot Position" value="1" />
     <ctl name="R ASPTX1 Slot Position" value="0" />
-    <!--<ctl
-    name="R DSP RX2 Source" value="ASPRX2"/>-->
+    <!--<ctl name="R DSP RX2 Source" value="ASPRX2" />-->
     <ctl name="R Main AMP Enable Switch" value="1" />
     <ctl name="Main AMP Enable Switch" value="1" />
     <!-- load Enable FIR -->
@@ -736,7 +743,23 @@
     <ctl name="MIC Record Soft Gain (dB)" value="0" />
   </path>
 
+  <path name="microphones (VOICE_RECOGNITION)">
+    <ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0" />
+    <ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="3" />
+    <ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="2" />
+    <ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1" />
+    <ctl name="MIC DC Blocker" value="1" />
+    <ctl name="MIC Record Soft Gain (dB)" value="22" />
+  </path>
+
+  <path name="microphones (VOICE_RECOGNITION,SOUND_TRIGGER_TAP)">
+    <ctl name="Audio Capture Eraser Enable" value="1" />
+    <ctl name="Hotword Tap Enable" value="1" />
+    <ctl name="MIC Record Soft Gain (dB)" value="0" />
+  </path>
+
   <path name="back-microphones">
+    <ctl name="Mic Spatial Module Enable" value="1" />
     <ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0" />
     <ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="3" />
     <ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="2" />
@@ -769,6 +792,7 @@
   </path>
 
   <path name="camcorder-mic">
+    <ctl name="Mic Spatial Module Enable" value="1" />
     <ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0" />
     <ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="3" />
     <ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="2" />
@@ -777,15 +801,6 @@
     <ctl name="MIC Record Soft Gain (dB)" value="0" />
   </path>
 
-  <path name="voice-recog-mic">
-    <ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0" />
-    <ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="3" />
-    <ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="2" />
-    <ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1" />
-    <ctl name="MIC DC Blocker" value="1" />
-    <ctl name="MIC Record Soft Gain (dB)" value="22" />
-  </path>
-
   <path name="voice-recog-aec-mic">
     <ctl name="Audio Capture Eraser Enable" value="1" />
     <ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0" />