2 * Copyright (c) 2010 The WebM project authors. All Rights Reserved.
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.
11 #ifndef VPX_VP9_COMMON_VP9_POSTPROC_H_
12 #define VPX_VP9_COMMON_VP9_POSTPROC_H_
14 #include "vpx_ports/mem.h"
15 #include "vpx_scale/yv12config.h"
16 #include "vp9/common/vp9_blockd.h"
17 #include "vp9/common/vp9_mfqe.h"
18 #include "vp9/common/vp9_ppflags.h"
24 struct postproc_state {
33 int8_t *generated_noise;
38 #define MFQE_PRECISION 4
40 int vp9_post_proc_frame(struct VP9Common *cm, YV12_BUFFER_CONFIG *dest,
41 vp9_ppflags_t *ppflags, int unscaled_width);
43 void vp9_denoise(struct VP9Common *cm, const YV12_BUFFER_CONFIG *src,
44 YV12_BUFFER_CONFIG *dst, int q, uint8_t *limits);
46 void vp9_deblock(struct VP9Common *cm, const YV12_BUFFER_CONFIG *src,
47 YV12_BUFFER_CONFIG *dst, int q, uint8_t *limits);
53 #endif // VPX_VP9_COMMON_VP9_POSTPROC_H_