shithub: libvpx

Download patch

ref: 85cba19e16328f1d94a71ef60d82c07a0d6daaca
parent: fcccbcbb395ce4cf31b54ce1245cc28e5e3ef4c1
author: Jim Bankoski <jimbankoski@google.com>
date: Wed Nov 28 05:00:25 EST 2012

remove postproc invokes

and some miscellaneous invoke left overs

Change-Id: I63191b1bfd3bea4ce30cceaeb686ec850570fc43

--- a/vp9/common/arm/neon/vp9_recon_neon.c
+++ b/vp9/common/arm/neon/vp9_recon_neon.c
@@ -15,7 +15,7 @@
 
 extern void vp8_recon16x16mb_neon(unsigned char *pred_ptr, short *diff_ptr, unsigned char *dst_ptr, int ystride, unsigned char *udst_ptr, unsigned char *vdst_ptr);
 
-void vp8_recon_mb_neon(const vp8_recon_rtcd_vtable_t *rtcd, MACROBLOCKD *xd) {
+void vp8_recon_mb_neon(MACROBLOCKD *xd) {
   unsigned char *pred_ptr = &xd->predictor[0];
   short *diff_ptr = &xd->diff[0];
   unsigned char *dst_ptr = xd->dst.y_buffer;
--- a/vp9/common/generic/vp9_systemdependent.c
+++ b/vp9/common/generic/vp9_systemdependent.c
@@ -22,16 +22,6 @@
 #if CONFIG_RUNTIME_CPU_DETECT
   VP9_COMMON_RTCD *rtcd = &ctx->rtcd;
 
-#if CONFIG_POSTPROC || (CONFIG_VP9_ENCODER && CONFIG_INTERNAL_STATS)
-  rtcd->postproc.down             = vp9_mbpost_proc_down_c;
-  rtcd->postproc.across           = vp9_mbpost_proc_across_ip_c;
-  rtcd->postproc.downacross       = vp9_post_proc_down_and_across_c;
-  rtcd->postproc.addnoise         = vp9_plane_add_noise_c;
-  rtcd->postproc.blend_mb_inner   = vp9_blend_mb_inner_c;
-  rtcd->postproc.blend_mb_outer   = vp9_blend_mb_outer_c;
-  rtcd->postproc.blend_b          = vp9_blend_b_c;
-#endif
-
 #endif
 
 #if ARCH_X86 || ARCH_X86_64
--- a/vp9/common/vp9_onyxc_int.h
+++ b/vp9/common/vp9_onyxc_int.h
@@ -147,9 +147,6 @@
 
 typedef struct VP9_COMMON_RTCD {
 #if CONFIG_RUNTIME_CPU_DETECT
-#if CONFIG_POSTPROC
-  vp9_postproc_rtcd_vtable_t    postproc;
-#endif
   int                           flags;
 #else
   int unused;
--- a/vp9/common/vp9_postproc.c
+++ b/vp9/common/vp9_postproc.c
@@ -15,7 +15,9 @@
 #include "vp9/common/vp9_textblit.h"
 #include "vpx_scale/vpxscale.h"
 #include "vp9_systemdependent.h"
+#include "./vp9_rtcd.h"
 
+
 #include <math.h>
 #include <stdlib.h>
 #include <stdio.h>
@@ -286,27 +288,28 @@
                                        YV12_BUFFER_CONFIG   *post,
                                        int                   q,
                                        int                   low_var_thresh,
-                                       int                   flag,
-                                       vp9_postproc_rtcd_vtable_t *rtcd) {
+                                       int                   flag) {
   double level = 6.0e-05 * q * q * q - .0067 * q * q + .306 * q + .0065;
   int ppl = (int)(level + .5);
   (void) low_var_thresh;
   (void) flag;
 
-  POSTPROC_INVOKE(rtcd, downacross)(source->y_buffer, post->y_buffer,
-                                    source->y_stride,  post->y_stride,
-                                    source->y_height, source->y_width,  ppl);
-  POSTPROC_INVOKE(rtcd, across)(post->y_buffer, post->y_stride,
-                                post->y_height, post->y_width, q2mbl(q));
-  POSTPROC_INVOKE(rtcd, down)(post->y_buffer, post->y_stride,
-                              post->y_height, post->y_width, q2mbl(q));
+  vp9_post_proc_down_and_across(source->y_buffer, post->y_buffer,
+                                source->y_stride, post->y_stride,
+                                source->y_height, source->y_width, ppl);
 
-  POSTPROC_INVOKE(rtcd, downacross)(source->u_buffer, post->u_buffer,
-                                    source->uv_stride, post->uv_stride,
-                                    source->uv_height, source->uv_width, ppl);
-  POSTPROC_INVOKE(rtcd, downacross)(source->v_buffer, post->v_buffer,
-                                    source->uv_stride, post->uv_stride,
-                                    source->uv_height, source->uv_width, ppl);
+  vp9_mbpost_proc_across_ip(post->y_buffer, post->y_stride, post->y_height,
+                            post->y_width, q2mbl(q));
+
+  vp9_mbpost_proc_down(post->y_buffer, post->y_stride, post->y_height,
+                       post->y_width, q2mbl(q));
+
+  vp9_post_proc_down_and_across(source->u_buffer, post->u_buffer,
+                                source->uv_stride, post->uv_stride,
+                                source->uv_height, source->uv_width, ppl);
+  vp9_post_proc_down_and_across(source->v_buffer, post->v_buffer,
+                                source->uv_stride, post->uv_stride,
+                                source->uv_height, source->uv_width, ppl);
 }
 
 void vp9_deblock(YV12_BUFFER_CONFIG         *source,
@@ -313,22 +316,23 @@
                  YV12_BUFFER_CONFIG         *post,
                  int                         q,
                  int                         low_var_thresh,
-                 int                         flag,
-                 vp9_postproc_rtcd_vtable_t *rtcd) {
+                 int                         flag) {
   double level = 6.0e-05 * q * q * q - .0067 * q * q + .306 * q + .0065;
   int ppl = (int)(level + .5);
   (void) low_var_thresh;
   (void) flag;
 
-  POSTPROC_INVOKE(rtcd, downacross)(source->y_buffer, post->y_buffer,
-                                    source->y_stride,  post->y_stride,
-                                    source->y_height, source->y_width,   ppl);
-  POSTPROC_INVOKE(rtcd, downacross)(source->u_buffer, post->u_buffer,
-                                    source->uv_stride, post->uv_stride,
-                                    source->uv_height, source->uv_width, ppl);
-  POSTPROC_INVOKE(rtcd, downacross)(source->v_buffer, post->v_buffer,
-                                    source->uv_stride, post->uv_stride,
-                                    source->uv_height, source->uv_width, ppl);
+  vp9_post_proc_down_and_across(source->y_buffer, post->y_buffer,
+                                source->y_stride, post->y_stride,
+                                source->y_height, source->y_width, ppl);
+
+  vp9_post_proc_down_and_across(source->u_buffer, post->u_buffer,
+                                source->uv_stride, post->uv_stride,
+                                source->uv_height, source->uv_width, ppl);
+
+  vp9_post_proc_down_and_across(source->v_buffer, post->v_buffer,
+                                source->uv_stride, post->uv_stride,
+                                source->uv_height, source->uv_width, ppl);
 }
 
 void vp9_de_noise(YV12_BUFFER_CONFIG         *src,
@@ -335,8 +339,7 @@
                   YV12_BUFFER_CONFIG         *post,
                   int                         q,
                   int                         low_var_thresh,
-                  int                         flag,
-                  vp9_postproc_rtcd_vtable_t *rtcd) {
+                  int                         flag) {
   double level = 6.0e-05 * q * q * q - .0067 * q * q + .306 * q + .0065;
   int ppl = (int)(level + .5);
   (void) post;
@@ -343,25 +346,20 @@
   (void) low_var_thresh;
   (void) flag;
 
-  POSTPROC_INVOKE(rtcd, downacross)(src->y_buffer + 2 * src->y_stride + 2,
-                                    src->y_buffer + 2 * src->y_stride + 2,
-                                    src->y_stride,
-                                    src->y_stride,
-                                    src->y_height - 4,
-                                    src->y_width - 4,
-                                    ppl);
-  POSTPROC_INVOKE(rtcd, downacross)(src->u_buffer + 2 * src->uv_stride + 2,
-                                    src->u_buffer + 2 * src->uv_stride + 2,
-                                    src->uv_stride,
-                                    src->uv_stride,
-                                    src->uv_height - 4,
-                                    src->uv_width - 4, ppl);
-  POSTPROC_INVOKE(rtcd, downacross)(src->v_buffer + 2 * src->uv_stride + 2,
-                                    src->v_buffer + 2 * src->uv_stride + 2,
-                                    src->uv_stride,
-                                    src->uv_stride,
-                                    src->uv_height - 4,
-                                    src->uv_width - 4, ppl);
+  vp9_post_proc_down_and_across(src->y_buffer + 2 * src->y_stride + 2,
+                                src->y_buffer + 2 * src->y_stride + 2,
+                                src->y_stride, src->y_stride, src->y_height - 4,
+                                src->y_width - 4, ppl);
+
+  vp9_post_proc_down_and_across(src->u_buffer + 2 * src->uv_stride + 2,
+                                src->u_buffer + 2 * src->uv_stride + 2,
+                                src->uv_stride, src->uv_stride,
+                                src->uv_height - 4, src->uv_width - 4, ppl);
+
+  vp9_post_proc_down_and_across(src->v_buffer + 2 * src->uv_stride + 2,
+                                src->v_buffer + 2 * src->uv_stride + 2,
+                                src->uv_stride, src->uv_stride,
+                                src->uv_height - 4, src->uv_width - 4, ppl);
 }
 
 double vp9_gaussian(double sigma, double mu, double x) {
@@ -620,13 +618,6 @@
   }
 }
 
-
-#if CONFIG_RUNTIME_CPU_DETECT
-#define RTCD_VTABLE(oci) (&(oci)->rtcd.postproc)
-#else
-#define RTCD_VTABLE(oci) NULL
-#endif
-
 int vp9_post_proc_frame(VP9_COMMON *oci, YV12_BUFFER_CONFIG *dest,
                         vp9_ppflags_t *ppflags) {
   int q = oci->filter_level * 10 / 6;
@@ -657,11 +648,9 @@
 
   if (flags & VP9D_DEMACROBLOCK) {
     deblock_and_de_macro_block(oci->frame_to_show, &oci->post_proc_buffer,
-                               q + (deblock_level - 5) * 10, 1, 0,
-                               RTCD_VTABLE(oci));
+                               q + (deblock_level - 5) * 10, 1, 0);
   } else if (flags & VP9D_DEBLOCK) {
-    vp9_deblock(oci->frame_to_show, &oci->post_proc_buffer,
-                q, 1, 0, RTCD_VTABLE(oci));
+    vp9_deblock(oci->frame_to_show, &oci->post_proc_buffer, q, 1, 0);
   } else {
     vp8_yv12_copy_frame(oci->frame_to_show, &oci->post_proc_buffer);
   }
@@ -672,14 +661,14 @@
       fillrd(&oci->postproc_state, 63 - q, noise_level);
     }
 
