一、wireshark解析VP8报文方法
首先webrtc里面默认开启了FEC和SRTP功能,导致wireshark无法正常解析VP8的报文。所以若想了解VP8的RTP报文格式,还需要先关闭FEC、SRTP。
1、关闭FEC。
internalencoderfactory.cc文件屏蔽kRedCodecName、kUlpfecCodecName

2、关闭SRTP
webrtc\src\webrtc\api\peerconnectioninterface.h
disable_encryption = true 取消SRTP

bool Conductor::CreatePeerConnection(bool dtls)配置不生成密钥。

3、启动RTP数据抓包
这样就能捕获VP8的RTP报文,进行分析了。


二、协议定义

1、RTP公共头

2、VP8 Payload Descriptor

之后的I bit、L bit、T bit、K bit都是需要X置1才有效。
关于TID、TL0PICIDX、Y参数含义的理解,请参考https://blog.csdn.net/CrystalShaw/article/details/
2、VP8 Payload Header

三、参考
https://tools.ietf.org/html/rfc7741
http://elkpi.com/topics/vp8-rtp-payload.html
发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/209615.html原文链接:https://javaforall.net
