Avoid triggering RFI wait code for decode unit queue overflow
This commit is contained in:
parent
44668bd256
commit
5f92ecafe7
1 changed files with 4 additions and 2 deletions
|
|
@ -402,6 +402,9 @@ static void reassembleFrame(int frameNumber) {
|
||||||
if (LbqOfferQueueItem(&decodeUnitQueue, qdu, &qdu->entry) == LBQ_BOUND_EXCEEDED) {
|
if (LbqOfferQueueItem(&decodeUnitQueue, qdu, &qdu->entry) == LBQ_BOUND_EXCEEDED) {
|
||||||
Limelog("Video decode unit queue overflow\n");
|
Limelog("Video decode unit queue overflow\n");
|
||||||
|
|
||||||
|
// RFI recovery is not supported here
|
||||||
|
waitingForIdrFrame = true;
|
||||||
|
|
||||||
// Clear NAL state for the frame that we failed to enqueue
|
// Clear NAL state for the frame that we failed to enqueue
|
||||||
nalChainHead = qdu->decodeUnit.bufferList;
|
nalChainHead = qdu->decodeUnit.bufferList;
|
||||||
nalChainDataLength = qdu->decodeUnit.fullLength;
|
nalChainDataLength = qdu->decodeUnit.fullLength;
|
||||||
|
|
@ -413,8 +416,7 @@ static void reassembleFrame(int frameNumber) {
|
||||||
// Free all frames in the decode unit queue
|
// Free all frames in the decode unit queue
|
||||||
freeDecodeUnitList(LbqFlushQueueItems(&decodeUnitQueue));
|
freeDecodeUnitList(LbqFlushQueueItems(&decodeUnitQueue));
|
||||||
|
|
||||||
// Request an IDR frame to recover (RFI recovery is not supported here)
|
// Request an IDR frame to recover
|
||||||
waitingForIdrFrame = true;
|
|
||||||
LiRequestIdrFrame();
|
LiRequestIdrFrame();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue