/****************************************************************************
* 16x16 prediction for intra luma block
****************************************************************************/
//! p指向32位无符号整型变量,即src(像素起始位置),指针加1后移32位,即4个字节,实现每个赋值语句
//! 同时给4个像素赋值,每个循环供给16个像素赋值
#define PREDICT_16x16_DC(v) \
for( i = 0; i < 16; i++ )\
{\
uint32_t *p = (uint32_t*)src;\
*p++ = v;\
*p++ = v;\
*p++ = v;\
*p++ = v;\
src += FDEC_STRIDE;\
}
static void predict_16x16_dc( uint8_t *src ) //!< 模式2(V和H存在的情况)
{
uint32_t dc = 0; //!< 32位无符号整型
int i;
for( i = 0; i < 16; i++ )
{
dc += src[-1 + i * FDEC_STRIDE]; //!< 当前宏块第i行的左邻点像素值 V
dc += src[i - FDEC_STRIDE]; //!< 当前宏块第1行的第i个上邻点像素值 H
} //!< V + H
dc = (( dc
x264中16x16帧内预测模式函数分析
最新推荐文章于 2022-11-23 15:52:58 发布