[vlc-devel] [PATCH] deinterlace:dxva: log when the algorithm doesn't match the user choice exactly

Steve Lhomme robux4 at videolabs.io
Wed Aug 2 08:29:43 CEST 2017


Since available ones may vary from hardware to hardware.
---
 modules/video_output/win32/d3d11_deinterlace.c | 2 ++
 modules/video_output/win32/dxva2_deinterlace.c | 3 ++-
 2 files changed, 4 insertions(+), 1 deletion(-)

diff --git a/modules/video_output/win32/d3d11_deinterlace.c b/modules/video_output/win32/d3d11_deinterlace.c
index 6be55c600f..e7d6da8245 100644
--- a/modules/video_output/win32/d3d11_deinterlace.c
+++ b/modules/video_output/win32/d3d11_deinterlace.c
@@ -341,6 +341,8 @@ static int Open(vlc_object_t *obj)
         msg_Dbg(filter, "unknown mode %s, trying blend", psz_mode);
         p_mode = GetFilterMode("blend");
     }
+    if (strcmp(p_mode->psz_mode, p_mode))
+        msg_Dbg(filter, "using %s deinterlacing mode", p_mode->psz_mode);
 
     for (UINT type = 0; type < processorCaps.RateConversionCapsCount; ++type)
     {
diff --git a/modules/video_output/win32/dxva2_deinterlace.c b/modules/video_output/win32/dxva2_deinterlace.c
index 520fc29ac9..6ed18b2acd 100644
--- a/modules/video_output/win32/dxva2_deinterlace.c
+++ b/modules/video_output/win32/dxva2_deinterlace.c
@@ -362,7 +362,8 @@ static int Open(vlc_object_t *obj)
     sys->context.settings = p_mode->settings;
     sys->context.settings.b_use_frame_history = best_caps.NumBackwardRefSamples != 0 ||
                                        best_caps.NumForwardRefSamples  != 0;
-    assert(sys->context.settings.b_use_frame_history == p_mode->settings.b_use_frame_history);
+    if (sys->context.settings.b_use_frame_history != p_mode->settings.b_use_frame_history)
+        msg_Dbg( filter, "deinterlacing not using frame history as requested");
     if (sys->context.settings.b_double_rate)
         sys->context.pf_render_ordered = RenderPic;
     else
-- 
2.12.1



More information about the vlc-devel mailing list