7.3 Microphone Management
7.3 Microphone Management
7.3.1 Overview
Currently, the robot only supports using an external microphone (the Shike lavalier microphone) as the interaction input source; the built-in microphone is not yet configured or enabled. Additionally, the system supports setting Silent Mode via AimMaster and provides RPC interfaces for programmatic control of this mode. We also provide access to raw microphone audio output (including audio data processed with noise reduction, echo cancellation, and VAD). After disabling the A2 interaction pipeline, users can utilize this interface to capture microphone audio and integrate it with custom interaction systems. Please note that Silent Mode is an operational state within Normal Mode, allowing for flexible switching without the need to restart the agent.
7.3.2 Set Silent Mode RPC Interface
| Interface Name | pb:/aimdk.protocol.AgentControlService/SetVoiceEnable |
|---|---|
| Function Overview | Set Silent Mode |
| Interface Type | HTTP JSON RPC |
| URL | http://10.42.10.10:59301/rpc/aimdk.protocol.AgentControlService/SetVoiceEnable |
| Input Parameters | text
|
| Output Parameters | text
|
| Example Script | examples/agent/SetVoiceEnable.sh |
| Remarks |
7.3.3 Query Silent Mode RPC Interface
| Interface Name | pb:/aimdk.protocol.AgentControlService/GetVoiceEnable |
|---|---|
| Function Overview | Query Silent Mode Status |
| Interface Type | HTTP JSON RPC |
| URL | http://10.42.10.10:59301/rpc/aimdk.protocol.AgentControlService/GetVoiceEnable |
| Input Parameters | text |
| Output Parameters | text
|
| Example Script | examples/agent/GetVoiceEnable.sh |
| Remarks |
7.3.4 Set Interaction Operation Mode RPC Interface
| Interface Name | pb:/aimdk.protocol.AgentControlService/SetAgentPropertiesRequest |
|---|---|
| Function Overview | Set Interaction Operation Mode |
| Interface Type | HTTP JSON RPC |
| URL | http://10.42.10.10:59301/rpc/aimdk.protocol.AgentControlService/SetAgentPropertiesRequest |
| Input Parameters | text
|
| Output Parameters | text |
| Example Script | examples/agent/SetAgentPropertiesRequest.sh |
| Remarks |
|
7.3.5 Get Interaction Operation Mode RPC Interface
| Interface Name | pb:/aimdk.protocol.AgentControlService/GetAgentPropertiesRequest |
|---|---|
| Function Overview | Query Interaction Operation Mode |
| Interface Type | HTTP JSON RPC |
| URL | http://10.42.10.10:59301/rpc/aimdk.protocol.AgentControlService/GetAgentPropertiesRequest |
| Input Parameters | text |
| Output Parameters | text
|
| Example Script | examples/agent/GetAgentPropertiesRequest.sh |
| Remarks |
7.3.6 Noise-Reduced Microphone Audio Topic Interface
| Interface Name | /agent/process_audio_output |
|---|---|
| Function Overview | Noise-Reduced Microphone Audio Interface |
| Interface Type | ROS2 Topic |
| Output Parameters | text
|
| Example Script | examples/agent/get_voice.py |
| Remarks |
|
7.3.7 Wake-Up Result Reporting
| Interface Name | /agent/wakeup |
|---|---|
| Function Overview | Wake-Up Result Reporting |
| Interface Type | ROS2 Topic |
| Output Parameters | text
|
| Example Script | examples/agent/get_wakeup_result.py |
| Remarks |
|
7.3.8 Built-in and External Microphone Switching RPC Interface
| Interface Name | pb:/aimdk.protocol.AgentControlService/SetMicSourceRequest |
|---|---|
| Overview | Switch the microphone source between the built-in microphone and the external microphone |
| Interface Type | HTTP JSON RPC |
| URL | http://10.42.10.10:59301/rpc/aimdk.protocol.AgentControlService/SetMicSourceRequest |
| Input | text
|
| Output | text
|
| Example Script | examples/agent/SetMicSource.sh |
| Remarks |
7.3.9 Built-in and External Microphone Status Query RPC Interface
| Interface Name | pb:/aimdk.protocol.AgentControlService/GetMicSourceRequest |
|---|---|
| Overview | Get the microphone source currently in use |
| Interface Type | HTTP JSON RPC |
| URL | http://10.42.10.10:59301/rpc/aimdk.protocol.AgentControlService/GetMicSourceRequest |
| Input | text |
| Output | text
|
| Example Script | examples/agent/GetMicSource.sh |
| Remarks |