ref: edfc93aebac7674f26ed4c0389d97ae15e8b8c2b
dir: /vp8/encoder/temporal_filter.h/
/* * 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_VP8_TEMPORAL_FILTER_H #define __INC_VP8_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/temporal_filter_x86.h" #endif #ifndef vp8_temporal_filter_apply #define vp8_temporal_filter_apply vp8_temporal_filter_apply_c #endif extern prototype_apply(vp8_temporal_filter_apply); typedef struct { prototype_apply(*apply); } vp8_temporal_rtcd_vtable_t; #if CONFIG_RUNTIME_CPU_DETECT #define TEMPORAL_INVOKE(ctx,fn) (ctx)->fn #else #define TEMPORAL_INVOKE(ctx,fn) vp8_temporal_filter_##fn #endif #endif // __INC_VP8_TEMPORAL_FILTER_H