livekit/python-sdks

LiveKit real-time and server SDKs for Python

解决的问题

该 SDK 提供了将实时音频、视频和数据通信集成到 Python 应用程序所需的工具。开发者无需从零开始构建底层传输基础设施,即可构建复杂的交互式体验,如多模态 AI、直播和视频会议。

工作原理

该项目由两个主要包组成:

  • livekit:一个实时 SDK,允许 Python 应用程序作为参与者连接到 LiveKit 服务器,发布和订阅媒体轨道(音频/视频),并处理实时事件。
  • livekit-api:一个服务器端 SDK,用于执行管理任务,例如生成访问令牌进行身份验证,以及通过服务器 API 管理房间。

它支持通过 asyncio 进行异步操作,并提供高级的 MediaDevices 接口,用于访问本地麦克风和扬声器,内置音频处理功能(例如回声消除)。

适用人群

  • AI 开发者:需要通过语音和视频与用户实时交互的多模态 AI 代理开发者。
  • 应用开发者:使用 Python 构建直播或视频通话软件的开发者。
  • 系统集成者:需要通过 API 管理 LiveKit 房间和参与者的人员。

主要亮点

  • 实时媒体:支持发布和订阅音频和视频轨道。
  • RPC 支持:支持参与者之间的远程过程调用,适用于将 LLM 函数调用转发到客户端。
  • 硬件加速:自动使用平台特定的硬件编码器/解码器(macOS 上的 VideoToolbox,NVIDIA GPU 上的 NVENC/NVDEC,AMD GPU 上的 VAAPI)。
  • 音频处理:集成声学回声消除、噪声抑制和自动增益控制。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目