WebRTC
結局これはなんやねん
参考資料
https://jp.vcube.com/sdk/blog/webrtc-general-server-configuration-signaling-turn-sfu.html
https://qiita.com/takano-h/items/409a8a7af7d4a2b42f90
https://qiita.com/massie_g/items/916694413353a3293f73
https://zenn.dev/voluntas/scraps/82b9e111f43ab3
ちゃんと勉強するならこの資料の先(W3CとかRFCとか)を読み込んだ方が良い
利用するのにいくつかサーバーが必要になる
シグナリングサーバー
通信相手の情報を集約するサーバー
STUNサーバー
WebRTCの本流での通信(ビデオのやり取りなど)は、P2Pで行ってる。
が、P2Pだと、グローバルIPが振られていないネットワークにおいて、NAT超えが必要になる。
そこで、NAT越えを実現するために必要になるのが、STUNサーバとTURNサーバ
STUNサーバでは、NAT越えが必要かどうかを調べる事が出来る
TURNサーバー
実際にNAT越えを実現するためのサーバー
SFUサーバー
音声や映像をP2Pではなく、サーバー経由で行う
多数の視聴者、例えば10万人の視聴者相手に配信する場合、配信者の端末に10万人分の通信負荷がかかる。
が、SFUサーバを中継することで、配信者はSFUサーバとだけ通信する。10万人との通信は、SFUサーバが肩代わりする。
MCUサーバー
SFUサーバーの強化版。
音声や映像を合成したり、受信者の回線に合わせてビットレート調整が出来たりする。
WebRTC Gatewayって?
https://qiita.com/daisukeoda/items/86691bdb60d101b0e8d7
WebRTC sora を試せる場所
Sora Labo
https://github.com/shiguredo/sora-unity-sdk-samples
https://torikizi.hatenablog.jp/entry/2019/12/03/101411