2017-08-14 55 views
0

我目前正在構建WebRTC應用程序,並希望收集一些統計信息以評估我的解決方案。我感興趣的一個指標是接收到的音頻(和視頻)流的當前帶寬。我能夠在chrome://webrtc-internals/(OPUS)找到當前使用的編解碼器,但我無法找到有關當前流的質量/帶寬(例如128kbit/s)的數字。瀏覽器中的音頻MediaStream的當前帶寬或質量如何? (WebRTC)

我已經搜索了這些數字的RTCPeerConnection對象,但沒有找到一些。 XXX.RTCconnection.getRemoteStreams()[0].getAudioTracks()[0].getConstraints()只返回

{ 
    deviceId: {}, 
    echoCancellation: {}, 
    facingMode: {}, 
    frameRate: {}, 
    height: {}, 
    mediaSource: "camera", 
    mozAutoGainControl: {}, 
    mozNoiseSuppression: {}, 
    viewportHeight: {}, 
    viewportOffsetX: {}, 
    ... 
} 

只包含有關的視頻流(好笑,我要求的音頻流),並沒有帶寬的細節信息。上例中沒有其他數組流。 您是否知道我需要尋找MediaStream的當前質量/帶寬?

回答

2

您需要使用RTCPeerConnection.getStats()API,搜索bytesReceived,然後計算兩次調用之間bytesReceived差異的比特率。 This顯示了一個完整的例子。

+0

非常感謝!我認爲它更明顯,但解決方案是足夠公平的。 – Roy

相關問題