Removing some logic in FFmpegReader::Close which clears the video and audio stream - which can cause a crash if the decoder is still working on a packet. Reverting this code.

This commit is contained in:
Jonathan Thomas
2022-07-22 17:04:52 -05:00
parent 156fed2f49
commit 54971bac84

View File

@@ -602,11 +602,6 @@ void FFmpegReader::Close() {
ZmqLogger::Instance()->AppendDebugMethod("FFmpegReader::Close (Flush video context)");
avcodec_flush_buffers(pCodecCtx);
// Delete video stream
ZmqLogger::Instance()->AppendDebugMethod("FFmpegReader::Close (Clear video stream)");
pStream = NULL;
videoStream = -1;
ZmqLogger::Instance()->AppendDebugMethod("FFmpegReader::Close (Free video context)");
AV_FREE_CONTEXT(pCodecCtx);
#if USE_HW_ACCEL
@@ -623,11 +618,6 @@ void FFmpegReader::Close() {
ZmqLogger::Instance()->AppendDebugMethod("FFmpegReader::Close (Flush audio context)");
avcodec_flush_buffers(aCodecCtx);
// Delete audio stream
ZmqLogger::Instance()->AppendDebugMethod("FFmpegReader::Close (Clear audio stream)");
aStream = NULL;
audioStream = -1;
ZmqLogger::Instance()->AppendDebugMethod("FFmpegReader::Close (Free audio context)");
AV_FREE_CONTEXT(aCodecCtx);
}