WebRTC 那些常用的缩略词以及部分知识杂谈

29 篇文章 25 订阅
11 篇文章 2 订阅

欢迎访问我其它的博文 https://blog.csdn.net/freeabc

一分钟快速搭建 rtmpd 服务器: https://blog.csdn.net/freeabc/article/details/102880984

 

WebRTC 那些常用的缩略词以及部分知识杂谈

一、 缩略语

RTC                                 Real-Time Communication

SDP                                 Session Description Protocol 会话描述协议

ICE                                  Interactive Connectivity Establishment 交互式连接建立

JSEP                               JavaScript Session Establishment Protocol

BWE                                Bandwidth Estimation

SLI                                   Slice Loss Indictor .
                                        The SLI FB messageis identified by PT=PSFB and FMT=2. Slice Loss Indication,为帧内部分块损
                                        坏后发送

PLI                                   Picture Loss Indictor 关键帧丢包重传,参考rfc4585
                                        The PLI FB messageis identified by PT=PSFB and FMT=1. Picture Loss Indication,为整个图像帧丢
                                         失后发送

FIR                                   Full intra frame request   关键帧重传请求(IDR帧,无需参考帧可解码)
                                         这里面Intra的含义可能很多人不知道。Intra的含义是图像内编码,不需要其他图像信息即可解码
                                         Inter指图像间编码,解码需要参考帧。故Intra Frame其实就是指I帧,Inter Frame指P帧或B帧。

REMB                              Receiver Estimated Maximum Bitrate

WMS                                WebRTC Media Stream

msid                                 Media Stream ID

ccm                                  Codec Control Using RTCP Feedback Message 是支持使用rtcp反馈机制来实现编码控制

transport-cc                      编码支持使用rtcp来控制拥塞

NACK                               Negative ACKnowledgement 丢包重传

REX                                  Retransmission 重传

RTT                                  Round-Trip Time 网络往返时间

FEC                                  Forward Error/Erasure Correction 前向纠错

ARQ                                 Automatic Repeat reQuest 丢包重传

ABC                                  Adaptive Bit-rate Control 码率自适应

PLC                                  Packet Lost Concealment 错误隐藏

rtcp-fb                               RTCP Feedback

PSFB                                Payload-Specific FB 消息被定义为载荷类型为PSFB的RTCP消息

ALR                                  Application limited region  发送码率占最大预算码率值比例低于某个值的话Alr 会被触发了,恢复到某
                                         个值以上,Alr会停止。

SVC                                 Scalable Video Coding  通过改变一个GOP内帧的线性参考关系。防止网络丢包对视频传输造成的影响

AVP                                 audio video profile     

AVPF                               audio video profile feedback

SAVPF                             safe audio video profile feedback

SCTP                              Stream Control Transmission Protocol:流控制传输协议。而对于自定义应用数据的传输,WebRTC中使用了SCTP协议

TX                                   Transmission 发送

RX                                   Reception 接收

                                       其中的 X 代表什么?这是个在美国人中间也是云里雾里找不着北的问题,从未见过有什么“正确”答案。最能让人接受一个解释是,那个 x 指代 crossing(跨越)。电讯传播当然要“跨越”。

                                       这种解释在美国城市街道、马路上可以得到印证。人行横道用的就是 Xing,这个Xing要读成 crossing,用 X 来表示不仅音似,而且形似。但在 crossing 这个词中并没有 x 这个字母。

                                       也有一种说法就是为了方便,例如Christmas可缩写为X'mas , X 就是个让它们好读好写好(接)受一点的添头。落衫姬国际机场使用代码 LAX,在剧院,「灯……等灯等灯」也叫 LX

                                     (例:PVC 电工胶带也叫 LX 胶带)吉蛤比特以太网的单膜光纤,使用 1000Base-LX 标准(此处 L 代表「长距」)

RTX                                Re-Transmission

 

 

二、FEC

FEC是发送端在发送报文的时候,将之前的旧包也打包到新包里面,若接收端有丢包,就用新包里面冗余的旧包恢复数据。

webrtc实现该冗余功能,有三种方式:

1、RED就是RFC2198冗余。将前面的报文直接打入到新包里面,在接收端解析主包和冗余包。

2、ULPFEC,目前webrtc仅将SVC编码的Level
0视频帧打包成FEC。其余层有丢包,就逐步将帧率,保证视频相对流畅。用到的协议是:RFC5109。

3、FLEXFEC根据接收端反馈回来的丢包信息,总结一些规律,把预判丢失概率比较大的包,冗余打包出去

 

三、 NACK

NACK也是一种通知技术,只是触发通知的条件刚好的ACK相反,在未收到消息时,通知发送方“我未收到消息”,即通知未达。

在rfc4585协议中定义可重传未到达数据的类型有二种:

1)RTPFB:rtp报文丢失重传。

2)PSFB:指定净荷重传,指定净荷重传里面又分如下三种:
1、PLI    (Picture Loss Indication) 视频帧丢失重传。
2、SLI    (Slice Loss Indication)    slice丢失重转。
3、RPSI (Reference Picture Selection Indication)参考帧丢失重传。

 

四、SETUP

a=setup 主要是表示dtls的协商过程中角色的问题,谁是客户端,谁是服务器

  • a=setup:actpass 既可以是客户端,也可以是服务器
  • a=setup:active 客户端
  • a=setup:passive 服务器

a=sendrecv 主要表示流的传输方向

  • a=sendrecv 发送和接收
  • a=sendonly 只能发送
  • a=recvonly  只能接收
  • a=inactive 未激活

 

五、重传机制解释

I 、关键帧请求

主要包括SLI/PLI/FIR,集中报文手段,目的是在关键帧丢失无法解码时,请求发送方重新生成并发送一个关键帧。本质是一种重传,但是跟传输层的重传的区别是,它重传是最新生成的帧。

PLI 是Picture LossIndication,SLI 是Slice Loss Indication。发送方接收到接收方反馈的PLI或SLI需要重新让编码器生成关键帧并发送给接收端。

FIR 是Full Intra Request,这里面Intra的含义可能很多人不知道。Intra的含义是图像内编码,不需要其他图像信息即可解码;Inter指图像间编码,解码需要参考帧。故Intra Frame其实就是指I帧,Inter Frame指P帧或B帧。

那么为什么在PLI和SLI之外还需要一个FIR呢?原因是使用场景不同,FIR更多是在一个中心化的Video Conference中,新的参与者加入,就需要发送一个FIR,其他的参与者给他发送一个关键帧这样才能解码,而PLI和SLI的含义更多是在发生丢包或解码错误时使用。

 

II 、重传请求

主要包括RTX/NACK/RPSI

这个重传跟关键帧请求的区别是它可以要求任意帧进行重传

 

III、码率控制

主要包括REMB/TMMBR/TMMBN

TMMBR是Temporal Max MediaBitrate Request,表示临时最大码率请求。表明接收端当前带宽受限,告诉发送端控制码率。

REMB是ReceiverEstimatedMax Bitrate,接收端估计的最大码率。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值