文档中心
ExpressVideoSDK 实时音视频
文档中心
体验 App
SDK 中心
API 中心
常见问题
代码市场
进入控制台
立即注册
登录
中文站 English
  • 文档中心
  • 实时音视频
  • 通信能力
  • 流量控制

流量控制

更新时间:2024-11-21 12:05

功能简介

流量控制,是指 SDK 根据本端以及对端当前网络状态,动态调整视频推流的码率,自动适应当前网络环境及网络波动,从而保证音视频能流畅推送。

使用步骤

1 开启流量控制

推流调用 startPublishingStream 接口,通过 enableTrafficControl 参数开启流量控制,动态调整视频推流的码率,自动适应当前网络环境及网络波动,若关闭流量控制在网络带宽不足时可能出现卡顿的情况。

使用限制: 仅支持 RTC 推流。

// 开启流量控制
zg.startPublishingStream(streamID, stream, {
    enableTrafficControl: true
};

2(可选)设置触发流量控制的关注因素

在开启流量控制时,可以通过 trafficControlFocusOnMode 参数,设置开启流量控制时所关注的因素。

  • TrafficControlFocusOnLocalOnly:只关注本地网络,即不考虑远端网络状况,仅根据本地网络进行流量控制。
  • TrafficControlFocusOnRemote:关注本地网络,同时也兼顾远端网络,目前只在 1v1 场景下有效。即当只有一个 RTC 推流 的情况下,只有一个 RTC 拉流 或只有一个 L3 拉流 时,SDK 会自动开启下行流量控制。拉流端将自己的网络情况通知给推流端,推流端估算自己的上行带宽和拉流端的下行带宽,并从上行、下行带宽的估值中取最小值来调整自己的上行码率,以保证连麦的流畅性。
// 开启流量控制,设置触发流量控制的关注因素
zg.startPublishingStream(streamID, stream, {
    enableTrafficControl: true,
    trafficControlFocusOnMode: 0
};

3 设置流量控制视频码率最小值(纯音频场景可跳过)

开启流量控制时,可以通过 trafficControlMinVideoBitrate 参数设置视频码率最小值(默认值为 “0”)及发送模式,可以使 SDK 在网络未达到发送视频的最小码率时,以极低的帧率发送。

// 开启流量控制,流量控制视频码率
zg.startPublishingStream(streamID, stream, {
    enableTrafficControl: true,
    trafficControlMinVideoBitrate: 200
};
本篇目录
  • 免费试用
  • 提交工单
    咨询集成、功能及报价等问题
    电话咨询
    400 1006 604
    咨询客服
    微信扫码,24h在线

    联系我们

  • 文档反馈