跳转到内容

声级传感器

sound_level 传感器平台允许您在指定的测量持续时间内测量麦克风的平均声压级和峰值声压级。传感器以相对 dB 为单位输出,其中 0 dB 代表麦克风能测到的最大声音。

WARNING

音频和语音组件会消耗设备上大量资源(RAM、CPU)。

如果在设备配置中加入了过多的其他组件,可能会发生崩溃。特别是蓝牙/BLE 组件,在与语音助手和/或其他音频组件配合使用时已知会出现问题。

# 示例配置条目
sensor:
- platform: sound_level
passive: true
peak:
name: "Peak Loudness"
rms:
name: "Average Loudness"
  • microphone (可选, Microphone Source Configuration): 用于输入的麦克风设置。可选择多个通道。

  • measurement_duration (可选, Time): 每次声级测量的持续时间。范围为 50ms 至 60s。默认为 1000ms。

  • passive (必选, boolean): 是否启用被动模式。参见被动模式。

  • peak (可选): 峰值响度传感器的信息。

  • rms (可选): 均方根响度传感器的信息。

如果声级组件配置为被动模式,则仅在其他 ESPHome 组件从麦克风捕获音频时才会测量声级。如果禁用被动模式,则必须使用动作手动启动和停止捕获(参见声级动作)。当被动模式被禁用时,组件会在设置时自动启动麦克风。

WARNING

某些设备不支持全双工音频,这意味着它们无法在向扬声器输出音频的同时从麦克风捕获音频。对于这些设备,在禁用被动模式时,如果您希望向扬声器组件发送音频,必须手动停止 sound_level 组件。如果启用被动模式,则无需进行手动管理。

以下动作可用于自动化:

开始测量声级。在被动模式下无操作。

停止测量声级。在被动模式下无操作。