-    POSTPROC_INVOKE(RTCD_VTABLE(oci), addnoise)(oci->post_proc_buffer.y_buffer,
-                                                oci->postproc_state.noise,
-                                                oci->postproc_state.blackclamp,
-                                                oci->postproc_state.whiteclamp,
-                                                oci->postproc_state.bothclamp,
-                                                oci->post_proc_buffer.y_width,
-                                                oci->post_proc_buffer.y_height,
-                                                oci->post_proc_buffer.y_stride);
+    vp9_plane_add_noise(oci->post_proc_buffer.y_buffer,
+                        oci->postproc_state.noise,
+                        oci->postproc_state.blackclamp,
+                        oci->postproc_state.whiteclamp,
+                        oci->postproc_state.bothclamp,
+                        oci->post_proc_buffer.y_width,
+                        oci->post_proc_buffer.y_height,
+                        oci->post_proc_buffer.y_stride);
   }
 
 #if CONFIG_POSTPROC_VISUALIZER
@@ -945,11 +934,8 @@
                 U = B_PREDICTION_MODE_colors[bmi->as_mode.first][1];
                 V = B_PREDICTION_MODE_colors[bmi->as_mode.first][2];
 
-                POSTPROC_INVOKE(RTCD_VTABLE(oci), blend_b)(yl + bx,
-                                                           ul + (bx >> 1),
-                                                           vl + (bx >> 1),
-                                                           Y, U, V,
-                                                           0xc000, y_stride);
+                vp9_blend_b(yl + bx, ul + (bx >> 1), vl + (bx >> 1), Y, U, V,
+                    0xc000, y_stride);
               }
               bmi++;
             }
