/*! *********************************************************************** * \brief * Free Q matrix arrays *********************************************************************** */ void free_QOffsets (QuantParameters *p_Quant, InputParameters *p_Inp) { free_mem3Dshort(p_Quant->OffsetList8x8); free_mem3Dshort(p_Quant->OffsetList4x4); free_mem2Dshort(p_Quant->OffsetList8x8input); free_mem2Dshort(p_Quant->OffsetList4x4input); }
/*! *********************************************************************** * \brief * Free Q matrix arrays *********************************************************************** */ void free_QOffsets () { int max_qp_per_luma = (3 + 6*(input->BitDepthLuma) - MIN_QP)/6 + 1; int max_qp_per_cr = (3 + 6*(input->BitDepthChroma) - MIN_QP)/6 + 1; int max_qp_per = imax(max_qp_per_luma,max_qp_per_cr); free_mem4Dint(LevelOffset4x4Luma, 2, max_qp_per); free_mem5Dint(LevelOffset4x4Chroma, 2, 2, max_qp_per); free_mem4Dint(LevelOffset8x8Luma, 2, max_qp_per); free_mem2Dshort(OffsetList8x8); free_mem2Dshort(OffsetList4x4); free_mem2Dshort(OffsetList8x8input); free_mem2Dshort(OffsetList4x4input); }
/*! *********************************************************************** * \brief * Free Q matrix arrays *********************************************************************** */ void free_QOffsets () { free_mem5Dint(LevelOffset4x4Comp); free_mem5Dint(LevelOffset8x8Comp); if (params->AdaptRoundingFixed) { free_mem3Dshort(OffsetList8x8); free_mem3Dshort(OffsetList4x4); } else { free_mem3Dshort(OffsetList8x8); free_mem3Dshort(OffsetList4x4); } free_mem2Dshort(OffsetList8x8input); free_mem2Dshort(OffsetList4x4input); }
/*! ************************************************************************ * \brief * free 3D short memory array * which was allocated with get_mem3Dshort() ************************************************************************ */ void free_mem3Dshort(short ***array3D, int frames) { int i; if (array3D) { for (i=0;i<frames;i++) { free_mem2Dshort(array3D[i]); } free (array3D); } else { error ("free_mem3Dshort: trying to free unused memory",100); } }
/*! ************************************************************************ * \brief * free 3D short memory array * which was allocated with get_mem3Dshort() *----------------------------------------------------------------------- * Function Argument List Changed [Removing Global Variables] * Input parameters added are * - h264_decoder* dec_params * * <*****@*****.**> ************************************************************************ */ void free_mem3Dshort(short ***array3D, int frames) { int i; if (array3D) { for (i=0;i<frames;i++) { free_mem2Dshort(array3D[i]); } h264_free (array3D); } else { printf("free_mem3Dshort: trying to free unused memory"); exit(0); } }