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 です。

特徴

  • Sora C++ SDK ベース
  • WebRTC 部分の機能は libwebrtc を採用
  • Windows / macOS / Linux (Ubuntu) プラットフォームに対応
  • NVIDIA Jetson に対応
  • Intel / Apple / NVIDIA のハードウェアデコーダー/エンコーダーに対応
    • Intel VPL (AV1 / H.264 / H.265)
    • Apple Video Toolbox (H.264 / H.265)
    • NVIDIA Video Codec SDK (VP9 / H.264 / H.265)
    • NVIDIA Jetson JetPack SDK (H.264 / H.265 / AV1)
  • OpenH264 を利用した H.264 のソフトウェアエンコーダー/デコーダーに対応
  • 物体検出などの入力に Sora 経由で受信した映像が利用できる
  • 音声認識などの入力に Sora 経由で受信した音声を利用できる
  • pip install sora_sdk でインストール可能

利用イメージ

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

ドキュメント

Sora Python SDK

サンプル集

examples を参照してください。

sora_sdk パッケージの追加

pip

pip install sora_sdk

Rye

Rye

rye add sora_sdk
rye sync

NVIDIA Jetson 向けパッケージ

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

システム条件

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

対応プラットフォーム

  • Windows 11 x86_64 以降
  • macOS 14 arm64 以降
  • Ubuntu 24.04 x86_64
  • Ubuntu 22.04 x86_64
  • Ubuntu 22.04 arm64 (NVIDIA Jetson JetPack SDK 6)
    • Python 3.10 のみ対応
    • NVIDIA Jetson JetPack SDK 6

Ubuntu LTS への対応

最新の 2 バージョンのみをサポートします。 それよりの過去の Ubuntu に付いては優先実装で対応できますので、ご相談ください。

  • Ubuntu 24.04 LTS
    • Ubuntu 28.04 リリース、3 ヶ月後にサポート終了
  • Ubuntu 22.04 LTS
    • Ubuntu 26.04 リリース、3 ヶ月後にサポート終了

対応機能

優先実装

優先実装とは 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)

サポートについて

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.

このリポジトリに含まれる shiguremaru.png ファイルのライセンスは CC BY-NC-ND 4.0 です。

OpenH264

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

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

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.3.0.dev6.tar.gz (6.4 MB view details)

Uploaded Source

Built Distributions

sora_sdk-2024.3.0.dev6-cp312-cp312-win_amd64.whl (7.7 MB view details)

Uploaded CPython 3.12 Windows x86-64

sora_sdk-2024.3.0.dev6-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.3.0.dev6-cp312-cp312-macosx_13_0_arm64.whl (6.4 MB view details)

Uploaded CPython 3.12 macOS 13.0+ ARM64

sora_sdk-2024.3.0.dev6-cp311-cp311-win_amd64.whl (7.7 MB view details)

Uploaded CPython 3.11 Windows x86-64

sora_sdk-2024.3.0.dev6-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.3.0.dev6-cp311-cp311-macosx_13_0_arm64.whl (6.4 MB view details)

Uploaded CPython 3.11 macOS 13.0+ ARM64

sora_sdk-2024.3.0.dev6-cp310-cp310-win_amd64.whl (7.7 MB view details)

Uploaded CPython 3.10 Windows x86-64

sora_sdk-2024.3.0.dev6-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.3.0.dev6-cp310-cp310-macosx_13_0_arm64.whl (6.4 MB view details)

Uploaded CPython 3.10 macOS 13.0+ ARM64

sora_sdk-2024.3.0.dev6-cp39-cp39-win_amd64.whl (7.7 MB view details)

Uploaded CPython 3.9 Windows x86-64

sora_sdk-2024.3.0.dev6-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.6 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

sora_sdk-2024.3.0.dev6-cp39-cp39-macosx_13_0_arm64.whl (6.4 MB view details)

Uploaded CPython 3.9 macOS 13.0+ ARM64

File details

Details for the file sora_sdk-2024.3.0.dev6.tar.gz.

File metadata

  • Download URL: sora_sdk-2024.3.0.dev6.tar.gz
  • Upload date:
  • Size: 6.4 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.4

File hashes

Hashes for sora_sdk-2024.3.0.dev6.tar.gz
Algorithm Hash digest
SHA256 c7e17d878b4c440e6d190500cb8351acccd70289544e9a1d989e859acba42d8b
MD5 f9811088ca5719cd199404801dd34d6f
BLAKE2b-256 5269f03b2f9ff33a243411e24bbdb550e6d35d7ce1cecb03d489c67570eb748e

See more details on using hashes here.

File details

Details for the file sora_sdk-2024.3.0.dev6-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for sora_sdk-2024.3.0.dev6-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 0db1c443794eca9cd49214a34749766d93befa8e4a9329cadd250f6b2ac735a0
MD5 b2199dc7033c68e2effffee68e26854c
BLAKE2b-256 f8f2158fa2754201f38e0dc83a768fbdba1733c6a197a723919400fb96d815e3

See more details on using hashes here.

File details

