chrome://webrtc-internal 如何测量往返时间?

How chrome://webrtc-internal measures the round trip time?

我一直在分析使用 chrome://webrtc-internal 生成的 JSON 文件,而 运行 webrtc 在 2 PCS 上。

我查看了 Stats API 以验证 webrtc-internal 如何计算往返时间 (RTT)。 我找到了 2 种方法:

  1. RTC Remote Inbound RTP Video Stream 包含 roundTripTime

  2. RTC IceCandidate Pair 包含 currentRoundTripTime.

哪个是准确的,为什么,是如何计算的?

RTT 是逐帧计算的吗?

它是以一种方式计算 (sender --> receiver),还是以两种方式计算 (sender --> receiver--> sender)?

哪些报告用于衡量 RTT?是 Receiver Report RTCP 还是 Sender Report RTCP

Webrtc VP8 codecGOP的长度是多少?

RTCIceCandidatePairStats.currentRoundTripTime 是根据远程对等方响应 STUN 绑定请求所需的时间来计算的。 WebRTC ICE Agent 每隔一段时间发送这些消息,每条消息都有一个 TransactionID。

RTCRemoteInboundRtpStreamStats.currentRoundTripTime 是根据自上次收到 SenderReport 以来的时间计算的。发件人知道何时发送,因此能够计算到达所需的时间。

它们都是准确的。我个人使用 ICE 统计数据,因为开销较少。数据包不必通过 RTCP 子系统解密和路由。 IMO ICE 也比 RTCP 更容易处理。

What is the size of the length of GOP in the Webrtc VP8 codec?。这取决于正在编码的内容和设置。你有一个低关键帧间隔吗?你编码的东西有很多变化吗?你想通过这个问题确定什么?