Have you ever think how great it will be if you are able to re-stream your WebRTC one-to-many scheme without any additional performance cost?
If that is true you will be glad to hear that we are happy to announce the Janus WebRTC gateway integration with our SDK
What is SFU?
Selective Forwarding could be useful in case when you will need to implement One to Many scheme.
Many to Many not available in the current version, but will be implemented in the nearest future.
How to use SFU with Medialooks WebRTC
1. Install dependencies
sudo apt-get install checkinstall gengetopt libmicrohttpd-dev libjansson-dev libnice-dev libssl-dev libsofia-sip-ua-dev libglib2.0-dev libtool automake libcurl4-openssl-dev
2. libsrtp
wget https://github.com/cisco/libsrtp/archive/v2.2.0.tar.gz
tar xfv v2.2.0.tar.gz
cd libsrtp-2.2.0
./configure --prefix=/usr --enable-openssl
make shared_library && sudo make install
3. usrsctp
git clone https://github.com/sctplab/usrsctp
cd usrsctp
./bootstrap
./configure --prefix=/usr --disable-programs --disable-inet --disable-inet6
make && sudo make install
4. libwebsockets-3.2
git clone https://libwebsockets.org/repo/libwebsockets
cd libwebsockets
git checkout v3.2-stable
mkdir build
cd build
cmake -DLWS_MAX_SMP=1 -DLWS_WITHOUT_EXTENSIONS=0 -DCMAKE_INSTALL_PREFIX:PATH=/usr -DCMAKE_C_FLAGS="-fpic" ..
make && sudo make install
5. janus-gateway
git clone https://github.com/meetecho/janus-gateway.git
cd janus-gateway
sh autogen.sh
./configure --prefix=/opt/janus --disable-rabbitmq --disable-mqtt
makemake && sudo make install
make configs
Now, you are able to run the JANUS server in the following way
/opt/janus/bin ./janus -S stun.l.google.com:19302 -d 5
For getting more information visit the https://github.com/meetecho/janus-gateway
How to test it?
For the quick test, you can use our public test server
HKEY_CURRENT_USER\Software\Medialooks\WebRTC
multicast_type=janus
multicast_server=ws://78.46.36.146:8188
Don't forget it's a test server, you shouldn't use it for production purpose.