LiveKit ESP32 SDK:将语音 AI 引入嵌入式设备

LiveKit SDK for ESP32: bringing voice AI to embedded devices

LiveKit Agents 框架推出以来,我们看到开发者在网页、移动应用,甚至像树莓派 Zero 2W 这样的嵌入式 Linux 设备上构建语音 AI 体验。但我们不断被问及:LiveKit 能否在 ESP32 这样更小的微控制器上运行?能否构建一个微控制器 AI 代理

我们听到了。在过去的几个月里,我们与乐鑫系统(Espressif Systems)紧密合作,为 ESP32 平台带来了功能齐全的 LiveKit SDK。该 SDK 基于乐鑫的硬件优化 WebRTC 和媒体组件构建,确保了与其他平台的完全兼容性和可靠的性能。通过我们的最新发布,ESP32 开发者可以使用与我们 其他客户端 SDK 中相同的功能来构建语音 AI 交互。

嵌入式设备 WebRTC 面临的挑战

WebRTC,顾名思义,最初是为 Web 设计的,针对内存和处理能力充足的设备。然而,在嵌入式平台上,严格的内存限制和缺乏媒体处理的硬件加速使得部署 WebRTC 不切实际。在过去的一年里,乐鑫发布了几个可即时使用的组件,例如 esp_catureesp_peer,使在您的嵌入式 ESP32 项目中轻松添加媒体捕获和发布到 WebRTC 服务器成为可能。

基于这些进步,我们的 ESP32 WebRTC 实现经过精心优化,以最大限度地减少建立和维护房间连接所需的内存。在协议层面,Protobuf 编码和解码得到严格管理以减少开销:部分解码跳过未使用的字段,而动态大小的字段(即字符串和重复字段)尽可能使用栈分配。

为什么选择 ESP32?

全球有超过十亿台 ESP32 驱动的设备,该平台已经拥有一个繁荣的开发者和项目生态系统。乐鑫在强大的、得到良好支持的库方面投入了大量资金,这些库涵盖了从 WebRTC 媒体流和音频处理算法到音频/视频编码的一切。借助最新一代的 ESP32-P4,现在可以在成本不到十美元的芯片驱动的设备上实现实时物联网语音 AI。

ESP32 + LiveKit 用例

  • 智能语音助手设备:低成本便携式语音助手硬件,将用户与云端 AI 代理连接起来。
  • 带 AI 头像的视频界面:带有摄像头和显示屏的设备,将 AI 视频头像与呼叫箱、得来速点餐、虚拟门卫等设备连接起来。
  • 智能安防摄像头:可以将视频流传输到云端 AI 代理进行处理,以实现实时场景理解和语义元数据的设备。

使用 LiveKit ESP32 SDK 的产品

LiveKit ESP32-S3 和 ESP32-P4 SDK 功能

通过此次 LiveKit ESP32 SDK 发布,我们启用了语音代理所需的核心功能集,包括:

  • 支持流行的 ESP32-S3 和 ESP32-P4 开发套件
    • 支持广泛的摄像头、音频编解码器和显示器
  • 使用 Opus 编码的双向音频流
  • 在 ESP32-P4 板上使用硬件 H.264 编码的视频流
  • 支持与我们的标准 SDK 相同的所有提供商和模型
  • 数据消息发布和接收
  • RPC 方法注册和调用

即将推出

  • 双向视频流
  • 视频头像支持

增加对 ESP32 的支持是一个挑战,特别是在确保一切在资源受限的环境中仍能良好运行并保持高性能方面。我们很高兴看到当低成本嵌入式设备可以轻松连接到多模态 云端 AI 代理时,将会构建出哪些令人惊叹的项目。

如果您还没有加入,请 加入我们的 Slack 社区,并使用 #robotics 频道提问和分享反馈。

开始使用