mediasoup (WebRTC SFU)のインストール手順
WebRTC SFUも自前で実装となると難しいですが、mediasoupというOSS(オープンソースソフトウェア)を使用すれば比較的簡単に実装できます。
mediasoupの使い方は長くなるので、本記事ではmediasoupのインストールとビルド手順を紹介します。
Ubuntu の場合
mediasoup v3 Installationを参考にして、インストールを行います。
必要パッケージのインストール
まず、下記のモジュールがインストールされていることを確認します。インストールされていない場合はインストールしてください。
必要なバージョンは上記サイトに記載があります。
本記事作成時の私のバージョンは次の通りです。
- node - 14.16.1
- python3 - 3.8.10
- make - 4.2.1
- gcc - 9.3.0
- g++ - 9.3.0
make と gcc
コマンドでmake --version
と入力し、バージョンが表示されない場合、次のコマンドでmake
をインストールします。
コマンドでgcc --version
と入力し、バージョンが表示されない場合、次のコマンドでgcc
をインストールします。
sudo apt install build-essential
g++
コマンドでg++ --version
と入力し、バージョンが表示されない場合、次のコマンドでg++
をインストールします。
sudo apt install g++
Python のバージョン確認
インストールされているPythonのバージョンを確認します。
次のコマンドを入力し、バージョンが表示されればpython2がインストールされています。
python --version
python3がインストールされている場合は、python --version
ではなくpython3 --version
でバージョンが表示されます。
python3 --version
python3.9がインストールされている場合は、python3.9 --version
でバージョンが表示されます。
python3.9 --version
mediasoup のインストール
任意のフォルダを作成し次のコマンドで初期化します。
npm init
次のコマンドを実行してmediasoup
をインストールします。(時間が掛かります)
PYTHON=python3 npm install mediasoup@3
python3.9がインストールされている場合は、コマンドを次のようにします。
PYTHON=python3.9 npm install mediasoup@3
python2の場合はコマンドを次のようにします。
npm install mediasoup@3
mediasoup-client のインストールとビルド
クライアントサイドで使用するmediasoup-clientは事前にビルドしておき、使用するページで読み込みます。
- 次のコマンドを実行して
browserify
をインストールする
npm install browserify -D
- 次のコマンドを実行して
mediasoup-client
をインストールする
npm install mediasoup-client@3 -D
browserify
を使ってmediasoup-client
をビルドする
ここでは、public/jsディレクトリにビルドしたファイルを格納する
mkdir public mkdir public/js node_modules/browserify/bin/cmd.js node_modules/mediasoup-client/lib/index.js -s MediasoupClient -o public/js/mediasoup-client.js
生成されたpublic/js/mediasoup-client.jsをscriptタグで読み込むとMediasoupClient
が利用できるようになります。
Windows の場合
あらかじめ、必要なアプリケーションをインストールします。
本記事作成時の私のバージョンは次の通りです。
- Windows10
- Python - 3.10.4
- MinGW - 6.3.0
MinGW のインストール
- MinGW - Minimalist GNU for Windowsをブラウザで開く
- Files>Installer>mingw-get-setup.exeをダウンロードする
- ダウンロードしたmingw-get-setup.exeを実行し、MinGWをインストールする
Basic Setup>msys-baseのみでOK チェック後、Installation>Apply ChangesでApplyボタン - 環境変数
PATH
にmake.exeへのパス(例:C:\MinGW\msys\1.0\bin)を追加する
Python 関係
アプリ実行エイリアスの変更
- Windowsの設定>アプリ
- アプリと機能>アプリ実行エイリアス
- python.exe/python3.exe関係をオフにする
Python のインストール
Pythonをインストールします。Microsoft Storeのものだとmediasoupがうまくインストールできなかったので、インストーラーからのインストールをお勧めします。
Pythonと一緒にpipも必要です。
環境変数PATH
に以下を追加します。(C\Python3にPythonをインストールした場合)
- C\Python3
- C\Python3\Scripts
mediasoup のインストール
任意のフォルダを作成し次のコマンドで初期化します。
npm init
次のコマンドを実行してmediasoup
をインストールします。(時間が掛かります)
npm install mediasoup@3
mediasoup-client のインストールとビルド
クライアントサイドで使用するmediasoup-clientは事前にビルドしておき、使用するページで読み込みます。
- 次のコマンドを実行して
browserify
をインストールする
npm install browserify -D
- 次のコマンドを実行して
mediasoup-client
をインストールする
npm install mediasoup-client@3 -D
browserify
を使ってmediasoup-client
をビルドする
ここでは、public/jsディレクトリにビルドしたファイルを格納するmkdir public mkdir public\js node node_modules\browserify\bin\cmd.js node_modules\mediasoup-client\lib\index.js -s MediasoupClient -o public\js\mediasoup-client.js
生成されたpublic/js/mediasoup-client.jsをscriptタグで読み込むとMediasoupClient
が利用できるようになります。