Giter Club home page Giter Club logo

sora-c-sdk's Introduction

Sora C SDK

GitHub tag (latest SemVer) License

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 C SDK について

WebRTC SFU Sora 向けの C のクライアント向け SDK です。 libwebrtc を利用せず、 libdatachannel を利用する事でバイナリサイズやフットプリント、アップデート頻度を抑えています。

特徴

Sora C++ SDK との比較

項目 Sora C++ SDK Sora C SDK
ライセンス Apache-2.0 Apache-2.0
WebRTC ライブラリ libwebrtc libdatachannel
WebRTC ライブラリライセンス BSD-3-Clause MPL-2.0
バイナリサイズ 大きい 小さい
フットプリント 大きい 小さい
アップデート頻度 積極的 控えめ
暗号ライブラリ BoringSSL Mbed TLS
SRTP ライブラリ libsrtp libsrtp
SCTP ライブラリ libwebrtc (dcsctp) usrsctp
ICE ライブラリ libwebrtc libjuice
WebSocket ライブラリ Boost libdatachannel
プロトコル Sora C++ SDK Sora C SDK
TURN-UDP 対応 対応
TURN-TCP 対応 非対応
TURN-TLS 対応 非対応
音声コーデック Sora C++ SDK Sora C SDK
Opus 対応 対応
Lyra 対応 非対応
AAC 非対応 優先実装
映像コーデック Sora C++ SDK Sora C SDK
VP8 対応 優先実装
VP9 対応 優先実装
AV1 対応 優先実装
H.264 (HWA) 対応 対応
H.265 (HWA) 対応 対応
OS / アーキテクチャ Sora C++ SDK Sora C SDK
Ubuntu / x86_64 対応 対応
Ubuntu / x86 非対応 優先実装
Ubuntu / arm64 対応 優先実装
Ubuntu / arm32 非対応 優先実装
Debian / riscv64 非対応 対応予定
Debian / riscv32 非対応 優先実装
Raspberry Pi OS / arm64 非対応 対応予定
Raspberry Pi OS / arm32 非対応 対応予定
Windows / x86_64 対応 優先実装
Windows / arm64 非対応 優先実装
macOS / arm64 対応 対応
iOS / arm64 対応 優先実装
Android / arm64 対応 優先実装
Raspberry Pi Sora C++ SDK Sora C SDK
Raspberry Pi Zero W 非対応 対応予定
Raspberry Pi Zero WH 非対応 対応予定
Raspberry Pi Zero 2 W 非対応 対応予定

Raspberry Pi Zero シリーズ以外の対応予定はありません。

NVIDIA Jetson Sora C++ SDK Sora C SDK
NVIDIA Jetson AGX Orin 対応 非対応
NVIDIA Jetson AGX Xavier 対応 非対応
NVIDIA Jetson Xavier NX 対応 非対応

NVIDIA Jetson シリーズへの対応予定はありません。

基本的には Sora C++ SDK を利用してください。 バイナリサイズやフットプリント、アップデート頻度を抑えたい場合のみ Sora C SDK を利用してください。

Sora 機能

機能 Sora C++ SDK Sora C SDK
sendrecv (送受信) 対応 優先実装
sendonly (送信のみ) 対応 対応
recvonly (受信のみ) 対応 対応予定
データチャネルシグナリング 対応 対応
マルチストリーム 対応 対応
サイマルキャスト 対応 対応
スポットライト 対応 非対応
データチャネルメッセージング 対応 対応

Sora C SDK は Sora の機能への積極な対応を行いません。

対応 Sora

WebRTC SFU Sora 2023.2.0 以降

Sora Labo

検証目的であれば無料で利用可能な Sora Labo があります。 GitHub アカウントを持っていればすぐに利用可能です。

Sora Labo

動作環境

  • Ubuntu 22.04
    • x86_64
  • Ubuntu 20.04
    • x86_64
  • macOS 14
    • arm64
    • VideoToolbox
      • H.264 HWA (Encoder)
      • H.265 HWA (Encoder)

対応候補

優先実装としてお受けできます

  • Raspberry Pi Zero
    • Raspberry Pi OS
    • arm64 / arm
    • H.264 HWA (Encoder)
  • Luckfox Pico
    • arm64
    • H.265 HWA (Encoder)
    • H.264 HWA (Encoder)
    • JPEG HWA (Decoder)
  • VisionFive 2
    • Debian 12.0
    • riscv64
    • H.265 HWA (Encoder)
  • Milk-V
    • riscv64
    • armv64
    • H.265 HWA (Encoder)
    • H.264 HWA (Encoder)

FAQ

FAQ.md をお読みください。

方針

優先実装

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

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

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

ハードウェア対応

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

ハードウェア対応とは Sora のライセンスを契約頂いているお客様限定で Sora C SDK を指定いただいたハードウェアで動作するよう有償にて対応します。

  • メインラインにはマージしません
    • support ブランチにて公開します
    • VisionFive2 対応であれば support/vision-five2-risc-v にて公開します
    • Luckfox Pico 対応であれば support/luckfox-pico-arm64 にて公開します
  • メンテナンスが必要な場合は毎月の費用が発生します
    • バグ修正対応のみ
    • バグフィックスアップデートとしてリリースを行います
  • メインラインへの追従はそのたび費用が発生します
    • メジャーバージョンアップデートとしてリリースを行います
  • ハードウェアアクセラレーターに対応します

サポートについて

Discord

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

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

https://discord.gg/shiguredo

バグ報告

Discord へお願いします。

ライセンス

Apache License 2.0

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."

sora-c-sdk's People

Contributors

enm10k avatar melpon avatar torikizi avatar voluntas avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Forkers

stricklandf

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.