Home | History | Annotate | Download | only in common
      1 /*
      2  *  Copyright (c) 2010 The WebM project authors. All Rights Reserved.
      3  *
      4  *  Use of this source code is governed by a BSD-style license
      5  *  that can be found in the LICENSE file in the root of the source
      6  *  tree. An additional intellectual property rights grant can be found
      7  *  in the file PATENTS.  All contributing project authors may
      8  *  be found in the AUTHORS file in the root of the source tree.
      9  */
     10 
     11 
     12 #ifndef POSTPROC_H
     13 #define POSTPROC_H
     14 
     15 #include "vpx_ports/mem.h"
     16 struct postproc_state
     17 {
     18     int           last_q;
     19     int           last_noise;
     20     char          noise[3072];
     21     int           last_base_qindex;
     22     int           last_frame_valid;
     23     DECLARE_ALIGNED(16, char, blackclamp[16]);
     24     DECLARE_ALIGNED(16, char, whiteclamp[16]);
     25     DECLARE_ALIGNED(16, char, bothclamp[16]);
     26 };
     27 #include "onyxc_int.h"
     28 #include "ppflags.h"
     29 int vp8_post_proc_frame(struct VP8Common *oci, YV12_BUFFER_CONFIG *dest,
     30                         vp8_ppflags_t *flags);
     31 
     32 
     33 void vp8_de_noise(struct VP8Common           *oci,
     34                   YV12_BUFFER_CONFIG         *source,
     35                   YV12_BUFFER_CONFIG         *post,
     36                   int                         q,
     37                   int                         low_var_thresh,
     38                   int                         flag);
     39 
     40 void vp8_deblock(struct VP8Common           *oci,
     41                  YV12_BUFFER_CONFIG         *source,
     42                  YV12_BUFFER_CONFIG         *post,
     43                  int                         q,
     44                  int                         low_var_thresh,
     45                  int                         flag);
     46 
     47 #define MFQE_PRECISION 4
     48 
     49 void vp8_multiframe_quality_enhance(struct VP8Common *cm);
     50 #endif
     51