1/******************************************************************************
2*
3* Copyright (C) 2012 Ittiam Systems Pvt Ltd, Bangalore
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/**
19*******************************************************************************
20* @file
21*  ihevc_inter_pred.h
22*
23* @brief
24*  Declarations for the fucntions defined in  ihevc_inter_pred_ft.c
25*
26* @author
27*  Srinivas T
28*
29* @par List of Functions:
30*
31* @remarks
32*  None
33*
34*******************************************************************************
35*/
36#ifndef _IHEVC_INTER_PRED_H_
37#define _IHEVC_INTER_PRED_H_
38
39#define NTAPS_LUMA 8
40#define NTAPS_CHROMA 4
41#define SHIFT_14_MINUS_BIT_DEPTH (14 - BIT_DEPTH)
42#define OFFSET_14_MINUS_BIT_DEPTH (1 << (SHIFT_14_MINUS_BIT_DEPTH - 1))
43#define OFFSET14 (1 << (14 - 1))
44#define FILTER_PREC 6
45
46#define REF_WIDTH 1280
47#define REF_HEIGHT 720
48
49/*****************************************************************************/
50/* Function Declarations                                                     */
51/*****************************************************************************/
52
53typedef void ihevc_inter_pred_ft(
54                UWORD8 *pu1_src,
55                UWORD8 *pu1_dst,
56                WORD32 src_strd,
57                WORD32 dst_strd,
58                WORD8 *pi1_coeff,
59                WORD32 ht,
60                WORD32 wd);
61
62typedef void ihevc_inter_pred_w16out_ft(
63                UWORD8 *pu1_src,
64                WORD16 *pi2_dst,
65                WORD32 src_strd,
66                WORD32 dst_strd,
67                WORD8 *pi1_coeff,
68                WORD32 ht,
69                WORD32 wd);
70
71typedef void ihevc_inter_pred_w16inp_ft(
72                WORD16 *pi2_src,
73                UWORD8 *pu1_dst,
74                WORD32 src_strd,
75                WORD32 dst_strd,
76                WORD8 *pi1_coeff,
77                WORD32 ht,
78                WORD32 wd);
79
80typedef void ihevc_inter_pred_w16inp_w16out_ft(
81                WORD16 *pi2_src,
82                WORD16 *pi2_dst,
83                WORD32 src_strd,
84                WORD32 dst_strd,
85                WORD8 *pi1_coeff,
86                WORD32 ht,
87                WORD32 wd);
88
89
90typedef void ihevc_hbd_inter_pred_ft(UWORD16 *pu2_src,
91                                     UWORD16 *pu2_dst,
92                                     WORD32 src_strd,
93                                     WORD32 dst_strd,
94                                     WORD8 *pi1_coeff,
95                                     WORD32 ht,
96                                     WORD32 wd,
97                                     UWORD8 bit_depth);
98
99
100typedef void ihevc_hbd_inter_pred_w16out_ft(
101                UWORD16 *pu2_src,
102                WORD16 *pi2_dst,
103                WORD32 src_strd,
104                WORD32 dst_strd,
105                WORD8 *pi1_coeff,
106                WORD32 ht,
107                WORD32 wd,
108                UWORD8 bit_depth);
109
110
111typedef void ihevc_hbd_inter_pred_w16inp_ft(
112                WORD16 *pi2_src,
113                UWORD16 *pu2_dst,
114                WORD32 src_strd,
115                WORD32 dst_strd,
116                WORD8 *pi1_coeff,
117                WORD32 ht,
118                WORD32 wd,
119                UWORD8 bit_depth);
120
121
122typedef void ihevc_hbd_inter_pred_w16inp_w16out_ft(
123                WORD16 *pi2_src,
124                WORD16 *pi2_dst,
125                WORD32 src_strd,
126                WORD32 dst_strd,
127                WORD8 *pi1_coeff,
128                WORD32 ht,
129                WORD32 wd,
130                UWORD8 bit_depth);
131
132typedef void ihevc_hbd_weighted_pred_uni_ft(
133                WORD16 *pi2_src,
134                UWORD16 *pu2_dst,
135                WORD32 src_strd,
136                WORD32 dst_strd,
137                WORD32 wgt0,
138                WORD32 off0,
139                WORD32 shift,
140                WORD32 lvl_shift,
141                WORD32 ht,
142                WORD32 wd,
143                UWORD8 bit_depth);
144
145
146typedef void ihevc_hbd_weighted_pred_bi_ft(
147                WORD16 *pi2_src1,
148                WORD16 *pi2_src2,
149                UWORD16 *pu2_dst,
150                WORD32 src_strd1,
151                WORD32 src_strd2,
152                WORD32 dst_strd,
153                WORD32 wgt0,
154                WORD32 off0,
155                WORD32 wgt1,
156                WORD32 off1,
157                WORD32 shift,
158                WORD32 lvl_shift1,
159                WORD32 lvl_shift2,
160                WORD32 ht,
161                WORD32 wd,
162                UWORD8 bit_depth);
163
164
165typedef void ihevc_hbd_weighted_pred_bi_default_ft(
166                WORD16 *pi2_src1,
167                WORD16 *pi2_src2,
168                UWORD16 *pu2_dst,
169                WORD32 src_strd1,
170                WORD32 src_strd2,
171                WORD32 dst_strd,
172                WORD32 lvl_shift1,
173                WORD32 lvl_shift2,
174                WORD32 ht,
175                WORD32 wd,
176                UWORD8 bit_depth);
177typedef void ihevc_hbd_weighted_pred_chroma_uni_ft(WORD16 *pi2_src,
178                                                   UWORD16 *pu2_dst,
179                                                   WORD32 src_strd,
180                                                   WORD32 dst_strd,
181                                                   WORD32 wgt0_cb,
182                                                   WORD32 wgt0_cr,
183                                                   WORD32 off0_cb,
184                                                   WORD32 off0_cr,
185                                                   WORD32 shift,
186                                                   WORD32 lvl_shift,
187                                                   WORD32 ht,
188                                                   WORD32 wd,
189                                                   UWORD8 bit_depth);
190
191typedef void ihevc_hbd_weighted_pred_chroma_bi_ft(WORD16 *pi2_src1,
192                                                  WORD16 *pi2_src2,
193                                                  UWORD16 *pu2_dst,
194                                                  WORD32 src_strd1,
195                                                  WORD32 src_strd2,
196                                                  WORD32 dst_strd,
197                                                  WORD32 wgt0_cb,
198                                                  WORD32 wgt0_cr,
199                                                  WORD32 off0_cb,
200                                                  WORD32 off0_cr,
201                                                  WORD32 wgt1_cb,
202                                                  WORD32 wgt1_cr,
203                                                  WORD32 off1_cb,
204                                                  WORD32 off1_cr,
205                                                  WORD32 shift,
206                                                  WORD32 lvl_shift1,
207                                                  WORD32 lvl_shift2,
208                                                  WORD32 ht,
209                                                  WORD32 wd,
210                                                  UWORD8 bit_depth);
211
212typedef void ihevc_hbd_weighted_pred_chroma_bi_default_ft(WORD16 *pi2_src1,
213                                                          WORD16 *pi2_src2,
214                                                          UWORD16 *pu2_dst,
215                                                          WORD32 src_strd1,
216                                                          WORD32 src_strd2,
217                                                          WORD32 dst_strd,
218                                                          WORD32 lvl_shift1,
219                                                          WORD32 lvl_shift2,
220                                                          WORD32 ht,
221                                                          WORD32 wd,
222                                                          UWORD8 bit_depth);
223/* C function declarations */
224ihevc_inter_pred_ft ihevc_inter_pred_luma_copy;
225ihevc_inter_pred_ft ihevc_inter_pred_luma_horz;
226ihevc_inter_pred_ft ihevc_inter_pred_luma_vert;
227ihevc_inter_pred_w16out_ft ihevc_inter_pred_luma_copy_w16out;
228ihevc_inter_pred_w16out_ft ihevc_inter_pred_luma_horz_w16out;
229ihevc_inter_pred_w16out_ft ihevc_inter_pred_luma_vert_w16out;
230ihevc_inter_pred_w16inp_ft ihevc_inter_pred_luma_vert_w16inp;
231ihevc_inter_pred_w16inp_w16out_ft ihevc_inter_pred_luma_vert_w16inp_w16out;
232ihevc_inter_pred_ft ihevc_inter_pred_chroma_copy;
233ihevc_inter_pred_ft ihevc_inter_pred_chroma_horz;
234ihevc_inter_pred_ft ihevc_inter_pred_chroma_vert;
235ihevc_inter_pred_w16out_ft ihevc_inter_pred_chroma_copy_w16out;
236ihevc_inter_pred_w16out_ft ihevc_inter_pred_chroma_horz_w16out;
237ihevc_inter_pred_w16out_ft ihevc_inter_pred_chroma_vert_w16out;
238ihevc_inter_pred_w16inp_ft ihevc_inter_pred_chroma_vert_w16inp;
239ihevc_inter_pred_w16inp_w16out_ft ihevc_inter_pred_chroma_vert_w16inp_w16out;
240
241ihevc_hbd_inter_pred_ft ihevc_hbd_inter_pred_luma_copy;
242ihevc_hbd_inter_pred_ft ihevc_hbd_inter_pred_luma_horz;
243ihevc_hbd_inter_pred_ft ihevc_hbd_inter_pred_luma_vert;
244ihevc_hbd_inter_pred_w16out_ft ihevc_hbd_inter_pred_luma_copy_w16out;
245ihevc_hbd_inter_pred_w16out_ft ihevc_hbd_inter_pred_luma_horz_w16out;
246ihevc_hbd_inter_pred_w16out_ft ihevc_hbd_inter_pred_luma_vert_w16out;
247ihevc_hbd_inter_pred_w16inp_ft ihevc_hbd_inter_pred_luma_vert_w16inp;
248ihevc_hbd_inter_pred_w16inp_w16out_ft ihevc_hbd_inter_pred_luma_vert_w16inp_w16out;
249ihevc_hbd_inter_pred_ft ihevc_hbd_inter_pred_chroma_copy;
250ihevc_hbd_inter_pred_ft ihevc_hbd_inter_pred_chroma_horz;
251ihevc_hbd_inter_pred_ft ihevc_hbd_inter_pred_chroma_vert;
252ihevc_hbd_inter_pred_w16out_ft ihevc_hbd_inter_pred_chroma_copy_w16out;
253ihevc_hbd_inter_pred_w16out_ft ihevc_hbd_inter_pred_chroma_horz_w16out;
254ihevc_hbd_inter_pred_w16out_ft ihevc_hbd_inter_pred_chroma_vert_w16out;
255ihevc_hbd_inter_pred_w16inp_ft ihevc_hbd_inter_pred_chroma_vert_w16inp;
256ihevc_hbd_inter_pred_w16inp_w16out_ft ihevc_hbd_inter_pred_chroma_vert_w16inp_w16out;
257ihevc_hbd_weighted_pred_uni_ft ihevc_hbd_weighted_pred_uni;
258ihevc_hbd_weighted_pred_bi_ft ihevc_hbd_weighted_pred_bi;
259ihevc_hbd_weighted_pred_bi_default_ft ihevc_hbd_weighted_pred_bi_default;
260ihevc_hbd_weighted_pred_chroma_uni_ft ihevc_hbd_weighted_pred_chroma_uni;
261ihevc_hbd_weighted_pred_chroma_bi_ft ihevc_hbd_weighted_pred_chroma_bi;
262ihevc_hbd_weighted_pred_chroma_bi_default_ft ihevc_hbd_weighted_pred_chroma_bi_default;
263
264/* A9 Q function declarations */
265ihevc_inter_pred_ft ihevc_inter_pred_luma_copy_a9q;
266ihevc_inter_pred_ft ihevc_inter_pred_luma_horz_a9q;
267ihevc_inter_pred_ft ihevc_inter_pred_luma_vert_a9q;
268ihevc_inter_pred_w16out_ft ihevc_inter_pred_luma_copy_w16out_a9q;
269ihevc_inter_pred_w16out_ft ihevc_inter_pred_luma_horz_w16out_a9q;
270ihevc_inter_pred_w16out_ft ihevc_inter_pred_luma_vert_w16out_a9q;
271ihevc_inter_pred_w16inp_ft ihevc_inter_pred_luma_vert_w16inp_a9q;
272ihevc_inter_pred_w16inp_w16out_ft ihevc_inter_pred_luma_vert_w16inp_w16out_a9q;
273ihevc_inter_pred_ft ihevc_inter_pred_chroma_copy_a9q;
274ihevc_inter_pred_ft ihevc_inter_pred_chroma_horz_a9q;
275ihevc_inter_pred_ft ihevc_inter_pred_chroma_vert_a9q;
276ihevc_inter_pred_w16out_ft ihevc_inter_pred_chroma_copy_w16out_a9q;
277ihevc_inter_pred_w16out_ft ihevc_inter_pred_chroma_horz_w16out_a9q;
278ihevc_inter_pred_w16out_ft ihevc_inter_pred_chroma_vert_w16out_a9q;
279ihevc_inter_pred_w16inp_ft ihevc_inter_pred_chroma_vert_w16inp_a9q;
280ihevc_inter_pred_w16inp_w16out_ft ihevc_inter_pred_chroma_vert_w16inp_w16out_a9q;
281
282/* A9 A function declarations */
283ihevc_inter_pred_ft ihevc_inter_pred_luma_copy_a9a;
284ihevc_inter_pred_ft ihevc_inter_pred_luma_horz_a9a;
285ihevc_inter_pred_ft ihevc_inter_pred_luma_vert_a9a;
286ihevc_inter_pred_w16out_ft ihevc_inter_pred_luma_copy_w16out_a9a;
287ihevc_inter_pred_w16out_ft ihevc_inter_pred_luma_horz_w16out_a9a;
288ihevc_inter_pred_w16out_ft ihevc_inter_pred_luma_vert_w16out_a9a;
289ihevc_inter_pred_w16inp_ft ihevc_inter_pred_luma_vert_w16inp_a9a;
290ihevc_inter_pred_w16inp_w16out_ft ihevc_inter_pred_luma_vert_w16inp_w16out_a9a;
291ihevc_inter_pred_ft ihevc_inter_pred_chroma_copy_a9a;
292ihevc_inter_pred_ft ihevc_inter_pred_chroma_horz_a9a;
293ihevc_inter_pred_ft ihevc_inter_pred_chroma_vert_a9a;
294ihevc_inter_pred_w16out_ft ihevc_inter_pred_chroma_copy_w16out_a9a;
295ihevc_inter_pred_w16out_ft ihevc_inter_pred_chroma_horz_w16out_a9a;
296ihevc_inter_pred_w16out_ft ihevc_inter_pred_chroma_vert_w16out_a9a;
297ihevc_inter_pred_w16inp_ft ihevc_inter_pred_chroma_vert_w16inp_a9a;
298ihevc_inter_pred_w16inp_w16out_ft ihevc_inter_pred_chroma_vert_w16inp_w16out_a9a;
299
300/* NEONINTR function declarations */
301ihevc_inter_pred_ft ihevc_inter_pred_luma_copy_neonintr;
302ihevc_inter_pred_ft ihevc_inter_pred_luma_horz_neonintr;
303ihevc_inter_pred_ft ihevc_inter_pred_luma_vert_neonintr;
304ihevc_inter_pred_w16out_ft ihevc_inter_pred_luma_copy_w16out_neonintr;
305ihevc_inter_pred_w16out_ft ihevc_inter_pred_luma_horz_w16out_neonintr;
306ihevc_inter_pred_w16out_ft ihevc_inter_pred_luma_vert_w16out_neonintr;
307ihevc_inter_pred_w16inp_ft ihevc_inter_pred_luma_vert_w16inp_neonintr;
308ihevc_inter_pred_w16inp_w16out_ft ihevc_inter_pred_luma_vert_w16inp_w16out_neonintr;
309ihevc_inter_pred_ft ihevc_inter_pred_chroma_copy_neonintr;
310ihevc_inter_pred_ft ihevc_inter_pred_chroma_horz_neonintr;
311ihevc_inter_pred_ft ihevc_inter_pred_chroma_vert_neonintr;
312ihevc_inter_pred_w16out_ft ihevc_inter_pred_chroma_copy_w16out_neonintr;
313ihevc_inter_pred_w16out_ft ihevc_inter_pred_chroma_horz_w16out_neonintr;
314ihevc_inter_pred_w16out_ft ihevc_inter_pred_chroma_vert_w16out_neonintr;
315ihevc_inter_pred_w16inp_ft ihevc_inter_pred_chroma_vert_w16inp_neonintr;
316ihevc_inter_pred_w16inp_w16out_ft ihevc_inter_pred_chroma_vert_w16inp_w16out_neonintr;
317
318/* SSSE31 function declarations */
319ihevc_inter_pred_ft ihevc_inter_pred_luma_copy_ssse3;
320ihevc_inter_pred_ft ihevc_inter_pred_luma_horz_ssse3;
321ihevc_inter_pred_ft ihevc_inter_pred_luma_vert_ssse3;
322ihevc_inter_pred_w16out_ft ihevc_inter_pred_luma_copy_w16out_ssse3;
323ihevc_inter_pred_w16out_ft ihevc_inter_pred_luma_horz_w16out_ssse3;
324ihevc_inter_pred_w16out_ft ihevc_inter_pred_luma_vert_w16out_ssse3;
325ihevc_inter_pred_w16inp_ft ihevc_inter_pred_luma_vert_w16inp_ssse3;
326ihevc_inter_pred_w16inp_w16out_ft ihevc_inter_pred_luma_vert_w16inp_w16out_ssse3;
327ihevc_inter_pred_ft ihevc_inter_pred_chroma_copy_ssse3;
328ihevc_inter_pred_ft ihevc_inter_pred_chroma_horz_ssse3;
329ihevc_inter_pred_ft ihevc_inter_pred_chroma_vert_ssse3;
330ihevc_inter_pred_w16out_ft ihevc_inter_pred_chroma_copy_w16out_ssse3;
331ihevc_inter_pred_w16out_ft ihevc_inter_pred_chroma_horz_w16out_ssse3;
332ihevc_inter_pred_w16out_ft ihevc_inter_pred_chroma_vert_w16out_ssse3;
333ihevc_inter_pred_w16inp_ft ihevc_inter_pred_chroma_vert_w16inp_ssse3;
334ihevc_inter_pred_w16inp_w16out_ft ihevc_inter_pred_chroma_vert_w16inp_w16out_ssse3;
335
336/* SSE42 function declarations */
337ihevc_inter_pred_w16out_ft ihevc_inter_pred_luma_copy_w16out_sse42;
338ihevc_inter_pred_ft ihevc_inter_pred_chroma_copy_sse42;
339ihevc_inter_pred_w16out_ft ihevc_inter_pred_chroma_copy_w16out_sse42;
340
341ihevc_hbd_inter_pred_ft ihevc_hbd_inter_pred_luma_copy_sse42;
342ihevc_hbd_inter_pred_ft ihevc_hbd_inter_pred_luma_horz_sse42;
343ihevc_hbd_inter_pred_ft ihevc_hbd_inter_pred_luma_vert_sse42;
344ihevc_hbd_inter_pred_w16out_ft ihevc_hbd_inter_pred_luma_copy_w16out_sse42;
345ihevc_hbd_inter_pred_w16out_ft ihevc_hbd_inter_pred_luma_horz_w16out_sse42;
346ihevc_hbd_inter_pred_w16out_ft ihevc_hbd_inter_pred_luma_vert_w16out_sse42;
347ihevc_hbd_inter_pred_w16inp_ft ihevc_hbd_inter_pred_luma_vert_w16inp_sse42;
348ihevc_hbd_inter_pred_w16inp_w16out_ft ihevc_hbd_inter_pred_luma_vert_w16inp_w16out_sse42;
349
350ihevc_hbd_inter_pred_ft ihevc_hbd_inter_pred_chroma_copy_sse42;
351ihevc_hbd_inter_pred_ft ihevc_hbd_inter_pred_chroma_horz_sse42;
352ihevc_hbd_inter_pred_ft ihevc_hbd_inter_pred_chroma_vert_sse42;
353ihevc_hbd_inter_pred_w16out_ft ihevc_hbd_inter_pred_chroma_copy_w16out_sse42;
354ihevc_hbd_inter_pred_w16out_ft ihevc_hbd_inter_pred_chroma_horz_w16out_sse42;
355ihevc_hbd_inter_pred_w16out_ft ihevc_hbd_inter_pred_chroma_vert_w16out_sse42;
356ihevc_hbd_inter_pred_w16inp_ft ihevc_hbd_inter_pred_chroma_vert_w16inp_sse42;
357ihevc_hbd_inter_pred_w16inp_w16out_ft ihevc_hbd_inter_pred_chroma_vert_w16inp_w16out_sse42;
358
359ihevc_hbd_weighted_pred_uni_ft ihevc_hbd_weighted_pred_uni_sse42;
360ihevc_hbd_weighted_pred_bi_ft ihevc_hbd_weighted_pred_bi_sse42;
361ihevc_hbd_weighted_pred_bi_default_ft ihevc_hbd_weighted_pred_bi_default_sse42;
362ihevc_hbd_weighted_pred_chroma_uni_ft ihevc_hbd_weighted_pred_chroma_uni_sse42;
363ihevc_hbd_weighted_pred_chroma_bi_ft ihevc_hbd_weighted_pred_chroma_bi_sse42;
364ihevc_hbd_weighted_pred_chroma_bi_default_ft ihevc_hbd_weighted_pred_chroma_bi_default_sse42;
365
366#ifndef DISABLE_AVX2
367/* AVX2 function declarations */
368ihevc_inter_pred_ft ihevc_inter_pred_luma_copy_avx2;
369ihevc_inter_pred_ft ihevc_inter_pred_luma_horz_avx2;
370ihevc_inter_pred_ft ihevc_inter_pred_luma_vert_avx2;
371ihevc_inter_pred_w16out_ft ihevc_inter_pred_luma_copy_w16out_avx2;
372ihevc_inter_pred_w16out_ft ihevc_inter_pred_luma_horz_w16out_avx2;
373ihevc_inter_pred_w16out_ft ihevc_inter_pred_luma_vert_w16out_avx2;
374ihevc_inter_pred_w16inp_ft ihevc_inter_pred_luma_vert_w16inp_avx2;
375ihevc_inter_pred_w16inp_w16out_ft ihevc_inter_pred_luma_vert_w16inp_w16out_avx2;
376ihevc_inter_pred_ft ihevc_inter_pred_chroma_copy_avx2;
377ihevc_inter_pred_ft ihevc_inter_pred_chroma_horz_avx2;
378ihevc_inter_pred_ft ihevc_inter_pred_chroma_vert_avx2;
379ihevc_inter_pred_w16out_ft ihevc_inter_pred_chroma_copy_w16out_avx2;
380ihevc_inter_pred_w16out_ft ihevc_inter_pred_chroma_horz_w16out_avx2;
381ihevc_inter_pred_w16out_ft ihevc_inter_pred_chroma_vert_w16out_avx2;
382ihevc_inter_pred_w16inp_ft ihevc_inter_pred_chroma_vert_w16inp_avx2;
383ihevc_inter_pred_w16inp_w16out_ft ihevc_inter_pred_chroma_vert_w16inp_w16out_avx2;
384#endif
385
386/* armv8 function declarations */
387ihevc_inter_pred_ft ihevc_inter_pred_luma_copy_av8;
388ihevc_inter_pred_ft ihevc_inter_pred_luma_horz_av8;
389ihevc_inter_pred_ft ihevc_inter_pred_luma_vert_av8;
390ihevc_inter_pred_w16out_ft ihevc_inter_pred_luma_copy_w16out_av8;
391ihevc_inter_pred_w16out_ft ihevc_inter_pred_luma_horz_w16out_av8;
392ihevc_inter_pred_w16out_ft ihevc_inter_pred_luma_vert_w16out_av8;
393ihevc_inter_pred_w16inp_ft ihevc_inter_pred_luma_vert_w16inp_av8;
394ihevc_inter_pred_w16inp_w16out_ft ihevc_inter_pred_luma_vert_w16inp_w16out_av8;
395ihevc_inter_pred_ft ihevc_inter_pred_chroma_copy_av8;
396ihevc_inter_pred_ft ihevc_inter_pred_chroma_horz_av8;
397ihevc_inter_pred_ft ihevc_inter_pred_chroma_vert_av8;
398ihevc_inter_pred_w16out_ft ihevc_inter_pred_chroma_copy_w16out_av8;
399ihevc_inter_pred_w16out_ft ihevc_inter_pred_chroma_horz_w16out_av8;
400ihevc_inter_pred_w16out_ft ihevc_inter_pred_chroma_vert_w16out_av8;
401ihevc_inter_pred_w16inp_ft ihevc_inter_pred_chroma_vert_w16inp_av8;
402ihevc_inter_pred_w16inp_w16out_ft ihevc_inter_pred_chroma_vert_w16inp_w16out_av8;
403#endif /*_IHEVC_INTER_PRED_H_*/
404