【问题标题】:How Chrome/Firefox handles SRTCP report comming from WebRtc connection?Chrome/Firefox 如何处理来自 WebRtc 连接的 SRTCP 报告?
【发布时间】:2014-12-17 22:10:08
【问题描述】:

SRTCP 跟踪发送和丢失的字节和数据包的数量、最后接收的序列号、每个 SRTP 数据包的到达间隔抖动以及其他 SRTP 统计信息。

在处理音频流时,提到的浏览器是否会对 SRTCP 报告做一些事情,例如,如果网络条件发生变化,会即时调整比特率?

【问题讨论】:

  • 是的,处理 RTCP 报告有助于口型同步、调整带宽问题等。
  • 并不是每个编解码器都支持可变比特率。例如 G711ulaw 使用恒定比特率。在这种情况下浏览器会做什么?它仅适用于 Opus 吗?
  • Opus 确实支持可变比特率。更改流中的比特率并不是帮助纠正 rtcp 报告中的问题的唯一方法...
  • 除了比特率和采样率还有什么可以调整的?
  • 我知道 Chrome 确实会即时更改 Vp8 的比特率甚至分辨率。

标签: webrtc opus


【解决方案1】:

鉴于 Chrome 确实会在连接中动态调整 VP8 的比特率和分辨率,我认为 OPUS 配置也会在连接中更改。

您可以在此图像中看到有关发送音频的反馈。使用 opus 时比特率明显略有下降。但是,我认为视频比特率将是视频通话中的第一个更改,因为更改它会产生更大的效果。

显然,不能在仅支持恒定比特率的编解码器上更改比特率。

所有其他统计数据都是 RTCP 报告给出的(packetsLost、Rtt、发送的比特等)和谷歌对输入/输出(音频电平、回声消除等)的监控的组合。

注意:这取自 AppRtc 在 chrome 中创建的会话。

【讨论】:

  • 会是统计偏差吗?计算每秒发送的位数并不是那么简单。你永远不会得到相同的号码。例如,由于 CPU 峰值,可以减少位数。另一个可能的原因 - VAD(语音激活检测)。不确定 Opus 是否这样做,也许它可以以某种方式检测静音并降低比特率。我怀疑我们会看到类似的 CBR 编解码器。无论如何感谢您的回答。
  • 看起来这些统计信息已由 Bob 收集并发送给 Alice。同时,Bob 的 bitRate 应该取决于 Alice 发送给 Bob 的传入 RTCP。
  • 是的,没错。 RTCP 流响应给定的 RTP 流。因此,对于传入的数据包,RTCP 会被发送回发送者。
猜你喜欢
  • 2014-10-08
  • 2016-08-01
  • 1970-01-01
  • 2021-08-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-08-14
相关资源
最近更新 更多