SkyWayに接続するためのPythonのクライアント
これはSkyWayのSDKとは無関係の非公式の実装です。 動作は保証しておらず、SkyWayの仕様変更により動かなくなる可能性があります。 また、コードや動作についての質問などはSkyWayのサポートへの連絡は行わず、本リポジトリのissueに投稿してください。
- Channelへのjoin
- SFU Botの作成
- VideoStreamのPublicationのSFU BotによるForwarding
- P2PでのVideoStream、AudioStream、DataStreamのPublish / Subscribe
- SFU経由でのAudioStreamのPublish / Subscribe
- SFU経由でのVideoStreamのSubscribe
- PublicationのReplaceStream
- Streamのenable / disable
- Simulcast
- GetStats
- STUN / TURNの利用
- 再接続処理
- エラーハンドリング
- SkyWay Auth Tokenの更新
- Metadataの取得・更新
$ git clone [email protected]:kadoshita/skyway-python-client.git
$ cd skyway-python-client
$ python -m venv .
$ source bin/activate
$ python -m pip install -r requirements.txt
$ cp .env.example .env
$ vi .env # SKYWAY_APP_IDとSKYWAY_SECRET_KEYを記述する
- Webアプリケーションの起動
$ cd skyway-python-client/public
$ cp ../.env .
$ npm install
$ npm start
- Channelの作成
- http://localhost:1234/にアクセスする
- Startボタンをクリックする
- Create Channelボタンをクリックする
- Join Channelボタンをクリックする
- Channel IDをコピーする
- Publisher側の実行
- SFU BotからのPublicationのSubscribe
- コンソールに出力されたSFU BotからのPublicationのIDをコピーする
- 「Publication ID:」のテキストボックスにPublicationのIDをペーストする
- Subscribe Mediaボタンをクリックする
$ cd skyway-python-client/src
$ python main.py
channel_id: # Subscriber側で作成したChannel IDをペーストし、Enterを押す
- macOS Ventura 13.5.1
- Python 3.10.2
- pip 21.2.4
- Node.js v18.3.0