livekit/python-sdks
LiveKit real-time and server SDKs for Python
What it solves
이 SDK는 실시간 오디오, 비디오 및 데이터 통신을 Python 애플리케이션에 통합하기 위한 인프라를 제공합니다. 저수준 WebRTC 인프라를 처음부터 구축할 필요가 없어 개발자는 멀티모달 AI 에이전트, 라이브 스트리밍 서비스 및 화상 회의 도구를 만들 수 있습니다.
How it works
프로젝트는 두 개의 주요 Python 패키지로 구성됩니다.
- livekit: 실시간 SDK로, Python 애플리케이션이 방의 참가자로서 오디오/비디오 트랙을 구독하고 발행할 수 있게 합니다.
- livekit-api: 서버‑사이드 SDK로, 인증 토큰 생성, LiveKit Cloud 또는 자체 호스팅 서버를 통한 방 관리 등 관리 작업에 사용됩니다.
고성능 미디어 처리를 위해 Rust SDK를 기반으로 하며, 하드웨어 가속 인코딩/디코딩(VideoToolbox, VAAPI, NVENC/NVDEC)을 지원해 CPU 부하를 줄입니다.
Who it’s for
- AI 개발자: 실시간으로 보고, 듣고, 말할 수 있는 멀티모달 AI 에이전트를 구축하는 사람.
- 애플리케이션 개발자: Python으로 라이브 스트리밍 또는 화상 통화 앱을 개발하는 사람.
- 백엔드 엔지니어: 세션 인증 및 방 오케스트레이션을 관리하는 엔지니어.
Highlights
- Full Duplex Audio: 마이크 입력과 스피커 출력을 동시에 지원하며, 내장 Acoustic Echo Cancellation (AEC) 기능을 제공합니다.
- RPC Capabilities: 참가자들이 사전 정의된 메서드 호출을 서로 수행할 수 있어 LLM 함수 호출을 클라이언트에 전달할 때 유용합니다.
- Hardware Acceleration: macOS, Linux(AMD), Linux(NVIDIA)에서 GPU 가속 코덱(H264, H265)을 자동으로 사용합니다.
- Comprehensive API: Egress, Ingress, SIP, Agent Dispatch 서비스에 대한 통합 접근을 제공합니다.