101 |
const uint32_t stride, |
const uint32_t stride, |
102 |
const uint32_t rounding) |
const uint32_t rounding) |
103 |
{ |
{ |
104 |
intptr_t j; |
uintptr_t j; |
105 |
|
|
106 |
if (rounding) |
if (rounding) |
107 |
for (j = 7*stride; j >= 0; j-=stride) |
for (j = 0; j < 8*stride; j+=stride) |
108 |
{ |
{ |
109 |
dst[j + 0] = (uint8_t)((src[j + 0] + src[j + 1] )>>1); |
dst[j + 0] = (uint8_t)((src[j + 0] + src[j + 1] )>>1); |
110 |
dst[j + 1] = (uint8_t)((src[j + 1] + src[j + 2] )>>1); |
dst[j + 1] = (uint8_t)((src[j + 1] + src[j + 2] )>>1); |
137 |
const uint32_t stride, |
const uint32_t stride, |
138 |
const uint32_t rounding) |
const uint32_t rounding) |
139 |
{ |
{ |
140 |
intptr_t j; |
uintptr_t j; |
141 |
|
|
142 |
|
|
143 |
if (rounding) |
if (rounding) |
173 |
const uint32_t stride, |
const uint32_t stride, |
174 |
const uint32_t rounding) |
const uint32_t rounding) |
175 |
{ |
{ |
176 |
intptr_t j; |
uintptr_t j; |
177 |
|
|
178 |
if (rounding) |
if (rounding) |
179 |
for (j = 7*stride; j >= 0; j-=stride) |
for (j = 0; j < 8*stride; j+=stride) |
180 |
{ |
{ |
181 |
dst[j + 0] = (uint8_t)((src[j+0] + src[j+1] + src[j+stride+0] + src[j+stride+1] +1)>>2); |
dst[j + 0] = (uint8_t)((src[j+0] + src[j+1] + src[j+stride+0] + src[j+stride+1] +1)>>2); |
182 |
dst[j + 1] = (uint8_t)((src[j+1] + src[j+2] + src[j+stride+1] + src[j+stride+2] +1)>>2); |
dst[j + 1] = (uint8_t)((src[j+1] + src[j+2] + src[j+stride+1] + src[j+stride+2] +1)>>2); |
188 |
dst[j + 7] = (uint8_t)((src[j+7] + src[j+8] + src[j+stride+7] + src[j+stride+8] +1)>>2); |
dst[j + 7] = (uint8_t)((src[j+7] + src[j+8] + src[j+stride+7] + src[j+stride+8] +1)>>2); |
189 |
} |
} |
190 |
else |
else |
191 |
for (j = 7*stride; j >= 0; j-=stride) |
for (j = 0; j < 8*stride; j+=stride) |
192 |
{ |
{ |
193 |
dst[j + 0] = (uint8_t)((src[j+0] + src[j+1] + src[j+stride+0] + src[j+stride+1] +2)>>2); |
dst[j + 0] = (uint8_t)((src[j+0] + src[j+1] + src[j+stride+0] + src[j+stride+1] +2)>>2); |
194 |
dst[j + 1] = (uint8_t)((src[j+1] + src[j+2] + src[j+stride+1] + src[j+stride+2] +2)>>2); |
dst[j + 1] = (uint8_t)((src[j+1] + src[j+2] + src[j+stride+1] + src[j+stride+2] +2)>>2); |