1*495ae853SAndroid Build Coastguard Worker /****************************************************************************** 2*495ae853SAndroid Build Coastguard Worker * 3*495ae853SAndroid Build Coastguard Worker * Copyright (C) 2015 The Android Open Source Project 4*495ae853SAndroid Build Coastguard Worker * 5*495ae853SAndroid Build Coastguard Worker * Licensed under the Apache License, Version 2.0 (the "License"); 6*495ae853SAndroid Build Coastguard Worker * you may not use this file except in compliance with the License. 7*495ae853SAndroid Build Coastguard Worker * You may obtain a copy of the License at: 8*495ae853SAndroid Build Coastguard Worker * 9*495ae853SAndroid Build Coastguard Worker * http://www.apache.org/licenses/LICENSE-2.0 10*495ae853SAndroid Build Coastguard Worker * 11*495ae853SAndroid Build Coastguard Worker * Unless required by applicable law or agreed to in writing, software 12*495ae853SAndroid Build Coastguard Worker * distributed under the License is distributed on an "AS IS" BASIS, 13*495ae853SAndroid Build Coastguard Worker * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14*495ae853SAndroid Build Coastguard Worker * See the License for the specific language governing permissions and 15*495ae853SAndroid Build Coastguard Worker * limitations under the License. 16*495ae853SAndroid Build Coastguard Worker * 17*495ae853SAndroid Build Coastguard Worker ***************************************************************************** 18*495ae853SAndroid Build Coastguard Worker * Originally developed and contributed by Ittiam Systems Pvt. Ltd, Bangalore 19*495ae853SAndroid Build Coastguard Worker */ 20*495ae853SAndroid Build Coastguard Worker 21*495ae853SAndroid Build Coastguard Worker /*! 22*495ae853SAndroid Build Coastguard Worker ************************************************************************** 23*495ae853SAndroid Build Coastguard Worker * \file ih264d_parse_islice.h 24*495ae853SAndroid Build Coastguard Worker * 25*495ae853SAndroid Build Coastguard Worker * \brief 26*495ae853SAndroid Build Coastguard Worker * Contains routines that decode a I slice type 27*495ae853SAndroid Build Coastguard Worker * 28*495ae853SAndroid Build Coastguard Worker * Detailed_description 29*495ae853SAndroid Build Coastguard Worker * 30*495ae853SAndroid Build Coastguard Worker * \date 31*495ae853SAndroid Build Coastguard Worker * 07/07/2003 32*495ae853SAndroid Build Coastguard Worker * 33*495ae853SAndroid Build Coastguard Worker * \author NS 34*495ae853SAndroid Build Coastguard Worker ************************************************************************** 35*495ae853SAndroid Build Coastguard Worker */ 36*495ae853SAndroid Build Coastguard Worker 37*495ae853SAndroid Build Coastguard Worker #ifndef _IH264D_PARSE_ISLICE_H_ 38*495ae853SAndroid Build Coastguard Worker #define _IH264D_PARSE_ISLICE_H_ 39*495ae853SAndroid Build Coastguard Worker 40*495ae853SAndroid Build Coastguard Worker #include "ih264_typedefs.h" 41*495ae853SAndroid Build Coastguard Worker #include "ih264_macros.h" 42*495ae853SAndroid Build Coastguard Worker #include "ih264_platform_macros.h" 43*495ae853SAndroid Build Coastguard Worker #include "ih264d_tables.h" 44*495ae853SAndroid Build Coastguard Worker 45*495ae853SAndroid Build Coastguard Worker WORD32 ih264d_parse_residual4x4_cavlc(dec_struct_t * ps_dec, 46*495ae853SAndroid Build Coastguard Worker dec_mb_info_t *ps_cur_mb_info, 47*495ae853SAndroid Build Coastguard Worker UWORD8 u1_offset); 48*495ae853SAndroid Build Coastguard Worker WORD32 ih264d_parse_residual4x4_cabac(dec_struct_t * ps_dec, 49*495ae853SAndroid Build Coastguard Worker dec_mb_info_t *ps_cur_mb_info, 50*495ae853SAndroid Build Coastguard Worker UWORD8 u1_offset); 51*495ae853SAndroid Build Coastguard Worker WORD32 ih264d_parse_imb_cavlc(dec_struct_t * ps_dec, 52*495ae853SAndroid Build Coastguard Worker dec_mb_info_t * ps_cur_mb_info, 53*495ae853SAndroid Build Coastguard Worker UWORD8 u1_mb_num, 54*495ae853SAndroid Build Coastguard Worker UWORD8 u1_mb_type); 55*495ae853SAndroid Build Coastguard Worker WORD32 ih264d_parse_imb_cabac(dec_struct_t * ps_dec, 56*495ae853SAndroid Build Coastguard Worker dec_mb_info_t * ps_cur_mb_info, 57*495ae853SAndroid Build Coastguard Worker UWORD8 u1_mb_type); 58*495ae853SAndroid Build Coastguard Worker 59*495ae853SAndroid Build Coastguard Worker WORD32 ih264d_parse_islice_data_cavlc(dec_struct_t * ps_dec, 60*495ae853SAndroid Build Coastguard Worker dec_slice_params_t * ps_slice, 61*495ae853SAndroid Build Coastguard Worker UWORD16 u2_first_mb_in_slice); 62*495ae853SAndroid Build Coastguard Worker WORD32 ih264d_parse_islice_data_cabac(dec_struct_t * ps_dec, 63*495ae853SAndroid Build Coastguard Worker dec_slice_params_t * ps_slice, 64*495ae853SAndroid Build Coastguard Worker UWORD16 u2_first_mb_in_slice); 65*495ae853SAndroid Build Coastguard Worker WORD32 ih264d_parse_pmb_cavlc(dec_struct_t * ps_dec, 66*495ae853SAndroid Build Coastguard Worker dec_mb_info_t * ps_cur_mb_info, 67*495ae853SAndroid Build Coastguard Worker UWORD8 u1_mb_num, 68*495ae853SAndroid Build Coastguard Worker UWORD8 u1_num_mbsNby2); 69*495ae853SAndroid Build Coastguard Worker WORD32 ih264d_parse_pmb_cabac(dec_struct_t * ps_dec, 70*495ae853SAndroid Build Coastguard Worker dec_mb_info_t * ps_cur_mb_info, 71*495ae853SAndroid Build Coastguard Worker UWORD8 u1_mb_num, 72*495ae853SAndroid Build Coastguard Worker UWORD8 u1_num_mbsNby2); 73*495ae853SAndroid Build Coastguard Worker 74*495ae853SAndroid Build Coastguard Worker WORD32 ih264d_parse_bmb_non_direct_cavlc(dec_struct_t * ps_dec, 75*495ae853SAndroid Build Coastguard Worker dec_mb_info_t * ps_cur_mb_info, 76*495ae853SAndroid Build Coastguard Worker UWORD8 u1_mb_num, 77*495ae853SAndroid Build Coastguard Worker UWORD8 u1_mbNumModNBy2); 78*495ae853SAndroid Build Coastguard Worker 79*495ae853SAndroid Build Coastguard Worker WORD32 ih264d_parse_bmb_non_direct_cabac(dec_struct_t * ps_dec, 80*495ae853SAndroid Build Coastguard Worker dec_mb_info_t * ps_cur_mb_info, 81*495ae853SAndroid Build Coastguard Worker UWORD8 u1_mb_num, 82*495ae853SAndroid Build Coastguard Worker UWORD8 u1_mbNumModNBy2); 83*495ae853SAndroid Build Coastguard Worker 84*495ae853SAndroid Build Coastguard Worker WORD32 ih264d_parse_bmb_cavlc(dec_struct_t * ps_dec, 85*495ae853SAndroid Build Coastguard Worker dec_mb_info_t * ps_cur_mb_info, 86*495ae853SAndroid Build Coastguard Worker UWORD8 u1_mb_num, 87*495ae853SAndroid Build Coastguard Worker UWORD8 u1_num_mbsNby2); 88*495ae853SAndroid Build Coastguard Worker 89*495ae853SAndroid Build Coastguard Worker WORD32 ih264d_parse_bmb_cabac(dec_struct_t * ps_dec, 90*495ae853SAndroid Build Coastguard Worker dec_mb_info_t * ps_cur_mb_info, 91*495ae853SAndroid Build Coastguard Worker UWORD8 u1_mb_num, 92*495ae853SAndroid Build Coastguard Worker UWORD8 u1_num_mbsNby2); 93*495ae853SAndroid Build Coastguard Worker 94*495ae853SAndroid Build Coastguard Worker WORD32 ih264d_parse_inter_slice_data_cavlc(dec_struct_t * ps_dec, 95*495ae853SAndroid Build Coastguard Worker dec_slice_params_t * ps_slice, 96*495ae853SAndroid Build Coastguard Worker UWORD16 u2_first_mb_in_slice); 97*495ae853SAndroid Build Coastguard Worker 98*495ae853SAndroid Build Coastguard Worker WORD32 ih264d_parse_inter_slice_data_cabac(dec_struct_t * ps_dec, 99*495ae853SAndroid Build Coastguard Worker dec_slice_params_t * ps_slice, 100*495ae853SAndroid Build Coastguard Worker UWORD16 u2_first_mb_in_slice); 101*495ae853SAndroid Build Coastguard Worker 102*495ae853SAndroid Build Coastguard Worker WORD32 ParseBMb(dec_struct_t * ps_dec, 103*495ae853SAndroid Build Coastguard Worker dec_mb_info_t * ps_cur_mb_info, 104*495ae853SAndroid Build Coastguard Worker UWORD8 u1_mb_num, 105*495ae853SAndroid Build Coastguard Worker UWORD8 u1_num_mbsNby2); 106*495ae853SAndroid Build Coastguard Worker 107*495ae853SAndroid Build Coastguard Worker WORD32 ih264d_parse_ipcm_mb(dec_struct_t * ps_dec, 108*495ae853SAndroid Build Coastguard Worker dec_mb_info_t *ps_cur_mb_info, 109*495ae853SAndroid Build Coastguard Worker UWORD8 u1_mbNum); 110*495ae853SAndroid Build Coastguard Worker WORD32 ih264d_parse_islice(dec_struct_t *ps_dec, 111*495ae853SAndroid Build Coastguard Worker UWORD16 u2_first_mb_in_slice); 112*495ae853SAndroid Build Coastguard Worker 113*495ae853SAndroid Build Coastguard Worker #endif /* _IH264D_PARSE_ISLICE_H_ */ 114