我想知道WebRTC api是否会自动改变带宽以增加体验。据我所知,WebRTC有一个可以更改和限制最大值的特性。我们想要的带宽。我想要回答的问题是,我们应该手动完成这个任务,还是WebRTC是在后台执行呢?
我现在正在做一个项目,我的主管关心的主要问题是带宽;我通常认为WebRTC api会自动完成这项工作,我们不需要手动更改它,但是我还是找不到很多关于这个主题的信息,因为它并不常用。(我还使用了EasyRTC (开放源码webrtc )来减轻编码的负担。)
先谢谢大家。
发布于 2019-09-25 14:23:10
1)不需要手动管理带宽。WebRTC为您完成了大部分常见的带管理任务和服务质量。
2) WebRTC不限制连接带宽,但网络仪器和设备限制连接带宽。
以下是基于观察的例子-
1)利用WebRTC制作了基于视频会议网络的应用程序。
2)我的笔记本电脑被用作主机设备。(即用于初始连接)
( 3)要求2~3名同事加入会议室(他们都在同一个网络上)。视频质量很好。
再一次,请更多的同事到我的房间里来。现在,一些视频蒸汽开始关闭。
5)连接带对质量有影响。如果许多用户使用相同的接入点(AP),那么带宽就会被分割,这将导致非常糟糕的流。
6)假设一个1080 p的视频占用15 15mbps的带宽连接。然后,8连接将占用8* 15 =120 Then总带宽。这超过了我的笔记本电脑100 This局域网端口下降的速度。这将导致在一些视频中关闭。
8 Mbps =1MB/s
查看这个链接- WebRTC bandwidth requirements
:)
发布于 2021-12-05 04:05:20
不知道这是否对某人有帮助,但至少在GoogleWebRTC (1.1.31999)版本中,iOS和org.webrtc:GoogleWebRTC:1.0.22672适用于android,在iOS实例中有方法。
对于iOS:
let updateBitrateSuccessful = pc.setBweMinBitrateBps(300000, currentBitrateBps: 1000000, maxBitrateBps: 3000000)
print("Update rtc connection bitrate " + (updateBitrateSuccessful ? "successful" : "failed"))
分别对于Android:
boolean updateBitrateSuccessful = pc.setBitrate(300000, 1000000, 3000000);
Log.d("AppLog", "Update rtc connection bitrate " + (updateBitrateSuccessful ? "successful" : "failed"));
https://stackoverflow.com/questions/57930505
复制相似问题