![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
WebRTC
文章平均质量分 85
luyumiao1990
这个作者很懒,什么都没留下…
展开
-
RTP及RTP Header Extension
padding (P):1 bit,如果设定 padding,在报文的末端就会包含一个或者多个 padding 字节,这不属于 payload。CSRC: 贡献信源,混合器接收到一个或者多个同步信源的RTP报文,经过混合器处理产生一个新的组合RTP报文,并把混合器作为组合报文的SSRC,而将原来的所有的SSRC都作为CSRC,发送给接收者,使接收者知道组成组合报文的各个SSRC。126表示视频H.264编码。SSRC:32 bits,同步信源,即产生媒体流的信源,随机值,一个会话中不能重复。原创 2023-07-14 14:39:19 · 437 阅读 · 0 评论 -
RTCP/SRTCP介绍
length:16 bits,是该SR包以32比特为单位的总长度减一,包括头和 padding(减一是为了零长度有效和避免无限循环来寻找混合的 RTCP 报文,而 32-bit 字是避免对四的倍数的有效检查)。cumulative number of packets lost:24 bits,累计的包丢失数目,从开始接收到SSRC_n的包到发送SR,从SSRC_n传过来的RTP数据包的丢失总数。SSRC of sender(SSRC):32 bits,SR包发送者的同步源标识符。原创 2023-07-13 21:34:33 · 334 阅读 · 0 评论 -
REMB-接收端最大接收码率评估
发送者不知道接收方的带宽情况,它需要有一个机制由接收方告诉它有多少带宽可供传输, 这样发送方可以根据这个估计的带宽来调整分辨率(90p, 180p, 360p, 720p等)和帧率(每秒24, 30, 40, 60帧等)abs_send_time 是一个以秒为单位的时间戳,总共 3 个字节(24 bit) , 格式为 6.18 (小数位固定为18位), 每 64s 会溢出环绕,分辨率为 3.8us。再结合接收端的接收的bitrate,来评估出接收的带宽。RTP sequence number 计算丢包。原创 2023-07-14 14:30:40 · 443 阅读 · 0 评论 -
WebRTC带宽评估 -- Transport-wide Congestion Control
S:1 bit, 0表示后面symbol list中用1 bit表示1个RTP包的状态(0没收到,1收到),所以1个chunk最多能描述14个RTP包的到达状态;1表示后面symbol list中用2 bit表示1个RTP包的状态(00没收到,01收到小delta,10收到大delta),所以1个chunk最多能描述7个RTP包的到达状态。T:1 bit,表示chunk type,此时为Status Vector Chunk,值为1。packet chunk:描述RTP包的到达状态(详见下文描述)原创 2023-07-20 18:17:09 · 424 阅读 · 0 评论 -
视频会议的几种通信架构
在带宽不好的情况下,可以只传输底层,即核心层,在带宽充足的情况下,可以将三层全部传输过去。SFU 根据接收端的情况,发现 PC2 网络状况不错,于是将 0、1、2 三层都发给 PC2;2.MCU:星形结构,Server接收每个共享端的音视频流,经过解码、与其他解码后的音视频进行混流、重新编码,之后再将混好的音视频流发送给会议中的所有人。1. Mesh:网状结构,会议中client两两相连,不需要Server, 缺点client上行带宽要求多,加会人数越多,client系统资源要求越高。原创 2023-07-16 14:38:32 · 986 阅读 · 0 评论 -
Mac/Windows平台下载编译Chromium
/out/Default/Chromium.app/Contents/MacOS/Chromium 这样一个可执行文件,直接命令行执行即可,就会打开你自己本地编译的Chromium了。>sudo ./Install\ Certificates.Command #进入目录后,可以ls一下,看一下都有哪些,找那个对的。设置xcode路径:sudo xcode-select -s /Users/yumlu/Downloads/Xcode.app。现在会在out目录下生成编译Chrome所需的一系列参数和配置。原创 2023-07-18 22:06:01 · 2227 阅读 · 0 评论 -
带参启动浏览器以及生成log
启动命令:/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome。启动命令:/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome。查看log在:/Users/yumlu/Library/Application\ Support/Google/Chrome/退出所有正在运行的 Chrome 实例。原创 2023-07-18 22:16:20 · 510 阅读 · 0 评论 -
STUN/TURN/ICE
Type:字为属性的类型。除非特殊指定,否则其出现的顺序是有意义的:即只有第一次出现的属性会被接收端解析,而其余的将被忽略。(或多重NAT)后的客户端找出自己的公网地址,查出自己位于哪种类型的NAT之后以及NAT为某一个本地端口所绑定的Internet端端口。重发同样的request请求时可以重用相同的Transaction ID,但是客户端进行新的传输时,必须选择一个新的Transaction ID。1)最高的2位必须置零,这可以在当STUN和其他协议复用端口的时候,用来区分STUN包和其他数据包。原创 2023-07-16 22:16:28 · 422 阅读 · 0 评论