livekit
Python Real-time SDK for LiveKit
What it is and what it does
LiveKit is a Python SDK for building real-time communication applications. It provides two main interfaces: a participant SDK (rtc) for connecting to LiveKit rooms and streaming video/audio, and a server API (api) for managing rooms, generating access tokens, and orchestrating ingress/egress. The SDK handles WebRTC negotiation, media track subscription, and participant lifecycle events through an event-driven architecture built on asyncio.
The package depends on protobuf for protocol serialization, aiofiles for async file operations, and numpy for media data handling. It ships as precompiled wheels for macOS (Intel and ARM), Linux (x86_64 and ARM64), and Windows, reducing installation friction. Typical use cases include multi-participant video calls, live streaming applications, AI agent integration, and SIP bridging. The SDK is actively maintained and supports Python 3.9 through 3.14.
Use it for:
- Build multi-participant video conferencing applications with automatic track subscription and participant lifecycle management.
- Create live streaming platforms with room management, recording, and egress services via the server API.
- Integrate AI agents that perform RPC calls to connected participants or receive media streams for processing.
- Implement SIP trunk connectivity to bridge traditional telephony with LiveKit rooms.
- Capture and process local microphone/speaker input using MediaDevices with audio processing (AEC, noise suppression).
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Python SDK for building real-time video, audio, and data applications by connecting to LiveKit servers as a participant or managing rooms via server APIs.
Yes. The package is actively maintained, has no known vulnerabilities, uses a permissive Apache-2.0 license, and provides a complete real-time communication SDK with both participant and server APIs. Medium install friction is offset by precompiled wheels across major platforms. Install if you need WebRTC video/audio conferencing, live streaming, or AI agent integration in Python.
Install
livekit on PyPI
pip
pip install livekituv
uv add livekitpoetry
poetry add livekitInstalling livekit
Before you install
Medium install friction due to precompiled wheels for multiple platforms (macOS x86_64/ARM64, Linux x86_64/ARM64, Windows). Active maintenance with recent release (14 days ago) and 375 repository stars indicate ongoing support.
License in practice
Apache-2.0 permissive license allows commercial and private use with minimal restrictions; suitable for proprietary applications.
Quickstart
pip install livekit
from livekit import rtc
room = rtc.Room()
await room.connect(url, token)
@room.on("participant_connected")
def on_participant_connected(participant: rtc.RemoteParticipant):
print(f"Participant: {participant.identity}")
Requires Python 3.9 or later; asyncio event loop required for room operations; LiveKit server URL and authentication token needed to connect.
Verify before relying
- Whether sounddevice library is bundled or must be installed separately for MediaDevices functionality.
- Performance characteristics and latency guarantees for real-time media streaming.
- Whether numpy is used for media frame processing or is a transitive dependency only.
Package facts
| License | Apache-2.0 (permissive) |
| Python support | supports the current Python release (>=3.9.0) |
| Install friction | medium — platform-specific wheel |
| Runtime dependencies | 4 — protobuf, types-protobuf, aiofiles, numpy |
| Maintenance | actively maintained — 14 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 4,312,780/month — #2,334 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: livekit-1.1.14-py3-none-macosx_10_15_x86_64.whl; livekit-1.1.14-py3-none-macosx_11_0_arm64.whl; livekit-1.1.14-py3-none-manylinux_2_28_aarch64.whl; livekit-1.1.14-py3-none-manylinux_2_28_x86_64.whl; livekit-1.1.14-py3-none-win_amd64.whl
Keywords: webrtc, realtime, audio, video, livekit
Tags
More Artificial Intelligence packages
LiteLLM provides a unified Python interface to…
permissive · top 100 on PyPI
huggingface-hubClient library and CLI tool for downloading,…
permissive · top 100 on PyPI
langchainLangChain provides a framework for building…
permissive · top 1,000 on PyPI
hf-xethf-xet provides chunk-based deduplication and…
permissive · top 1,000 on PyPI
tokenizersTokenizers converts raw text into token…
permissive · top 1,000 on PyPI
transformersTransformers provides a unified framework for…
permissive · top 1,000 on PyPI
daily-pythonA Python SDK for building video and audio…
permissive · top 15,000 on PyPI
livekit-apiGenerate access tokens and call LiveKit server…
permissive · top 5,000 on PyPI
livekit-protocolProvides Python protocol stubs and type…
permissive · top 5,000 on PyPI
streamlit-webrtcAdds real-time video and audio streaming over…
permissive · top 15,000 on PyPI
livekit-agentsA framework for building realtime multimodal…
permissive · top 5,000 on PyPI
go2rtc-clientAsynchronous Python client library for…
permissive · top 15,000 on PyPI
livekit-plugins-noise-cancellationApplies real-time noise cancellation to inbound…
unclear · top 5,000 on PyPI
livekit-plugins-azureIntegrates Azure AI services, particularly…
permissive · top 15,000 on PyPI
vonage-videoPython client library for Vonage's Video API,…
permissive · top 15,000 on PyPI
livekit-plugins-telnyxIntegrates Telnyx telephony services with…
permissive · top 15,000 on PyPI