mirror of
https://github.com/moonlight-stream/moonlight-common-c.git
synced 2026-06-22 00:31:09 +00:00
Avoid triggering RFI wait code for decode unit queue overflow
This commit is contained in:
@@ -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;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user