📄 umc_avs_dec_decompressor_pred_intra.cpp
字号:
/*
//
// INTEL CORPORATION PROPRIETARY INFORMATION
// This software is supplied under the terms of a license agreement or
// nondisclosure agreement with Intel Corporation and may not be copied
// or disclosed except in accordance with the terms of that agreement.
// Copyright (c) 2007 Intel Corporation. All Rights Reserved.
//
//
*/
#include "umc_defs.h"
#if defined(UMC_ENABLE_AVS_VIDEO_DECODER)
#include "umc_avs_dec_decompressor.h"
#include "umc_avs_dec_mb_info.h"
namespace UMC
{
void AVSDecompressor::SpecifyIntraPredModeISlice(AVS_MB_INFO *pLeft,
AVS_MB_INFO *pTop,
Ipp32s iBlockNum)
{
IppIntra8x8PredMode_H264 predIntraPredMode;
// obtain prediction modes from neighbours
if ((pLeft) && (pTop))
{
IppIntra8x8PredMode_H264 intraPredModeA, intraPredModeB;
intraPredModeA = pLeft->IntraLumaPredMode[iBlockNum ^ 1];
intraPredModeB = pTop->IntraLumaPredMode[iBlockNum ^ 2];
predIntraPredMode = IPP_MIN(intraPredModeA, intraPredModeB);
}
else
predIntraPredMode = IPP_8x8_DC;
// calculate prediction mode
if (1 == pred_mode_flag[iBlockNum])
{
m_pMbInfo->IntraLumaPredMode[iBlockNum] = predIntraPredMode;
}
else
{
IppIntra8x8PredMode_H264 predMode;
predMode = (IppIntra8x8PredMode_H264) intra_luma_pred_mode[iBlockNum];
if (predMode < predIntraPredMode)
m_pMbInfo->IntraLumaPredMode[iBlockNum] = predMode;
else
m_pMbInfo->IntraLumaPredMode[iBlockNum] = (IppIntra8x8PredMode_H264) (predMode + 1);
}
} // void AVSDecompressor::SpecifyIntraPredModeISlice(Ipp32s iLeft,
} // namespace UMC
#endif // #if defined(UMC_ENABLE_AVS_VIDEO_DECODER)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -