Skip to main content

WebRTC SFU Sora Python SDK

Project description

Sora Python SDK

PyPI image License Actions status

Sora Python SDK は WebRTC SFU Sora の Python クライアントアプリケーションを開発するためのライブラリです。Sora C++ SDK をベースにしています。

About Shiguredo's open source software

We will not respond to PRs or issues that have not been discussed on Discord. Also, Discord is only available in Japanese.

Please read https://github.com/shiguredo/oss/blob/master/README.en.md before use.

時雨堂のオープンソースソフトウェアについて

利用前に https://github.com/shiguredo/oss をお読みください。

Sora Python SDK について

様々なプラットフォームに対応しすぐに使い始められる WebRTC SFU Sora 向けの Python SDK です。

音声や映像デバイスの処理を SDK から独立させているため、様々なライブラリを利用する事ができます。

特徴

  • Sora C++ SDK ベース
  • WebRTC 部分の機能は libwebrtc を採用
  • Windows / macOS / Linux (Ubuntu) プラットフォームに対応
  • WebRTC 統計情報の取得が可能
  • Intel / Apple / NVIDIA のハードウェアデコーダー/エンコーダーに対応
  • OpenH264 を利用した H.264 のソフトウェアエンコーダー/デコーダーに対応
  • 音声デバイス処理に sounddevice などが利用できる
  • 映像デバイス処理に opencv-python などが利用できる
  • 音声認識などの入力に受信した音声を利用できる
  • 物体検出などの入力に受信した映像を利用できる
  • uv add sora_sdkpip install sora_sdk でインストール可能
  • NVIDIA Jetson JetPack SDK に対応

利用イメージ

  • データチャンネルを利用して Python において映像、音声を解析した結果を Sora 経由で配信する
  • Text to Speech の音声を Sora 経由で配信する
  • 映像入力に対して Pillow などで加工した映像を Sora を経由で配信する
  • A チャンネルの参加者からの映像と音声を B チャンネルに対して加工した上で Sora 経由で配信する

ドキュメント

Sora Python SDK

サンプル集

shiguredo/sora-python-sdk-examples

sora_sdk パッケージの追加

uv

uv

uv add sora_sdk
uv sync

pip

pip install sora_sdk

NVIDIA Jetson 向けパッケージ

PyPI 経由ではインストールできません。 パッケージバイナリを配布しておりますので、そちらをご利用ください。

https://github.com/shiguredo/sora-python-sdk/releases/tag/2024.3.0-jetson-jetpack-6.0.0.0

システム条件

  • WebRTC SFU Sora 2023.2.0 以降
  • Python 3.10 以上

対応プラットフォーム

  • Windows 11 x86_64
  • Windows Server 2022 x86_64
  • macOS Sequoia 15 arm64
  • macOS Ventura 14 arm64
  • macOS Sonoma 13 arm64
  • Ubuntu 24.04 LTS x86_64
  • Ubuntu 24.04 LTS arm64
  • Ubuntu 22.04 LTS x86_64
  • Ubuntu 22.04 LTS arm64 (NVIDIA Jetson JetPack SDK 6)
    • PyPI からではなくパッケージファイルを利用してください

優先実装

優先実装とは Sora のライセンスを契約頂いているお客様向けに Sora Python SDK の実装予定機能を有償にて前倒しで実装することです。

詳細は Discord やメールなどでお気軽にお問い合わせください

優先実装が可能な機能一覧

詳細は Discord やメールなどでお気軽にお問い合わせください

  • Windows 11 arm64
  • Ubuntu 24.04 arm64
  • Ubuntu 22.04 arm64
  • Ubuntu 20.04 arm64 (NVIDIA Jetson JetPack SDK 5)
  • AMD Video Core Next (VCN) 対応
    • VP9 / AV1 / H.264 / H.265
  • Python 3.9 以前への対応

サポートについて

Discord

  • サポートしません
  • アドバイスします
  • フィードバック歓迎します

最新の状況などは Discord で共有しています。質問や相談も Discord でのみ受け付けています。

https://discord.gg/shiguredo

バグ報告

Discord へお願いします。

ライセンス

Apache License 2.0

Copyright 2023-2024, tnoho (Original Author)
Copyright 2023-2024, Wandbox LLC (Original Author)
Copyright 2023-2024, Shiguredo Inc.

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

OpenH264

https://www.openh264.org/BINARY_LICENSE.txt

"OpenH264 Video Codec provided by Cisco Systems, Inc."

H.264 (AVC) と H.265 (HEVC) のライセンスについて

時雨堂が提供する libwebrtc のビルド済みバイナリには H.264 と H.265 のコーデックは含まれていません

H.264

H.264 対応は Via LA Licensing (旧 MPEG-LA) に連絡を取り、ロイヤリティの対象にならないことを確認しています。

時雨堂がエンドユーザーの PC /デバイスに既に存在する AVC / H.264 エンコーダー/デコーダーに依存する製品を提供する場合は、 ソフトウェア製品は AVC ライセンスの対象外となり、ロイヤリティの対象にもなりません。

H.265

H.265 対応は以下の二つの団体に連絡を取り、H.265 ハードウェアアクセラレーターのみを利用し、 H.265 が利用可能なバイナリを配布する事は、ライセンスが不要であることを確認しています。

また、H.265 のハードウェアアクセラレーターのみを利用した H.265 対応の SDK を OSS で公開し、 ビルド済みバイナリを配布する事は、ライセンスが不要であることも確認しています。

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sora_sdk-2024.4.0.dev15.tar.gz (6.6 MB view details)

Uploaded Source

Built Distributions

sora_sdk-2024.4.0.dev15-cp313-cp313-win_amd64.whl (7.9 MB view details)

Uploaded CPython 3.13 Windows x86-64

sora_sdk-2024.4.0.dev15-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.6 MB view details)

Uploaded CPython 3.13 manylinux: glibc 2.17+ x86-64

sora_sdk-2024.4.0.dev15-cp313-cp313-macosx_14_0_arm64.whl (6.5 MB view details)

Uploaded CPython 3.13 macOS 14.0+ ARM64

sora_sdk-2024.4.0.dev15-cp313-cp313-macosx_13_0_arm64.whl (6.5 MB view details)

Uploaded CPython 3.13 macOS 13.0+ ARM64

sora_sdk-2024.4.0.dev15-cp312-cp312-win_amd64.whl (7.9 MB view details)

Uploaded CPython 3.12 Windows x86-64

sora_sdk-2024.4.0.dev15-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.6 MB view details)

Uploaded CPython 3.12 manylinux: glibc 2.17+ x86-64

sora_sdk-2024.4.0.dev15-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (7.1 MB view details)

Uploaded CPython 3.12 manylinux: glibc 2.17+ ARM64

sora_sdk-2024.4.0.dev15-cp312-cp312-macosx_14_0_arm64.whl (6.5 MB view details)

Uploaded CPython 3.12 macOS 14.0+ ARM64

sora_sdk-2024.4.0.dev15-cp312-cp312-macosx_13_0_arm64.whl (6.5 MB view details)

Uploaded CPython 3.12 macOS 13.0+ ARM64

sora_sdk-2024.4.0.dev15-cp311-cp311-win_amd64.whl (7.9 MB view details)

Uploaded CPython 3.11 Windows x86-64

sora_sdk-2024.4.0.dev15-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.6 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

sora_sdk-2024.4.0.dev15-cp311-cp311-macosx_14_0_arm64.whl (6.5 MB view details)

Uploaded CPython 3.11 macOS 14.0+ ARM64

sora_sdk-2024.4.0.dev15-cp311-cp311-macosx_13_0_arm64.whl (6.5 MB view details)

Uploaded CPython 3.11 macOS 13.0+ ARM64

sora_sdk-2024.4.0.dev15-cp310-cp310-win_amd64.whl (7.9 MB view details)

Uploaded CPython 3.10 Windows x86-64

sora_sdk-2024.4.0.dev15-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.6 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

sora_sdk-2024.4.0.dev15-cp310-cp310-macosx_14_0_arm64.whl (6.5 MB view details)

Uploaded CPython 3.10 macOS 14.0+ ARM64

sora_sdk-2024.4.0.dev15-cp310-cp310-macosx_13_0_arm64.whl (6.5 MB view details)

Uploaded CPython 3.10 macOS 13.0+ ARM64

File details

Details for the file sora_sdk-2024.4.0.dev15.tar.gz.