@@ -963,11 +949,8 @@
           U = MB_PREDICTION_MODE_colors[mi->mbmi.mode][1];
           V = MB_PREDICTION_MODE_colors[mi->mbmi.mode][2];
 
-          POSTPROC_INVOKE(RTCD_VTABLE(oci), blend_mb_inner)(y_ptr + x,
-                                                            u_ptr + (x >> 1),
-                                                            v_ptr + (x >> 1),
-                                                            Y, U, V,
-                                                            0xc000, y_stride);
+          vp9_blend_mb_inner(y_ptr + x, u_ptr + (x >> 1), v_ptr + (x >> 1),
+                             Y, U, V, 0xc000, y_stride);
         }
 
         mi++;
@@ -1002,11 +985,8 @@
           U = MV_REFERENCE_FRAME_colors[mi->mbmi.ref_frame][1];
           V = MV_REFERENCE_FRAME_colors[mi->mbmi.ref_frame][2];
 
-          POSTPROC_INVOKE(RTCD_VTABLE(oci), blend_mb_outer)(y_ptr + x,
-                                                            u_ptr + (x >> 1),
-                                                            v_ptr + (x >> 1),
-                                                            Y, U, V,
-                                                            0xc000, y_stride);
+          vp9_blend_mb_outer(y_ptr + x, u_ptr + (x >> 1), v_ptr + (x >> 1),
+                             Y, U, V, 0xc000, y_stride);
         }
 
         mi++;
