Selective Forwarding Unit
クライアントから受け取ったメディア(音声や映像)を他のクライアントに加工せずに再配信するサーバ.
WebRTC SFUクライアントがWebRTC SFUサーバと通信できる理由は、WebRTC SFUサーバが固定IPだから。
SFUは固定IP。クライアントは固定IPのSFUに対してリクエストし、レスポンスを受け取っている。よって、WebRTC クライアントはSFUに固定IPで容易に通信できる。
また SFU は音声や映像を再変換せず配信するため、 サーバを経由したとしても遅延を 1 秒未満に抑えることが可能になります。
よく言われる WebRTC SFU の課題をどう解決しているかをまとめておいたので参考にしてほしい。 全員に同一ビットレートを配信する必要がある
Simulcast や SVC を利用することで解決している
大規模配信ができない
リレー機能を利用することで解決している
話をしている人だけを高画質にするなどの負荷を下げる機能を独自に実装することで解決している
録画合成の仕組みを別途用意することで解決している
いままでの技術とどう違うのか
注意してほしいのは今使われている WebRTC は新しくできた技術ではなく、既存技術をいろいろ組み合わせてできた技術。 つまり、今まで使われてきた技術をうまくまとめ、ブラウザ上で使えるようにした技術と考えてもらって問題ない。 https://scrapbox.io/files/683ff7d6b9ca10f90386d128.png https://gist.github.com/voluntas/4d2bd3e878965bdd747a