File metadata

  • Download URL: sora_sdk-2024.4.0.dev15.tar.gz
  • Upload date:
  • Size: 6.6 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for sora_sdk-2024.4.0.dev15.tar.gz
Algorithm Hash digest
SHA256 191c2b9d5a36cb1e48b84b607bd52c1530799b0ccec5fccfa1c07dd065ea353c
MD5 dc91148505b8a306ce30df47dc819cab
BLAKE2b-256 5045921fd3c94dab8b86f1b88807c6db003eaeda87cc6deedadbc159f1269f2f

See more details on using hashes here.

File details

Details for the file sora_sdk-2024.4.0.dev15-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for sora_sdk-2024.4.0.dev15-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 4cb9db8d91ed412a5a9f930abb39cb1e1fbd387d6393a8b51cc4506e353de244
MD5 ca91963fb741f390653d5eadf65414e2
BLAKE2b-256 01dfad752826fa7d70fcd0058118687d0a351682142c59d5e1c76a45de2ce219

See more details on using hashes here.

File details

Details for the file sora_sdk-2024.4.0.dev15-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for sora_sdk-2024.4.0.dev15-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 871502c3da2f1078f8274153eb16df910125d68a6ed874c3b6636b086029b205
MD5 860e28caef96d75fe25c02636ce3504b
BLAKE2b-256 e09f11c1f6e6c15fc012e1a99905777ebef2f6924ca607d1393103f3c1ace3a9

See more details on using hashes here.

File details

Details for the file sora_sdk-2024.4.0.dev15-cp313-cp313-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for sora_sdk-2024.4.0.dev15-cp313-cp313-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 c455ca386e390d879b7ae1b0d19547ef12cb23f4fda731ade15de02150980c77
MD5 d09169bfc83423abf539b45d02d5cb34
BLAKE2b-256 3be524a5484de163fd9b4ea99bab7a1ca20c86571cba1bf32506ccafe51a6483

See more details on using hashes here.

File details

Details for the file sora_sdk-2024.4.0.dev15-cp313-cp313-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for sora_sdk-2024.4.0.dev15-cp313-cp313-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 709eecaf8d4524605fa6106992dbb808746639ad03410044bb200f0876c48aaf
MD5 fa7ae9840fcefa5de82974e77d63e969
BLAKE2b-256 a45c77d7d4f849fd6f92e2dd17a7bfcb067195cebbe9b718e4f4c6fea81ecf8e

See more details on using hashes here.

File details

Details for the file sora_sdk-2024.4.0.dev15-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for sora_sdk-2024.4.0.dev15-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 72d3b74cddb1271694412f33faee89169801fc32274a95578beff88d76557369
MD5 58e909e4e44dc8c3f7b6ee64fa4d1373
BLAKE2b-256 4b1828b355bb3d65001fd56ed29deaf4c2f52b4e90f027e859be704980637b35

See more details on using hashes here.

File details

Details for the file sora_sdk-2024.4.0.dev15-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for sora_sdk-2024.4.0.dev15-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 bac643ba5cac454e1791a63efe404dc4b46bde44a130228e140e446dafc70732
MD5 0eb067254b3916957c353d88c42f2a2b
BLAKE2b-256 45a26025d4c47a32b3c295fb2e07449c6026f94899acef9046f217e5f77d793c

See more details on using hashes here.

File details

Details for the file sora_sdk-2024.4.0.dev15-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for sora_sdk-2024.4.0.dev15-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 cf371d2a5d7e9ad884a55c27842dc6ea60e87ee96e0a88f645a21917854c2acb
MD5 a06c4b4699e41f8d8427cb79bd658d95
BLAKE2b-256 db641da658b856aca5e6f6e0a791536b72efb0943f62fb74a69874d363964f3f

See more details on using hashes here.

File details

Details for the file sora_sdk-2024.4.0.dev15-cp312-cp312-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for sora_sdk-2024.4.0.dev15-cp312-cp312-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 261c8edcffc63b4b6c0e818a72b50349cd638ade38ac3e753c0d8e0a28bfb0ab
MD5 01b34cebe6f5ebdc336c416d0fdeb89c
BLAKE2b-256 7309504e685dc5431f400b99f37eafee8623ecedfdd4a48866f81ea566fe90bd

See more details on using hashes here.

