xref: /aosp_15_r20/external/libavc/decoder/svc/isvcd_parse_cavlc.h (revision 495ae853bb871d1e5a258cb02c2cc13cde8ddb9a)
1 /******************************************************************************
2  *
3  * Copyright (C) 2022 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  *  isvcd_parse_cavlc.h
24  *
25  * @brief
26  *  Declaration of UVLC and CAVLC functions
27  *
28  * @author
29  *  Kishore
30  *
31  * @remarks
32  *  None
33  *
34  *******************************************************************************
35  */
36 
37 #ifndef _ISVCD_PARSE_CAVLC_H_
38 #define _ISVCD_PARSE_CAVLC_H_
39 
40 #include "ih264_typedefs.h"
41 #include "ih264_macros.h"
42 #include "ih264_platform_macros.h"
43 #include "ih264d_bitstrm.h"
44 #include "isvcd_structs.h"
45 #include "ih264d_cabac.h"
46 
47 void isvcd_parse_bmb_ref_index_cavlc_range1(UWORD32 u4_num_part, dec_bit_stream_t *ps_bitstrm,
48                                             WORD8 *pi1_ref_idx,
49                                             UWORD32 u4_num_ref_idx_active_minus1,
50                                             UWORD8 *pu1_motion_prediction_flag);
51 
52 WORD32 isvcd_parse_bmb_ref_index_cavlc(UWORD32 u4_num_part, dec_bit_stream_t *ps_bitstrm,
53                                        WORD8 *pi1_ref_idx, UWORD32 u4_num_ref_idx_active_minus1,
54                                        UWORD8 *pu1_motion_prediction_flag);
55 
56 WORD32 isvcd_parse_pmb_ref_index_cavlc(UWORD32 u4_num_part, dec_bit_stream_t *ps_bitstrm,
57                                        WORD8 *pi1_ref_idx, UWORD32 u4_num_ref_idx_active_minus1,
58                                        UWORD8 *pu1_motion_prediction_flag);
59 
60 void isvcd_parse_pmb_ref_index_cavlc_range1(UWORD32 u4_num_part, dec_bit_stream_t *ps_bitstrm,
61                                             WORD8 *pi1_ref_idx,
62                                             UWORD32 u4_num_ref_idx_active_minus1,
63                                             UWORD8 *pu1_motion_prediction_flag);
64 
65 #endif /*_ISVCD_PARSE_CAVLC_H_ */