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 サービスへの統合アクセスを提供します。