ブラウザのAPIとは大きく異なるので戸惑うことが多かった
https有効化
https = true
DataChannel(SCTP)有効化
libusrsctpをインストール
ubuntu16.04(x86_64)でしたが、/usr/lib/にインストールで問題ありませんでした。
datachannel support not compiled
自分の環境ではlibusrsctpをインストールしているにもかかわらず、datachannelが使えない現象が発生しましたが、
make clean && make uninstall
で再度ビルドしなおしたところ、動作するようになりました。
Jitter
RTCPのUnixタイムスタンプの差をとっているので単位はミリ秒
[4559978799293996] Incoming RTCP, bundling: this is video (local SSRC: video=1906170550, audio=3486522370, got 1906170550)
Parsing compound packet (total of 96 bytes)
#1 RR (201)
jitter=606.000000, fraction=0, loss=0
rtt=4
RTCP PT 201, length: 56 bytes
#2 PLI -- PSFB (206)
RTCP PT 206, length: 12 bytes
#3 REMB -- PSFB (206)
-- -- -- REMB: 203009 * 2^3 = 1624072 (2 SSRCs, 1906170550)
RTCP PT 206, length: 28 bytes
videoroomプラグインでlistの結果がonmessageで帰ってこない?
listの結果はonmessageでなくsuccessコールバックで来るようです。
pluginHandle.send({
"message": {
"request" : "list"
},
success: function(result) {
console.log(result);
}
});
クライアントAPIでICEがtype=hostしか収集されない
時々、iOSやmacのonicecandidateで度々tye=hostのiceしか作成さないときことがありました。
libniceの問題でmdns candidateが来た場合stunホールパンチが途中で停止していたようです。特定のlibniceでビルドされたJanusでしか発生しません
この問題の回避策としてWebRTCのJavascript apiで下のようにすることでtype=hostが一切無効になり、type=srflxが取得できるようになります。
https://developer.mozilla.org/en-US/docs/Web/API/RTCConfiguration/iceTransportPolicy
iceTransportPolicy: "relay"