mirror of
https://github.com/moonlight-stream/moonlight-common-c.git
synced 2026-06-22 00:31:09 +00:00
Call notifyKeyFrameReceived() before the decoder processes the frame
We don't care if the decoder processes it successfully.
This commit is contained in:
@@ -274,10 +274,6 @@ void LiCompleteVideoFrame(VIDEO_FRAME_HANDLE handle, int drStatus) {
|
|||||||
PQUEUED_DECODE_UNIT qdu = handle;
|
PQUEUED_DECODE_UNIT qdu = handle;
|
||||||
PLENTRY_INTERNAL lastEntry;
|
PLENTRY_INTERNAL lastEntry;
|
||||||
|
|
||||||
if (qdu->decodeUnit.frameType == FRAME_TYPE_IDR) {
|
|
||||||
notifyKeyFrameReceived();
|
|
||||||
}
|
|
||||||
|
|
||||||
if (drStatus == DR_NEED_IDR) {
|
if (drStatus == DR_NEED_IDR) {
|
||||||
Limelog("Requesting IDR frame on behalf of DR\n");
|
Limelog("Requesting IDR frame on behalf of DR\n");
|
||||||
requestDecoderRefresh();
|
requestDecoderRefresh();
|
||||||
@@ -442,6 +438,7 @@ static void reassembleFrame(int frameNumber) {
|
|||||||
// IDR frames will have leading CSD buffers
|
// IDR frames will have leading CSD buffers
|
||||||
if (nalChainHead->bufferType != BUFFER_TYPE_PICDATA) {
|
if (nalChainHead->bufferType != BUFFER_TYPE_PICDATA) {
|
||||||
qdu->decodeUnit.frameType = FRAME_TYPE_IDR;
|
qdu->decodeUnit.frameType = FRAME_TYPE_IDR;
|
||||||
|
notifyKeyFrameReceived();
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
qdu->decodeUnit.frameType = FRAME_TYPE_PFRAME;
|
qdu->decodeUnit.frameType = FRAME_TYPE_PFRAME;
|
||||||
|
|||||||
Reference in New Issue
Block a user