1、解码前长时间要不到帧,IDR帧请求
webrtc的接收端根据时间控制I帧请求是在解码前要包里面实现的。在指定时间内没有要到包,就发送I帧请求。
VideoReceiveStream2::StartNextDecode
RtpVp8RefFinder::ManageFrame组帧这里也不主动发送I帧请求,组帧的动作只有三个,缓存、丢弃、传输视频帧到frame_buffer_队列。解码在frame_buffer_队列要不到数据了,才发I帧请求的
2、NACK空洞大于kMaxNackPackets,发送IDR帧请求。
NackModule2::AddPacketsToNack入队报文时,判断空洞size。