1
0
Fork 0
mirror of https://github.com/ossrs/srs.git synced 2025-03-09 15:49:59 +00:00

GB28181: Refine for bad network, we can wait for more incomplete frames

This commit is contained in:
xialixin 2021-05-17 10:31:30 +08:00 committed by winlin
parent 7d8bde3cdb
commit 4c2b19a264

View file

@ -1201,7 +1201,7 @@ SrsRtpFrameBufferEnum SrsRtpJitterBuffer::InsertPacket(uint16_t seq, uint32_t ts
//CountFrame(*frame);
// if (previous_state != kStateDecodable &&
// previous_state != kStateComplete) {
// /*CountFrame(*frame);*/ //????????????????????<3F>?? by ylr
// /*CountFrame(*frame);
// if (continuous) {
// // Signal that we have a complete session.
// frame_event_->Set();
@ -1213,7 +1213,7 @@ SrsRtpFrameBufferEnum SrsRtpJitterBuffer::InsertPacket(uint16_t seq, uint32_t ts
case kDecodableSession: {
// *retransmitted = (frame->GetNackCount() > 0);
if (true || continuous) {
if (continuous) {
decodable_frames_.InsertFrame(frame);
FindAndInsertContinuousFrames(*frame);
} else {
@ -1522,7 +1522,9 @@ bool SrsRtpJitterBuffer::NextMaybeIncompleteTimestamp(uint32_t* timestamp)
SrsRtpFrameBuffer* oldest_frame;
if (decodable_frames_.empty()) {
if (incomplete_frames_.size() <= 1) {
//in order to solve the problem of bad network, we can wait for more incomplete frames
//ex fps=15
if (incomplete_frames_.size() < 15) {
return false;
}