--- a/vp9/common/vp9_postproc.h
+++ b/vp9/common/vp9_postproc.h
@@ -12,91 +12,6 @@
 #ifndef POSTPROC_H
 #define POSTPROC_H
 
-#define prototype_postproc_inplace(sym)\
-  void sym(unsigned char *dst, int pitch, int rows, int cols, int flimit)
-
-#define prototype_postproc(sym)\
-  void sym(unsigned char *src, unsigned char *dst, int src_pitch, \
-           int dst_pitch, int rows, int cols, int flimit)
-
-#define prototype_postproc_addnoise(sym) \
-  void sym(unsigned char *s, char *noise, char blackclamp[16], \
-           char whiteclamp[16], char bothclamp[16], \
-           unsigned int w, unsigned int h, int pitch)
-
-#define prototype_postproc_blend_mb_inner(sym)\
-  void sym(unsigned char *y, unsigned char *u, unsigned char *v, \
-           int y1, int u1, int v1, int alpha, int stride)
-
-#define prototype_postproc_blend_mb_outer(sym)\
-  void sym(unsigned char *y, unsigned char *u, unsigned char *v, \
-           int y1, int u1, int v1, int alpha, int stride)
-
-#define prototype_postproc_blend_b(sym)\
-  void sym(unsigned char *y, unsigned char *u, unsigned char *v, \
-           int y1, int u1, int v1, int alpha, int stride)
-
-#if ARCH_X86 || ARCH_X86_64
-#include "x86/vp9_postproc_x86.h"
-#endif
-
-#ifndef vp9_postproc_down
-#define vp9_postproc_down vp9_mbpost_proc_down_c
-#endif
-extern prototype_postproc_inplace(vp9_postproc_down);
-
-#ifndef vp9_postproc_across
-#define vp9_postproc_across vp9_mbpost_proc_across_ip_c
-#endif
-extern prototype_postproc_inplace(vp9_postproc_across);
-
-#ifndef vp9_postproc_downacross
-#define vp9_postproc_downacross vp9_post_proc_down_and_across_c
-#endif
-extern prototype_postproc(vp9_postproc_downacross);
-
-#ifndef vp9_postproc_addnoise
-#define vp9_postproc_addnoise vp9_plane_add_noise_c
-#endif
-extern prototype_postproc_addnoise(vp9_postproc_addnoise);
-
-#ifndef vp9_postproc_blend_mb_inner
-#define vp9_postproc_blend_mb_inner vp9_blend_mb_inner_c
-#endif
-extern prototype_postproc_blend_mb_inner(vp9_postproc_blend_mb_inner);
-
-#ifndef vp9_postproc_blend_mb_outer
-#define vp9_postproc_blend_mb_outer vp9_blend_mb_outer_c
-#endif
-extern prototype_postproc_blend_mb_outer(vp9_postproc_blend_mb_outer);
-
-#ifndef vp9_postproc_blend_b
-#define vp9_postproc_blend_b vp9_blend_b_c
-#endif
-extern prototype_postproc_blend_b(vp9_postproc_blend_b);
-
-typedef prototype_postproc((*vp9_postproc_fn_t));
-typedef prototype_postproc_inplace((*vp9_postproc_inplace_fn_t));
-typedef prototype_postproc_addnoise((*vp9_postproc_addnoise_fn_t));
-typedef prototype_postproc_blend_mb_inner((*vp9_postproc_blend_mb_inner_fn_t));
-typedef prototype_postproc_blend_mb_outer((*vp9_postproc_blend_mb_outer_fn_t));
-typedef prototype_postproc_blend_b((*vp9_postproc_blend_b_fn_t));
-typedef struct {
-  vp9_postproc_inplace_fn_t           down;
-  vp9_postproc_inplace_fn_t           across;
-  vp9_postproc_fn_t                   downacross;
-  vp9_postproc_addnoise_fn_t          addnoise;
-  vp9_postproc_blend_mb_inner_fn_t    blend_mb_inner;
-  vp9_postproc_blend_mb_outer_fn_t    blend_mb_outer;
-  vp9_postproc_blend_b_fn_t           blend_b;
-} vp9_postproc_rtcd_vtable_t;
-
-#if CONFIG_RUNTIME_CPU_DETECT
-#define POSTPROC_INVOKE(ctx,fn) (ctx)->fn
-#else
-#define POSTPROC_INVOKE(ctx,fn) vp9_postproc_##fn
-#endif
-
 #include "vpx_ports/mem.h"
 struct postproc_state {
   int           last_q;
@@ -116,13 +31,11 @@
                   YV12_BUFFER_CONFIG         *post,
                   int                         q,
                   int                         low_var_thresh,
-                  int                         flag,
-                  vp9_postproc_rtcd_vtable_t *rtcd);
+                  int                         flag);
 
 void vp9_deblock(YV12_BUFFER_CONFIG         *source,
                  YV12_BUFFER_CONFIG         *post,
                  int                         q,
                  int                         low_var_thresh,
-                 int                         flag,
-                 vp9_postproc_rtcd_vtable_t *rtcd);
+                 int                         flag);
 #endif
