RtpSplitter.cpp
2.34 KB
-
修复TCP RTP 2字节头被误判为4字节头的问题 (#2499) · 032a2ac9
当RFC4571封装的RTP包大小在0x2400到0x24ff之间时,会被误认为是RTSP Interleaved 封装的数据。因为0x24正好是'$'的ASCII码,而RtpSplitter::onSearchPacketTail通过'$'来识别RTSP Interleaved数据。暂时没有想到什么好的办法能够百分之百的正确区分RFC4571数据和RTSP Interleaved数据。增加一个状态变量记录之前的状态,一旦检测到数据不是RTSP Interleaved格式,则后续不再进行尝试,以减小误判的可能性。
dengjfzh committed