Rdzleo dbdd304905 代码初始化:
本项目为触摸版项目代码复制而来,基于此版本进行按键功能的适配!
2026-03-23 11:14:56 +08:00
..
2026-03-23 11:14:56 +08:00
2026-03-23 11:14:56 +08:00
2026-03-23 11:14:56 +08:00
2026-03-23 11:14:56 +08:00
2026-03-23 11:14:56 +08:00
2026-03-23 11:14:56 +08:00
2026-03-23 11:14:56 +08:00
2026-03-23 11:14:56 +08:00
2026-03-23 11:14:56 +08:00

ESP-Brookesia OpenAI Agent

Overview

brookesia_agent_openai is an OpenAI agent implementation based on the ESP-Brookesia Agent Manager framework, providing:

  • OpenAI Realtime API Integration: Real-time communication with the OpenAI platform via WebRTC data channels, supporting voice conversations and text interactions.
  • Peer-to-Peer Communication: Implements peer-to-peer (P2P) communication using esp_peer, supporting signaling and data channels.
  • Audio Codec: Built-in audio codec support, defaulting to OPUS format with 16kHz sample rate and 24kbps bitrate.
  • Data Channel Message Handling: Supports multiple data channel message types, including audio streams, text streams, function calls, session management, etc.
  • Real-Time Interaction: Supports real-time audio input/output, providing low-latency voice interaction experience.
  • Persistent Storage: Optionally integrates with brookesia_service_nvs service for persistent storage of configuration information.

Table of Contents

How to Use

Development Environment Requirements

Before using this library, please ensure the following SDK development environment is installed:

Note

For SDK installation instructions, please refer to ESP-IDF Programming Guide - Installation

Adding to Project

brookesia_agent_openai has been uploaded to the Espressif Component Registry. You can add it to your project in the following ways:

  1. Using Command Line

    Run the following command in your project directory:

    idf.py add-dependency "espressif/brookesia_agent_openai"
    
  2. Modify Configuration File

    Create or modify the idf_component.yml file in your project directory:

    dependencies:
      espressif/brookesia_agent_openai: "*"
    

For detailed instructions, please refer to Espressif Documentation - IDF Component Manager.