--- a/vp9/common/vp9_rtcd_defs.sh
+++ b/vp9/common/vp9_rtcd_defs.sh
@@ -219,6 +219,34 @@
 vp9_loop_filter_simple_bh_neon=vp9_loop_filter_bhs_neon
 
 #
+# post proc
+#
+prototype void vp9_mbpost_proc_down "unsigned char *dst, int pitch, int rows, int cols, int flimit"
+specialize vp9_mbpost_proc_down mmx sse2
+vp9_mbpost_proc_down_sse2=vp9_mbpost_proc_down_xmm
+
+prototype void vp9_mbpost_proc_across_ip "unsigned char *src, int pitch, int rows, int cols, int flimit"
+specialize vp9_mbpost_proc_across_ip sse2
+vp9_mbpost_proc_across_ip_sse2=vp9_mbpost_proc_across_ip_xmm
+
+prototype void vp9_post_proc_down_and_across "unsigned char *src_ptr, unsigned char *dst_ptr, int src_pixels_per_line, int dst_pixels_per_line, int rows, int cols, int flimit"
+specialize vp9_post_proc_down_and_across mmx sse2
+vp9_post_proc_down_and_across_sse2=vp9_post_proc_down_and_across_xmm
+
+prototype void vp9_plane_add_noise "unsigned char *Start, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int Width, unsigned int Height, int Pitch"
+specialize vp9_plane_add_noise mmx sse2
+vp9_plane_add_noise_sse2=vp9_plane_add_noise_wmt
+
+prototype void vp9_blend_mb_inner "unsigned char *y, unsigned char *u, unsigned char *v, int y1, int u1, int v1, int alpha, int stride"
+specialize vp9_blend_mb_inner
+
+prototype void vp9_blend_mb_outer "unsigned char *y, unsigned char *u, unsigned char *v, int y1, int u1, int v1, int alpha, int stride"
+specialize vp9_blend_mb_outer
+
+prototype void vp9_blend_b "unsigned char *y, unsigned char *u, unsigned char *v, int y1, int u1, int v1, int alpha, int stride"
+specialize vp9_blend_b
+
+#
 # sad 16x3, 3x16
 #
 prototype unsigned int vp9_sad16x3 "const unsigned char *src_ptr, int  src_stride, const unsigned char *ref_ptr, int ref_stride"
