blob: e92e1c11e04350032b23a18efba83380f4e45899 [file] [log] [blame]
Harish Mahendrakar85206902015-08-13 10:59:13 +05301/******************************************************************************
2 *
3 * Copyright (C) 2015 The Android Open Source Project
4 *
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at:
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 *
17 *****************************************************************************
18 * Originally developed and contributed by Ittiam Systems Pvt. Ltd, Bangalore
19*/
20/**
21*******************************************************************************
22* @file
23* ideint_structs.h
24*
25* @brief
26* Deinterlacer structure definitions
27*
28* @author
29* Ittiam
30*
31* @par List of Functions:
32*
33* @remarks
34* None
35*
36*******************************************************************************
37*/
38
39#ifndef __IDEINT_STRUCTS_H__
40#define __IDEINT_STRUCTS_H__
41
42typedef void ideint_spatial_filter_t(UWORD8 *pu1_src,
43 UWORD8 *pu1_out,
44 WORD32 cur_strd,
45 WORD32 out_strd);
46
47typedef WORD32 ideint_cac_8x8_t(UWORD8 *pu1_top,
48 UWORD8 *pu1_bot,
49 WORD32 i4_top_stride,
50 WORD32 i4_bot_stride);
51/** Deinterlacer context */
52typedef struct
53{
54 /** params */
55 ideint_params_t s_params;
56
57 /** Adaptive variance used in spatio temporal filtering */
58 WORD32 ai4_vrnc_avg_fb[3];
59
60 /** Function pointers */
61 icv_sad_8x4_t *pf_sad_8x4;
62
63 icv_variance_8x4_t *pf_variance_8x4;
64
65 ideint_spatial_filter_t *pf_spatial_filter;
66
67 ideint_cac_8x8_t *pf_cac_8x8;
68}ctxt_t;
69
70#endif /* __IDEINT_STRUCTS_H__ */