webrtc FB 类型区分

https://tools.ietf.org/html/rfc4585#page-31

janus 代码

gboolean janus_rtcp_has_pli(char *packet, int len) {
	/* Parse RTCP compound packet */
	janus_rtcp_header *rtcp = (janus_rtcp_header *)packet;
	int pno = 0, total = len, offset = 0;
	while(rtcp) {
		if(rtcp->version != 2)
			break;
		pno++;
		switch(rtcp->type) {
			case RTCP_PSFB: {
				gint fmt = rtcp->rc;
				if(fmt == 1)   #######重点这里####
					return TRUE;
				break;
			}
			default:
				break;
		}

RTCP协议的FB分三层不同的msg

  • Transport layer FB messages
    • Payload-specific FB messages

    • Application layer FB messages
      在这里插入图片描述
      Payload type (PT): 8 bits
      This is the RTCP packet type that identifies the packet as being
      an RTCP FB message. Two values are defined by the IANA:

         Name   | Value | Brief Description
      ----------+-------+------------------------------------
         RTPFB  |  205  | Transport layer FB message
         PSFB   |  206  | Payload-specific FB message
      

PT=RTPFB

PT=PSFB

  • 0: unassigned
  • 1: Picture Loss Indication (PLI)
  • 2: Slice Loss Indication (SLI)
  • 3: Reference Picture Selection Indication (RPSI)
  • 4-14: unassigned
  • 15: Application layer FB (AFB) message
  • 6-30: unassigned
  • 31: reserved for future expansion of the sequence number space

在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值