--- a/vp9/common/x86/vp9_x86_systemdependent.c
+++ b/vp9/common/x86/vp9_x86_systemdependent.c
@@ -31,12 +31,6 @@
 // The commented functions need to be re-written for vpx.
   if (flags & HAS_MMX) {
 
-#if CONFIG_POSTPROC
-    rtcd->postproc.down        = vp9_mbpost_proc_down_mmx;
-    /*rtcd->postproc.across      = vp9_mbpost_proc_across_ip_c;*/
-    rtcd->postproc.downacross  = vp9_post_proc_down_and_across_mmx;
-    rtcd->postproc.addnoise    = vp9_plane_add_noise_mmx;
-#endif
   }
 
 #endif
@@ -47,12 +41,6 @@
 
     // rtcd->idct.iwalsh16     = vp9_short_inv_walsh4x4_sse2;
 
-#if CONFIG_POSTPROC
-    rtcd->postproc.down        = vp9_mbpost_proc_down_xmm;
-    rtcd->postproc.across      = vp9_mbpost_proc_across_ip_xmm;
-    rtcd->postproc.downacross  = vp9_post_proc_down_and_across_xmm;
-    rtcd->postproc.addnoise    = vp9_plane_add_noise_wmt;
-#endif
   }
 
 #endif
--- a/vp9/encoder/vp9_encodemb.h
+++ b/vp9/encoder/vp9_encodemb.h
@@ -25,14 +25,6 @@
 } MODE_DEFINITION;
 
 
-#if CONFIG_RUNTIME_CPU_DETECT
-#define ENCODEMB_INVOKE(ctx,fn) (ctx)->fn
-#else
-#define ENCODEMB_INVOKE(ctx,fn) vp9_encodemb_##fn
-#endif
-
-
-
 #include "vp9_onyx_int.h"
 struct VP9_ENCODER_RTCD;
 void vp9_encode_inter16x16(MACROBLOCK *x);
--- a/vp9/encoder/vp9_mbgraph.c
+++ b/vp9/encoder/vp9_mbgraph.c
@@ -184,7 +184,6 @@
   // FIXME should really use something like near/nearest MV and/or MV prediction
   xd->pre.y_buffer = ref->y_buffer + mb_y_offset;
   xd->pre.y_stride = ref->y_stride;
-  // VARIANCE_INVOKE(&cpi->rtcd.variance, satd16x16)
   err = vp9_sad16x16(ref->y_buffer + mb_y_offset, ref->y_stride,
                      xd->dst.y_buffer, xd->dst.y_stride, INT_MAX);
 
--- a/vp9/encoder/vp9_mcomp.h
+++ b/vp9/encoder/vp9_mcomp.h
@@ -82,10 +82,4 @@
                                        int_mv *center_mv);
 
 
-#if CONFIG_RUNTIME_CPU_DETECT
-#define SEARCH_INVOKE(ctx,fn) (ctx)->fn
-#else
-#define SEARCH_INVOKE(ctx,fn) vp9_search_##fn
-#endif
-
 #endif
--- a/vp9/encoder/vp9_onyx_if.c
+++ b/vp9/encoder/vp9_onyx_if.c
@@ -30,7 +30,6 @@
 #include "vpx_mem/vpx_mem.h"
 #include "vp9/common/vp9_swapyv12buffer.h"
 #include "vpx_ports/vpx_timer.h"
-#include "vp9_temporal_filter.h"
 
 #include "vp9/common/vp9_seg_common.h"
 #include "vp9_mbgraph.h"
