shithub: libvpx

Download patch

ref: 308e867f91ec1b76d59009060ada99f52a73c602
parent: b2f77866aa69639d4126a1daa87a2c121e4c3ab4
author: John Koleszar <jkoleszar@google.com>
date: Wed Jun 30 06:22:40 EDT 2010

Update loopfilter frame/filter/sharp info for multithread

Change I9fd1a5a4 updated the multithreaded loopfilter to avoid
reinitializing several parameteres if they haven't changed from the
last frame, but the code to update the last frame's parameters wasn't
invoked in the multithreaded case.

Change-Id: Ia23d937af625c01dd739608e02d110f742b7e1f2

--- a/vp8/decoder/onyxd_if.c
+++ b/vp8/decoder/onyxd_if.c
@@ -293,16 +293,15 @@
         // Apply the loop filter if appropriate.
 
         if (cm->filter_level > 0)
-        {
             vp8_loop_filter_frame(cm, &pbi->mb, cm->filter_level);
-            cm->last_frame_type = cm->frame_type;
-            cm->last_filter_type = cm->filter_type;
-            cm->last_sharpness_level = cm->sharpness_level;
 
-        }
-
         vpx_usec_timer_mark(&lpftimer);
         pbi->time_loop_filtering += vpx_usec_timer_elapsed(&lpftimer);
+    }
+    if (cm->filter_level > 0) {
+        cm->last_frame_type = cm->frame_type;
+        cm->last_filter_type = cm->filter_type;
+        cm->last_sharpness_level = cm->sharpness_level;
     }
 
     vp8_yv12_extend_frame_borders_ptr(cm->frame_to_show);