#ifndef VPX_VP8_ENCODER_DENOISING_H_
#define VPX_VP8_ENCODER_DENOISING_H_
#include "block.h"
#include "vp8/common/loopfilter.h"
#ifdef __cplusplus
extern "C" {
#endif
#define SUM_DIFF_THRESHOLD …
#define SUM_DIFF_THRESHOLD_HIGH …
#define MOTION_MAGNITUDE_THRESHOLD …
#define SUM_DIFF_THRESHOLD_UV …
#define SUM_DIFF_THRESHOLD_HIGH_UV …
#define SUM_DIFF_FROM_AVG_THRESH_UV …
#define MOTION_MAGNITUDE_THRESHOLD_UV …
#define MAX_GF_ARF_DENOISE_RANGE …
enum vp8_denoiser_decision { … };
enum vp8_denoiser_filter_state { … };
enum vp8_denoiser_mode { … };
denoise_params;
VP8_DENOISER;
int vp8_denoiser_allocate(VP8_DENOISER *denoiser, int width, int height,
int num_mb_rows, int num_mb_cols, int mode);
void vp8_denoiser_free(VP8_DENOISER *denoiser);
void vp8_denoiser_set_parameters(VP8_DENOISER *denoiser, int mode);
void vp8_denoiser_denoise_mb(VP8_DENOISER *denoiser, MACROBLOCK *x,
unsigned int best_sse, unsigned int zero_mv_sse,
int recon_yoffset, int recon_uvoffset,
loop_filter_info_n *lfi_n, int mb_row, int mb_col,
int block_index, int consec_zero_last);
#ifdef __cplusplus
}
#endif
#endif