LoginSignup
4
2

More than 3 years have passed since last update.

Janusインストール法(Ubuntu 18.04.4 Server)

Last updated at Posted at 2020-07-06

WebRTCとJanusについて

簡単にWebRTCとJanusについて説明します。

WebRTCとは?

WebRTC(Web Real-Time Communication)はブラウザーやクライエント間で直接にリアルタイムで(大体P2P)つながり画像ストリーム、オーディオやデータを送ることが出来る複数のプロトコールとAPIなどの組合です。

WebRTC搭載のブラウザーならディベロパーはブラウザーのAPIを使いリアルタイムアプリケーションを作ることが可能です。

HTTPやWebSocketとの違いとしては、WebRTCの通信はクライエントの間のサーバーがないです。

ですが、サーバーが必要ないわけではないです。サーバーはクライエントたちを最初に見つけてあげる役割などを行います。これをどうやって行うかはとても大きいものなのでこの投稿には説明しません。

Janusとは?

JanusはWebRTCサーバー、ゲートウェイとして作られたopen sourceサーバーです。

WebRTC間の通信やレガシーRTCテクノロジーと相互作用するようにすることも可能です。

Janusはプラグインを使いアプリケーション用の機能を追加する仕組みです。

詳しいことはjanus-gatewayのgithubを参考して下さい。

必要環境

  • Ubuntu 18.04.4 Server x86_64

設置

必要なパッケージ

sudo apt-get install libmicrohttpd-dev libjansson-dev \
    libssl-dev libsofia-sip-ua-dev libglib2.0-dev \
    libopus-dev libogg-dev libcurl4-openssl-dev liblua5.3-dev \
    libconfig-dev pkg-config gengetopt libtool automake

libnice (ここがすこし大変です)

sudo apt install python3-pip

#meson-0.52以上をインストールして下さい
pip3 install meson==0.52 ninja --user

PATH="${PATH}:$(python3 -c 'import site; print(site.USER_BASE);')/bin"
export PATH=$PATH:~/.local/

git clone https://gitlab.freedesktop.org/libnice/libnice
cd libnice

meson ~/libice2

#'ubuntu'はユーザー名です
ninja -C ~/libnice2
cd /home/ubuntu/.local/bin/
sudo ./ninja -C /home/ubuntu/libnice2/ install

libsrtp 最新のv2.3.0をインストールして下さい

wget https://github.com/cisco/libsrtp/archive/v2.3.0.tar.gz
tar xfv v2.3.0.tar.gz
cd libsrtp-2.3.0
./configure --prefix=/usr --enable-openssl
make shared_library && sudo make install

Data Channelsを使うためにusrsctpをインストールしましょう

git clone https://github.com/sctplab/usrsctp
cd usrsctp
./bootstrap
./configure --prefix=/usr --libdir=/usr/lib64
make
sudo make install

Janusをコンパイルしましょう。

git clone https://github.com/meetecho/janus-gateway.git
cd janus-gateway

sh autogen.sh

./configure --prefix=/opt/janus
make
sudo make install

#基本設定ファイル
sudo make configs

起動!

/opt/janus/bin/janus

ここでlibniceのエラーなどが有りましたらこちらをやってみて下さい(root権限で)
https://groups.google.com/forum/#!topic/meetecho-janus/fznCh3UYSCg参考しました

cd /etc/ld.so.conf.d
echo 'usr/lib64' > whatever.conf
ldconfig 

インストールが終わったあと他の機能(WebSockets,MQTT等)を追加したい場合は必要なパッケージを(libwebsockets,paho.mqtt.c等)をインストールしたあとJanusを再コンパイルして下さい。

cd ~/janus-gateway

make clean

./configure --prefix=/opt/janus
make
make install

最後に

これからは簡単なWebRTCビデオ会議アプリケーションを作ってみようと思います。

4
2
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
2