File details

Details for the file sora_sdk-2024.4.0.dev15-cp312-cp312-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for sora_sdk-2024.4.0.dev15-cp312-cp312-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 351063d33bdb259f139d32a56aae95e63b51b5102f766520cde98c0b67dbdc77
MD5 b2c6939fddddbf4f6f5fee8523951228
BLAKE2b-256 2192ce3912956d251f767225e71923087dcec9f34b2e1f0ae435d96e0637be04

See more details on using hashes here.

File details

Details for the file sora_sdk-2024.4.0.dev15-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for sora_sdk-2024.4.0.dev15-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 2bb5283cb1d9718a9ee6be53593b014f40fcfcdc5d1e03bad2daee0caac4174b
MD5 d630356ad60d2d81d249b991b02ed4ea
BLAKE2b-256 984e5f03dbd93c79ad4efb283f68e504fb13f11257e6672e20c87313ee3deec6

See more details on using hashes here.

File details

Details for the file sora_sdk-2024.4.0.dev15-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for sora_sdk-2024.4.0.dev15-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ffffb13637b15c6908bd66d7eb0dc8b4af3355bbc9456e2a3182d3e86c5feca4
MD5 74d4e8e11f24e1bae4c4430e257c608b
BLAKE2b-256 c1fcb58ad72574d74cd2d359dc86c51e6969265bd10696287af18fb51cb68ceb

See more details on using hashes here.

File details

Details for the file sora_sdk-2024.4.0.dev15-cp311-cp311-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for sora_sdk-2024.4.0.dev15-cp311-cp311-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 3003c00bf1d86048959478f4e7160c99db7e8111e39259e70f9929057f546391
MD5 bd5eb5e004afaea1ca3c16f757a6d35d
BLAKE2b-256 3c5e0cc8ae76299f439c6ec4d35d6cf380fdfcb022f540492f15c07d0959b87c

See more details on using hashes here.

File details

Details for the file sora_sdk-2024.4.0.dev15-cp311-cp311-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for sora_sdk-2024.4.0.dev15-cp311-cp311-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 efd4b051b6fd92b5d07df73948abc248d80a9c4e8022ff1469f4344a4a027265
MD5 2fad7364a87c0750ec6e67f63d715461
BLAKE2b-256 e2ad38ab3ffc66fb56359614be4edb42ee44ffe9cc4d1c52b651a701afc39952

See more details on using hashes here.

File details

Details for the file sora_sdk-2024.4.0.dev15-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for sora_sdk-2024.4.0.dev15-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 9c3206832c357f9c929e86b04a50893b8920e696d1428b64f2e1112f20fb38f7
MD5 28094ed6f178b25ae270c03d0429da37
BLAKE2b-256 a153e78b1dc5e9d16ce0865a126cbddb89d00d08c9ff549e7aaf7918f0c3e406

See more details on using hashes here.

File details

Details for the file sora_sdk-2024.4.0.dev15-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for sora_sdk-2024.4.0.dev15-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c4f85d619173819a6ee17fa8988ae55e51e58f5e2200d2ad1b58d0bfda82a82e
MD5 63385c6c06019b08e2e3a5382c198a34
BLAKE2b-256 9832e01dd778511bc8a877f3a3e0b524515ae3b8be2d03a85fc3f3e712a0ca32

See more details on using hashes here.

File details

Details for the file sora_sdk-2024.4.0.dev15-cp310-cp310-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for sora_sdk-2024.4.0.dev15-cp310-cp310-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 918929289ee0aafeb2e38413e023eb4d0d421fecc815cb8e624bba573473e796
MD5 ca0310596d645978c1122cdf46472236
BLAKE2b-256 f9b97eb17cef1e5ef310d5d812324a1e49073e09bd07536a20fecce87c6ffa29

See more details on using hashes here.

File details

Details for the file sora_sdk-2024.4.0.dev15-cp310-cp310-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for sora_sdk-2024.4.0.dev15-cp310-cp310-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 0dd426d6fea1e1f7ac0f22456750dba8cab5fc998892860ade3daabc77632f12
MD5 20a309c0a2f05cca20d6df485913a4b3
BLAKE2b-256 dcd24e57b451d9562d1450a54c47501e55496c00a7853b90148c605567f9207d

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page