7.3 Microphone Management
7.3 Microphone Management
7.3.1 Overview
By default, the robot supports two different microphones as interaction input sources: the external microphone (Shike lavalier microphone) and the built-in microphone (the robot's onboard microphone). In addition, Silent Mode can be enabled to disable interaction. Users can switch microphones and configure Silent Mode through AimMaster, and we also provide RPC interfaces for microphone source switching and Silent Mode configuration.
In addition, we provide raw microphone audio output capabilities, including audio data processed with onboard noise reduction, echo cancellation, and VAD. After disabling AgiBot's own interaction pipeline, users can obtain microphone audio through this interface and integrate it into a custom interaction system.
It should be noted that Silent Mode is an operating state within Normal Mode and supports flexible switching without restarting 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.HalAudioService/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.HalAudioService/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.HalAudioService/GetMicSourceRequest |
|---|---|
| Overview | Get the microphone source currently in use |
| Interface Type | HTTP JSON RPC |
| URL | http://10.42.10.10:59301/rpc/aimdk.protocol.HalAudioService/GetMicSourceRequest |
| Input | text |
| Output | text
|
| Example Script | examples/agent/GetMicSource.sh |
| Remarks |