From 04f976f0f44c0f16ba6d32a6eb6015bb00db5438 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Fri, 26 Oct 2018 19:06:52 +0100 Subject: [PATCH] MMALRender: Destroy deinterlace component when method changes --- .../VideoPlayer/VideoRenderers/HwDecRender/MMALRenderer.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/xbmc/cores/VideoPlayer/VideoRenderers/HwDecRender/MMALRenderer.cpp b/xbmc/cores/VideoPlayer/VideoRenderers/HwDecRender/MMALRenderer.cpp index c6cd06997833d..ce3665208d18c 100644 --- a/xbmc/cores/VideoPlayer/VideoRenderers/HwDecRender/MMALRenderer.cpp +++ b/xbmc/cores/VideoPlayer/VideoRenderers/HwDecRender/MMALRenderer.cpp @@ -763,7 +763,9 @@ void CMMALRenderer::Run() interlace_method = VS_INTERLACEMETHOD_MMAL_BOB_HALF; } - if (interlace_method == VS_INTERLACEMETHOD_NONE && !yuv16) + bool encodingChanged = (last_interlace_method == VS_INTERLACEMETHOD_MMAL_ADVANCED || last_interlace_method == VS_INTERLACEMETHOD_MMAL_ADVANCED_HALF) != + (interlace_method == VS_INTERLACEMETHOD_MMAL_ADVANCED || interlace_method == VS_INTERLACEMETHOD_MMAL_ADVANCED_HALF); + if ((interlace_method == VS_INTERLACEMETHOD_NONE || encodingChanged) && !yuv16) { if (m_deint_input) DestroyDeinterlace();