xref: /aosp_15_r20/external/libhevc/decoder/ihevcd_mv_pred.h (revision c83a76b084498d55f252f48b2e3786804cdf24b7)
1*c83a76b0SSuyog Pawar /******************************************************************************
2*c83a76b0SSuyog Pawar *
3*c83a76b0SSuyog Pawar * Copyright (C) 2012 Ittiam Systems Pvt Ltd, Bangalore
4*c83a76b0SSuyog Pawar *
5*c83a76b0SSuyog Pawar * Licensed under the Apache License, Version 2.0 (the "License");
6*c83a76b0SSuyog Pawar * you may not use this file except in compliance with the License.
7*c83a76b0SSuyog Pawar * You may obtain a copy of the License at:
8*c83a76b0SSuyog Pawar *
9*c83a76b0SSuyog Pawar * http://www.apache.org/licenses/LICENSE-2.0
10*c83a76b0SSuyog Pawar *
11*c83a76b0SSuyog Pawar * Unless required by applicable law or agreed to in writing, software
12*c83a76b0SSuyog Pawar * distributed under the License is distributed on an "AS IS" BASIS,
13*c83a76b0SSuyog Pawar * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14*c83a76b0SSuyog Pawar * See the License for the specific language governing permissions and
15*c83a76b0SSuyog Pawar * limitations under the License.
16*c83a76b0SSuyog Pawar *
17*c83a76b0SSuyog Pawar ******************************************************************************/
18*c83a76b0SSuyog Pawar 
19*c83a76b0SSuyog Pawar /**
20*c83a76b0SSuyog Pawar  *******************************************************************************
21*c83a76b0SSuyog Pawar  * @file
22*c83a76b0SSuyog Pawar  *  ihevcd_structs.h
23*c83a76b0SSuyog Pawar  *
24*c83a76b0SSuyog Pawar  * @brief
25*c83a76b0SSuyog Pawar  *  Structure definitions used in the decoder
26*c83a76b0SSuyog Pawar  *
27*c83a76b0SSuyog Pawar  * @author
28*c83a76b0SSuyog Pawar  *  Harish
29*c83a76b0SSuyog Pawar  *
30*c83a76b0SSuyog Pawar  * @par List of Functions:
31*c83a76b0SSuyog Pawar  *
32*c83a76b0SSuyog Pawar  * @remarks
33*c83a76b0SSuyog Pawar  *  None
34*c83a76b0SSuyog Pawar  *
35*c83a76b0SSuyog Pawar  *******************************************************************************
36*c83a76b0SSuyog Pawar  */
37*c83a76b0SSuyog Pawar 
38*c83a76b0SSuyog Pawar #ifndef IHEVCD_MV_PRED_H_
39*c83a76b0SSuyog Pawar #define IHEVCD_MV_PRED_H_
40*c83a76b0SSuyog Pawar void ihevcd_mv_pred(mv_ctxt_t *ps_mv_ctxt,
41*c83a76b0SSuyog Pawar                     UWORD32 *pu4_top_pu_idx,
42*c83a76b0SSuyog Pawar                     UWORD32 *pu4_left_pu_idx,
43*c83a76b0SSuyog Pawar                     UWORD32 *pu4_top_left_pu_idx,
44*c83a76b0SSuyog Pawar                     WORD32 left_nbr_4x4_strd,
45*c83a76b0SSuyog Pawar                     pu_t *ps_pu,
46*c83a76b0SSuyog Pawar                     WORD32 lb_avail,
47*c83a76b0SSuyog Pawar                     WORD32 l_avail,
48*c83a76b0SSuyog Pawar                     WORD32 tr_avail,
49*c83a76b0SSuyog Pawar                     WORD32 t_avail,
50*c83a76b0SSuyog Pawar                     WORD32 tl_avail,
51*c83a76b0SSuyog Pawar                     pu_mv_t *ps_pred_mv);
52*c83a76b0SSuyog Pawar void ihevcd_scale_mv(mv_t *ps_mv,
53*c83a76b0SSuyog Pawar                      WORD32 cur_ref_poc,
54*c83a76b0SSuyog Pawar                      WORD32 nbr_ref_poc,
55*c83a76b0SSuyog Pawar                      WORD32 cur_poc);
56*c83a76b0SSuyog Pawar 
57*c83a76b0SSuyog Pawar 
58*c83a76b0SSuyog Pawar #endif /* IHEVCD_MV_PRED_H_ */
59