はじめに
この投稿は2017年WebRTCアドベントカレンダーの17日目の記事です。
WebRTC SFU/MCUの「Licode」を使ってみました。
記事公開時点では、日本語の情報はほとんどないようです。
実行環境
- Ubuntu 14.04 LTS
- ConoHa メモリ 2GB/CPU 3Coreプラン
Licode動作環境
- Ubuntu 14.04
- MacOS X 10.11以上
インストール
- ドキュメントに従えばインストールできます。
- 操作はすべてrootで行いました。
Githubからクローン
git clone https://github.com/lynckia/licode.git
cd licode
依存パッケージをインストール
./scripts/installUbuntuDeps.sh
Licodeのインストール
./scripts/installNuve.sh
./scripts/installErizo.sh
サンプルのインストール
./scripts/installBasicExample.sh
Licodeの起動
- screenコマンドを使うか、もう一つssh接続するなどして、サンプルも起動できるようにしてください。
./scripts/initLicode.sh
サンプルの起動
- サンプルはHTTPなので、メディアの取得ができません。
- 自己証明書を作成するかSSHポートフォワーディングを使用してください。
- 私は、ポートフォワーディングを使いました。サーバーの3001番ポートをlocalhostの3001に転送するように設定してください。
./scripts/initBasicExample.sh
サンプル実行
- http://localhost:3001にアクセスしてください。(ポート転送を設定した場合)
- 「Test Connection」ボタンをクリックしてください。
- メディアへのアクセス許可を求めるダイアログが表示されるので、許可してください。
- ブラウザの画面に取得した映像と一旦サーバーに送られた映像が表示されます。
結果
-
上記の内容でサンプルを動かした場合です。
-
帯域
- 送信:約500kbps
- 受信:約500kbps
-
サーバー側CPU使用率
- 約30%
まとめ
ビルドに結構時間がかかりました。
依存パッケージにはrabbitmqやmongodbがあり、これらのインストールに時間がかかっているものと思われます。
また、ドキュメントが少ないと思いました。
個人的にはJanusの方が使いやすいと思いました。