64,558
社区成员
发帖
与我相关
我的任务
分享
for (y = 0; y < height/2; y++)
{
for (x = 0; x < width/2; x++)
{
dst->data[2][x] = src[1][2*x+0];
dst->data[1][x] = src[1][2*x+1];
}
src[1] += src_pitch[1];
dst->data[2] += dst->linesize[2];
dst->data[1] += dst->linesize[1];
}
for (y = 0; y < height/2; y++)
{
/*
for (x = 0; x < width/2; x++)
{
dst->data[2][x] = src[1][2*x+0];
dst->data[1][x] = src[1][2*x+1];
}
*/
memcpy(&dst->data[2][0], &src[1][0], sizeof(src[1][0]) * (width/2 + 1));
memcpy(&dst->data[1][0], &src[1][1], sizeof(src[1][1]) * (width/2 + 1));
src[1] += src_pitch[1];
dst->data[2] += dst->linesize[2];
dst->data[1] += dst->linesize[1];
}
这样也达不到要求的话,考虑多线程吧