Gリポートの開発を担当している趙です。
ビデオ通話をするためのシステムを構築することが大変だと思われているかもしれませんが、
ossを調べてみたら、意外と簡単にSFUサーバーを建てることができてしまいます。
今回利用するのは、LiveKit
LiveKit is an open source WebRTC stack that gives you everything needed to build scalable and real-time video, audio, and data experiences in your applications.
- 映像、音声、データのリアルタイムでのやり取りが可能
- TURN機能を内蔵
- SDKが豊富
動作確認も含めて手順を残しておきます。
実行環境
ローカルでも動かすことができますが、今回は
AWS上にサーバーを建てて、そちらデプロイして動作を確認します
os: Ubuntu 22.04.3 LTS
・Elastic IPを紐づいておきます。
・ポートを開ける、利用ポート一覧
LiveKit導入
公式Gitはこちら
・LiveKitをインストール
・livekit-cliをインストール
・開発モードで起動
動作確認
・ローカルpcからテスト用のクライアントを立ち上げる
ブラウザが自動で立ち上がり、下記画面が表示される
・Token発行
サーバーから
このようにTokenが発行される
発行されたTokenをweb画面の「Token」欄に入力
・繋いでみる
「LiveKit URL」欄に「ws://{サーバーのElastic IP}:7880」を入れる
このように
「Connect」ボタンを押します
繋がるとカメラ映像が表示される。
画面下のログからも確認できる
・同じ手順で2台目、3台目を繋いで確認
本番運用のためには
・ドメインを用意
・SSL証明書設定
・TURN機能を利用するには、それ用のドメインとSSL設定が必要
説明は割愛します、詳細はこちらを参照してください。
終わり