@@ -3272,9 +3271,9 @@
 
 
     if (cm->frame_type == KEY_FRAME) {
-      vp9_de_noise(cpi->Source, cpi->Source, l, 1,  0, RTCD(postproc));
+      vp9_de_noise(cpi->Source, cpi->Source, l, 1,  0);
     } else {
-      vp9_de_noise(cpi->Source, cpi->Source, l, 1,  0, RTCD(postproc));
+      vp9_de_noise(cpi->Source, cpi->Source, l, 1,  0);
 
       src = cpi->Source->y_buffer;
 
@@ -4385,7 +4384,8 @@
           double frame_psnr2, frame_ssim2 = 0;
           double weight = 0;
 #if CONFIG_POSTPROC
-          vp9_deblock(cm->frame_to_show, &cm->post_proc_buffer, cm->filter_level * 10 / 6, 1, 0, IF_RTCD(&cm->rtcd.postproc));
+          vp9_deblock(cm->frame_to_show, &cm->post_proc_buffer,
+                      cm->filter_level * 10 / 6, 1, 0);
 #endif
           vp9_clear_system_state();
 
--- a/vp9/encoder/vp9_onyx_int.h
+++ b/vp9/encoder/vp9_onyx_int.h
@@ -26,7 +26,6 @@
 #include "vpx_ports/mem.h"
 #include "vpx/internal/vpx_codec_internal.h"
 #include "vp9_mcomp.h"
-#include "vp9_temporal_filter.h"
 #include "vp9/common/vp9_findnearmv.h"
 #include "vp9_lookahead.h"
 
@@ -394,7 +393,6 @@
 
 typedef struct VP9_ENCODER_RTCD {
   VP9_COMMON_RTCD            *common;
-  vp9_temporal_rtcd_vtable_t  temporal;
 } VP9_ENCODER_RTCD;
 
 enum BlockSize {
--- a/vp9/encoder/vp9_temporal_filter.h
+++ /dev/null
@@ -1,51 +1,0 @@
-/*
- *  Copyright (c) 2010 The WebM project authors. All Rights Reserved.
- *
- *  Use of this source code is governed by a BSD-style license
- *  that can be found in the LICENSE file in the root of the source
- *  tree. An additional intellectual property rights grant can be found
- *  in the file PATENTS.  All contributing project authors may
- *  be found in the AUTHORS file in the root of the source tree.
- */
-
-
-#ifndef __INC_TEMPORAL_FILTER_H
-#define __INC_TEMPORAL_FILTER_H
-
-#define prototype_apply(sym)\
-  void (sym) \
-  ( \
-    unsigned char *frame1, \
-    unsigned int stride, \
-    unsigned char *frame2, \
-    unsigned int block_size, \
-    int strength, \
-    int filter_weight, \
-    unsigned int *accumulator, \
-    unsigned short *count \
-  )
-
-#if ARCH_X86 || ARCH_X86_64
-#include "x86/vp9_temporal_filter_x86.h"
-#endif
-
-#ifndef vp9_temporal_filter_apply
-#define vp9_temporal_filter_apply vp9_temporal_filter_apply_c
-#endif
-extern prototype_apply(vp9_temporal_filter_apply);
-
-typedef struct {
-  prototype_apply(*apply);
-} vp9_temporal_rtcd_vtable_t;
-
-#if CONFIG_RUNTIME_CPU_DETECT
-#define TEMPORAL_INVOKE(ctx,fn) (ctx)->fn
-#else
-#define TEMPORAL_INVOKE(ctx,fn) vp9_temporal_filter_##fn
-#endif
-
-struct VP9_COMP;
-
-extern void vp9_temporal_filter_prepare_c(struct VP9_COMP *cpi, int distance);
-
-#endif // __INC_TEMPORAL_FILTER_H
--- a/vp9/encoder/x86/vp9_temporal_filter_x86.h
+++ /dev/null
@@ -1,27 +1,0 @@
-/*
- *  Copyright (c) 2010 The WebM project authors. All Rights Reserved.
- *
- *  Use of this source code is governed by a BSD-style license
- *  that can be found in the LICENSE file in the root of the source
- *  tree. An additional intellectual property rights grant can be found
- *  in the file PATENTS.  All contributing project authors may
- *  be found in the AUTHORS file in the root of the source tree.
- */
-
-
-#ifndef __INC_TEMPORAL_FILTER_X86_H
-#define __INC_TEMPORAL_FILTER_X86_H
-
-#if HAVE_SSE2
-extern prototype_apply(vp9_temporal_filter_apply_sse2);
-
-#if !CONFIG_RUNTIME_CPU_DETECT
-
-#undef  vp9_temporal_filter_apply
-#define vp9_temporal_filter_apply vp9_temporal_filter_apply_sse2
-
-#endif
-
-#endif
-
-#endif // __INC_TEMPORAL_FILTER_X86_H