Commit b82cd5a5 by xiongziliang

确保ntp时间戳获取失败时,webrtc rtp重传缓存列队长度正常

parent db3df7b9
...@@ -538,8 +538,8 @@ uint32_t RtpPacket::getStamp() const { ...@@ -538,8 +538,8 @@ uint32_t RtpPacket::getStamp() const {
return ntohl(getHeader()->stamp); return ntohl(getHeader()->stamp);
} }
uint32_t RtpPacket::getStampMS() const { uint32_t RtpPacket::getStampMS(bool ntp) const {
return ntp_stamp & 0xFFFFFFFF; return ntp ? ntp_stamp & 0xFFFFFFFF : getStamp() * uint64_t(1000) / sample_rate;
} }
uint32_t RtpPacket::getSSRC() const { uint32_t RtpPacket::getSSRC() const {
......
...@@ -159,7 +159,7 @@ public: ...@@ -159,7 +159,7 @@ public:
uint16_t getSeq() const; uint16_t getSeq() const;
uint32_t getStamp() const; uint32_t getStamp() const;
//主机字节序的时间戳,已经转换为毫秒 //主机字节序的时间戳,已经转换为毫秒
uint32_t getStampMS() const; uint32_t getStampMS(bool ntp = true) const;
//主机字节序的ssrc //主机字节序的ssrc
uint32_t getSSRC() const; uint32_t getSSRC() const;
//有效负载,跳过csrc、ext //有效负载,跳过csrc、ext
......
...@@ -60,8 +60,8 @@ uint32_t NackList::get_cache_ms() { ...@@ -60,8 +60,8 @@ uint32_t NackList::get_cache_ms() {
if (_nack_cache_seq.size() < 2) { if (_nack_cache_seq.size() < 2) {
return 0; return 0;
} }
uint32_t back = _nack_cache_pkt[_nack_cache_seq.back()]->getStampMS(); uint32_t back = _nack_cache_pkt[_nack_cache_seq.back()]->getStampMS(false);
uint32_t front = _nack_cache_pkt[_nack_cache_seq.front()]->getStampMS(); uint32_t front = _nack_cache_pkt[_nack_cache_seq.front()]->getStampMS(false);
if (back >= front) { if (back >= front) {
return back - front; return back - front;
} }
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论