18d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/****************************************************************************** 28d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S * 38d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S * Copyright (C) 2015 The Android Open Source Project 48d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S * 58d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S * Licensed under the Apache License, Version 2.0 (the "License"); 68d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S * you may not use this file except in compliance with the License. 78d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S * You may obtain a copy of the License at: 88d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S * 98d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S * http://www.apache.org/licenses/LICENSE-2.0 108d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S * 118d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S * Unless required by applicable law or agreed to in writing, software 128d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S * distributed under the License is distributed on an "AS IS" BASIS, 138d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 148d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S * See the License for the specific language governing permissions and 158d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S * limitations under the License. 168d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S * 178d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ***************************************************************************** 188d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S * Originally developed and contributed by Ittiam Systems Pvt. Ltd, Bangalore 198d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S*/ 208d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#ifndef _IH264D_DEBUG_H_ 218d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#define _IH264D_DEBUG_H_ 228d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 238d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*! 248d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ************************************************************************** 258d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S * \file ih264d_debug.h 268d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S * 278d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S * \brief 288d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S * Contains declarations used for debugging 298d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S * 308d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S * \date 318d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S * 2/12/2002 328d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S * 338d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S * \author AI 348d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ************************************************************************** 358d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S */ 368d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#ifdef DEBUG_DEC 378d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#define H264_DEC_DEBUG_PRINT(...) printf("\n[H264_DEBUG] %s/%d:: ", __FUNCTION__, __LINE__);printf(__VA_ARGS__) 388d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#else //DEBUG_DEC 398d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#define H264_DEC_DEBUG_PRINT(...) {} 408d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#endif //DEBUG_DEC 418d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#define STRENGTH_DEBLOCKING 0 //sanjeev 428d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#define DEBUG_RECONSTRUCT_LUMA 0 438d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#define DEBUG_RECONSTRUCT_CHROMA 0 448d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 458d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#define DEBUG_IDCT 0 468d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#define DEBUG_LUMA_IDCT 0 478d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#define DEBUG_REF_IDCT 0 488d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 498d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#define BIN_BIT_RATIO 0 508d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#define MB_PART_HIST 0 518d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 528d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#define MB_INTRA_PREDICTION 1 538d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 548d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#ifdef WIN32 558d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#define CHK_PURIFY 0 568d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#else 578d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#define CHK_PURIFY 0 588d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#endif 598d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 608d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#if MB_INTRA_PREDICTION 618d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#define MB_INTRA_CHROMA_PREDICTION_ON 1 628d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#define MB_INTRA_4x4_PREDICTION_ON 1 638d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#define MB_INTRA_16x16_PREDICTION_ON 1 648d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#endif 658d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 668d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#define TRACE 0 678d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#define DEBUG_CABAC 0 688d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#define DEBUG_ABS_MVD 0 698d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#define DEBUG_INTRA_PRED_MODES 0 708d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#define DEBUG_DEBLOCKING 0 718d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 728d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#define COPYTHECONTEXT(s,val) 738d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#define PRINT_TRACE 748d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#define PRINT_TRACE_CAB 758d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#define SWITCHOFFTRACE 768d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#define SWITCHONTRACE 778d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#define SWITCHOFFTRACECABAC 788d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#define SWITCHONTRACECABAC 798d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 808d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#define INC_BIN_COUNT(ps_cab_env) 818d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#define INC_DECISION_BINS(ps_cab_env) 828d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#define INC_BYPASS_BINS(ps_cab_env) 838d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#define INC_SYM_COUNT(ps_cab_env) 848d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#define PRINT_BIN_BIT_RATIO(ps_dec) 858d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#define RESET_BIN_COUNTS(ps_cab_env) 868d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 878d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 888d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#ifdef PROFILE_DIS_DEBLK 898d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#define PROFILE_DISABLE_DEBLK() return; 908d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#else 918d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#define PROFILE_DISABLE_DEBLK() ; 928d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#endif 938d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 948d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#ifdef PROFILE_DIS_IQ_IT_RECON 958d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#define PROFILE_DISABLE_IQ_IT_RECON() if (0) 968d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#define PROFILE_DISABLE_IQ_IT_RECON_RETURN() return; 978d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#else 988d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#define PROFILE_DISABLE_IQ_IT_RECON() ; 998d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#define PROFILE_DISABLE_IQ_IT_RECON_RETURN() ; 1008d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#endif 1018d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 1028d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#ifdef PROFILE_DIS_INTRA_PRED 1038d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#define PROFILE_DISABLE_INTRA_PRED() if (0) 1048d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#else 1058d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#define PROFILE_DISABLE_INTRA_PRED() ; 1068d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#endif 1078d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 1088d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#ifdef PROFILE_DIS_UNPACK 1098d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#define PROFILE_DISABLE_UNPACK_LUMA() return 0; 1108d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#define PROFILE_DISABLE_UNPACK_CHROMA() return ; 1118d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#else 1128d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#define PROFILE_DISABLE_UNPACK_LUMA() ; 1138d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#define PROFILE_DISABLE_UNPACK_CHROMA() ; 1148d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#endif 1158d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 1168d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#ifdef PROFILE_DIS_INTER_PRED 1178d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#define PROFILE_DISABLE_INTER_PRED() return; 1188d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#else 1198d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#define PROFILE_DISABLE_INTER_PRED() ; 1208d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#endif 1218d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 1228d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#ifdef PROFILE_DIS_BOUNDARY_STRENGTH 1238d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#define PROFILE_DISABLE_BOUNDARY_STRENGTH() return; 1248d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#else 1258d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#define PROFILE_DISABLE_BOUNDARY_STRENGTH() ; 1268d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#endif 1278d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 1288d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#ifdef PROFILE_DIS_MB_PART_INFO 1298d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#define PROFILE_DISABLE_MB_PART_INFO() return 0; 1308d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#else 1318d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#define PROFILE_DISABLE_MB_PART_INFO() ; 1328d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#endif 1338d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 1348d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#endif /* _IH264D_DEBUG_H_ */ 1358d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 136