12

でログに記録された変数のいくつかにアクセスしたいのですが、chrome://webrtc-internals/Google で何も見つかりませんでした。表示されるグラフの説明さえありません。、 、
に特に興味があります。packetsLostgoogCurrentDelayMsgoogNacksSent

webrtc-internals
にアクセスする理由ビデオ ストリーム (p2p) を共有するGoogle Chromeアプリケーションを作成しています。これは、peerjsを使用してストリームを他のピアと共有し、その下で googles webrtc実装を使用します。アプリケーションを完璧にするには、大きな遅延がいつ発生するかを知る必要があります。遅延がログに記録されていることがわかるのでchrome://webrtc-internals/、javascript を介してアクセスできるかどうか疑問に思っていました。

私の推測では、chrome://webrtc-internals/-menu 用の API はありません。

4

2 に答える 2

2

いろいろ調べた結果、twilio SDKを使ってPCを手に入れることができました。

var rtcPeerConn =Twilio.Device.activeConnection();
rtcPeerConn.options.mediaStreamFactory.protocol.pc.getStats(function callback(report) {
                var rtcStatsReports = report.result();
                for (var i=0; i<rtcStatsReports.length; i++) {
                    var statNames = rtcStatsReports[i].names();
                    // filter the ICE stats
                    if (statNames.indexOf("transportId") > -1) {
                        var logs = "";
                        for (var j=0; j<statNames.length; j++) {
                            var statName = statNames[j];
                            var statValue = rtcStatsReports[i].stat(statName);
                            logs = logs + statName + ": " + statValue + ", ";
                        }
                        console.log(logs);
                    }
                }
            });

// errorRate を計算します Packetlost / packetsent

var rtcPeerConn =Twilio.Device.activeConnection();
rtcPeerConn.options.mediaStreamFactory.protocol.pc.getStats(function callback(report) {
                var error, pcksent;
                var rtcStatsReports = report.result();
                for (var i=0; i<rtcStatsReports.length; i++) {
                    var statNames = rtcStatsReports[i].names();
                    // filter the ICE stats
                    if (statNames.indexOf("packetsSent") > -1) {
                        var logs = "";
                        for (var j=0; j<statNames.length; j++) {
                            var statName = statNames[j];
                            var statValue = rtcStatsReports[i].stat(statName);
                            if(statName=="packetsLost")
                              error= statValue;
                            if(statName =="packetsSent")
                              pcksent = statValue;
                            logs = logs +"n:" +statName + ": " + statValue + ", ";
                        }
                        console.log(error/pcksent);
                    }
                }

            });
于 2016-05-10T20:17:27.313 に答える