Details for the file sora_sdk-2024.3.0.dev6-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for sora_sdk-2024.3.0.dev6-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7cca659629ce44f944e2d1b2abb5e6b391d573ff7f99b7384f52ea1933766333
MD5 ea60992ca6fc3d9a296ce17094eb80f8
BLAKE2b-256 47fec26f7da01b2415b0f296abf0bbfa751a534650d08dbd57fa73a75177649b

See more details on using hashes here.

File details

Details for the file sora_sdk-2024.3.0.dev6-cp312-cp312-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for sora_sdk-2024.3.0.dev6-cp312-cp312-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 2365bda46331c4fbe4c178d27cc5eb10c719e22913ea9a7dd3fc0bc0ffd63fcf
MD5 3d0ba903d021ce63997050065729002c
BLAKE2b-256 f298bb697fe2f7eb9d59098f37ae269b1384ac949d197e8b806de91ebf6c0809

See more details on using hashes here.

File details

Details for the file sora_sdk-2024.3.0.dev6-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for sora_sdk-2024.3.0.dev6-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 86692534814c8b287112c73f945720fe03c7e10c7a6c0716754d4aba10bd0015
MD5 fec588c0a96be67689c30e9a57fbfd37
BLAKE2b-256 983cec6b3d3ed51920c55c1fce667f4814f606b4edfac55480a23a791c8a5c3f

See more details on using hashes here.

File details

Details for the file sora_sdk-2024.3.0.dev6-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for sora_sdk-2024.3.0.dev6-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 98ddb0c41f736763d38eb80adaccb17e1508c4954de4f17e89fe84af7276f345
MD5 23097a82b120b9ba32d27f9a40fedf53
BLAKE2b-256 337b980fe3a08e8ef487027941bd58a59986d109a4db41c4a6eb2f67224611b7

See more details on using hashes here.

File details

Details for the file sora_sdk-2024.3.0.dev6-cp311-cp311-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for sora_sdk-2024.3.0.dev6-cp311-cp311-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 5831176f896d1551ec9bbe770cfc20d94a9f9c3e0aa0ac70ade0929897ae4a20
MD5 5598cb73591c2aafe86fc9c6aee463e7
BLAKE2b-256 19851651cedd305d1e46f33b3aaee9496f3c6890b548f5b83e307dd28e3612c2

See more details on using hashes here.

File details

Details for the file sora_sdk-2024.3.0.dev6-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for sora_sdk-2024.3.0.dev6-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 0c86fe3f5cac36ad5321ef42f1597546002c526dad036fb3f11618479ee4220f
MD5 14a3c178b3c5ee2dc9ea800cf9e24fba
BLAKE2b-256 f75138ac4a187a368756ec8881c0d2055124119b62f4260aef48c80d0587e325

See more details on using hashes here.

File details

Details for the file sora_sdk-2024.3.0.dev6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for sora_sdk-2024.3.0.dev6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 bd5f4ea733a499aabb2a03dab397b56ae656b07b905248d9157810b05b0523a6
MD5 b69161b7d1a6d265dcb566ac2b1705ce
BLAKE2b-256 82c2fb17b0ee190eac1c76ad8bcb4a55138f4c66db160a3764fd4bc96a2aa86e

See more details on using hashes here.

File details

Details for the file sora_sdk-2024.3.0.dev6-cp310-cp310-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for sora_sdk-2024.3.0.dev6-cp310-cp310-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 df49ce9213d1d90df4f55f86f23a4e552e7e85763e38be315b713edafca7936c
MD5 8c42b108f8686778f396b558606e6466
BLAKE2b-256 4a3188208a241cd934d847789a2cf1e6021418f4962c8ff45fb4463f5215b444

See more details on using hashes here.

File details

Details for the file sora_sdk-2024.3.0.dev6-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for sora_sdk-2024.3.0.dev6-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 d28925c27afc93c752f2d9a6a9a73ad10c2611ff6366d6d03c186347c44bb7aa
MD5 d464a9b297c6f25d8e06c6c95a550f56
BLAKE2b-256 26cf6cc6a20f07041c01664166db8d53e2b57b9db4244f80f029a0ae37e7bd61

See more details on using hashes here.

File details

Details for the file sora_sdk-2024.3.0.dev6-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for sora_sdk-2024.3.0.dev6-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a8d3bff57695c017a031374c42ff13f49cc07f36f41c5d821595db06f8ab36a9
MD5 8b639e4095dd3e9bbf7581878c77fafd
BLAKE2b-256 35d60a58c1b86796d494cff86c32394c8d42d62e752e8dadec57ff5deb58a56e

See more details on using hashes here.

File details

Details for the file sora_sdk-2024.3.0.dev6-cp39-cp39-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for sora_sdk-2024.3.0.dev6-cp39-cp39-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 d2453ed8450431f185aa49144108dee65a06b35b3913ad50c84ed0edc6c35212
MD5 e76ecc2a2759d95a95a2b40269716729
BLAKE2b-256 89619de750148de33d89ac170e903075c76fd5f4183140646643d88746be27c8

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