shithub: libvpx

Download patch

ref: cf127474d8115c15a9dc92a8a287105fbec4705e
parent: 36ff6a6743323c3a1d93b3cff5eaa06a782071fb
author: Fritz Koenig <frkoenig@google.com>
date: Tue Oct 26 09:26:17 EDT 2010

vpxdec : Change --pp-debug-info to be a bit field.

This allows multiple post processor debug levels to be overlayed.
i.e. can show colored reference blocks and visual motion vectors.

Change-Id: Ic4a1df438445b9f5780fe73adb3126e803472e53

--- a/vp8/common/postproc.c
+++ b/vp8/common/postproc.c
@@ -618,7 +618,8 @@
                 oci->mb_cols, oci->mb_rows);
         vp8_blit_text(message, oci->post_proc_buffer.y_buffer, oci->post_proc_buffer.y_stride);
     }
-    else if (flags & VP8D_DEBUG_LEVEL2)
+
+    if (flags & VP8D_DEBUG_LEVEL2)
     {
         int i, j;
         unsigned char *y_ptr;
@@ -649,7 +650,8 @@
 
         }
     }
-    else if (flags & VP8D_DEBUG_LEVEL3)
+
+    if (flags & VP8D_DEBUG_LEVEL3)
     {
         int i, j;
         unsigned char *y_ptr;
@@ -683,7 +685,8 @@
 
         }
     }
-    else if (flags & VP8D_DEBUG_LEVEL4)
+
+    if (flags & VP8D_DEBUG_LEVEL4)
     {
         sprintf(message, "Bitrate: %10.2f frame_rate: %10.2f ", oci->bitrate, oci->framerate);
         vp8_blit_text(message, oci->post_proc_buffer.y_buffer, oci->post_proc_buffer.y_stride);
@@ -719,7 +722,9 @@
 #endif
 
     }
-    else if (flags & VP8D_DEBUG_LEVEL5)
+
+    // Draw motion vectors
+    if (flags & VP8D_DEBUG_LEVEL5)
     {
         YV12_BUFFER_CONFIG *post = &oci->post_proc_buffer;
         int width  = post->y_width;
@@ -752,7 +757,7 @@
     }
 
     // Color in block modes
-    else if (flags & VP8D_DEBUG_LEVEL6)
+    if (flags & VP8D_DEBUG_LEVEL6)
     {
         int i, j;
         YV12_BUFFER_CONFIG *post = &oci->post_proc_buffer;
@@ -787,7 +792,7 @@
     }
 
     // Color in frame reference blocks
-    else if (flags & VP8D_DEBUG_LEVEL7)
+    if (flags & VP8D_DEBUG_LEVEL7)
     {
         int i, j;
         YV12_BUFFER_CONFIG *post = &oci->post_proc_buffer;
--- a/vpxdec.c
+++ b/vpxdec.c
@@ -783,7 +783,7 @@
             vp8_pp_cfg.post_proc_flag &= ~0x7;
 
             if (level)
-                vp8_pp_cfg.post_proc_flag |= 8 << (level - 1);
+                vp8_pp_cfg.post_proc_flag |= level;
         }
 
 #endif