livekit/python-sdks
LiveKit real-time and server SDKs for Python
What it solves
この SDK は、リアルタイムの音声・映像・データ通信を Python アプリケーションに組み込むためのインフラを提供します。低レベルの WebRTC インフラをゼロから構築する必要がなく、開発者はマルチモーダル AI エージェント、ライブストリーミングサービス、ビデオ会議ツールを作成できます。
How it works
プロジェクトは主に 2 つの Python パッケージで構成されています。
- livekit: リアルタイム SDK で、Python アプリがルームの参加者として音声/映像トラックの購読と配信を行えます。
- livekit-api: サーバーサイド SDK で、認証用トークンの生成や LiveKit Cloud またはセルフホストサーバーによるルーム管理などの管理タスクに使用します。
内部では高性能メディア処理のために Rust SDK を利用し、ハードウェアアクセラレーション(VideoToolbox、VAAPI、NVENC/NVDEC)によるエンコード/デコードをサポートして CPU 負荷を低減します。
Who it’s for
- AI 開発者: リアルタイムで「見る」「聞く」「話す」ことができるマルチモーダル AI エージェントを構築する方。
- アプリケーション開発者: Python でライブストリーミングやビデオ通話アプリを作りたい方。
- バックエンドエンジニア: セッション認証やルームオーケストレーションを管理する方。
Highlights
- フルデュプレックスオーディオ: マイク入力とスピーカー出力を同時に行える、内蔵 Acoustic Echo Cancellation (AEC) を備えています。
- RPC 機能: 参加者同士が事前定義されたメソッド呼び出しを行えるため、LLM の関数呼び出しをクライアントに転送するのに便利です。
- ハードウェアアクセラレーション: macOS、Linux(AMD)、Linux(NVIDIA)で GPU 加速コーデック(H264、H265)を自動的に使用します。
- 包括的 API: Egress、Ingress、SIP、Agent Dispatch サービスへの統合アクセスを提供します。