Allocate slice's MB cache buffer
| 770 | |
| 771 | //Allocate slice's MB cache buffer |
| 772 | int32_t AllocMbCacheAligned (SMbCache* pMbCache, CMemoryAlign* pMa) { |
| 773 | pMbCache->pMemPredMb = (uint8_t*)pMa->WelsMallocz (2 * 256 * sizeof (uint8_t), "pMbCache->pMemPredMb"); |
| 774 | WELS_VERIFY_RETURN_IF (1, (NULL == pMbCache->pMemPredMb)); |
| 775 | |
| 776 | pMbCache->pCoeffLevel = (int16_t*)pMa->WelsMallocz (MB_COEFF_LIST_SIZE * sizeof (int16_t), "pMbCache->pCoeffLevel"); |
| 777 | WELS_VERIFY_RETURN_IF (1, (NULL == pMbCache->pCoeffLevel)); |
| 778 | pMbCache->pSkipMb = (uint8_t*)pMa->WelsMallocz (384 * sizeof (uint8_t), "pMbCache->pSkipMb"); |
| 779 | WELS_VERIFY_RETURN_IF (1, (NULL == pMbCache->pSkipMb)); |
| 780 | pMbCache->pMemPredBlk4 = (uint8_t*)pMa->WelsMallocz (2 * 16 * sizeof (uint8_t), "pMbCache->pMemPredBlk4"); |
| 781 | WELS_VERIFY_RETURN_IF (1, (NULL == pMbCache->pMemPredBlk4)); |
| 782 | pMbCache->pBufferInterPredMe = (uint8_t*)pMa->WelsMallocz (4 * 640 * sizeof (uint8_t), "pMbCache->pBufferInterPredMe"); |
| 783 | WELS_VERIFY_RETURN_IF (1, (NULL == pMbCache->pBufferInterPredMe)); |
| 784 | pMbCache->pPrevIntra4x4PredModeFlag = (bool*)pMa->WelsMallocz (16 * sizeof (bool), |
| 785 | "pMbCache->pPrevIntra4x4PredModeFlag"); |
| 786 | WELS_VERIFY_RETURN_IF (1, (NULL == pMbCache->pPrevIntra4x4PredModeFlag)); |
| 787 | pMbCache->pRemIntra4x4PredModeFlag = (int8_t*)pMa->WelsMallocz (16 * sizeof (int8_t), |
| 788 | "pMbCache->pRemIntra4x4PredModeFlag"); |
| 789 | WELS_VERIFY_RETURN_IF (1, (NULL == pMbCache->pRemIntra4x4PredModeFlag)); |
| 790 | pMbCache->pDct = (SDCTCoeff*)pMa->WelsMallocz (sizeof (SDCTCoeff), "pMbCache->pDct"); |
| 791 | WELS_VERIFY_RETURN_IF (1, (NULL == pMbCache->pDct)); |
| 792 | |
| 793 | return 0; |
| 794 | } |
| 795 | |
| 796 | // Free slice's MB cache buffer |
| 797 | void FreeMbCache (SMbCache* pMbCache, CMemoryAlign* pMa) { |
no test coverage detected