78 |
10, 11, 11, 11, 11, 11, 11, 12, |
10, 11, 11, 11, 11, 11, 11, 12, |
79 |
12, 12, 12, 12, 12, 12, 12, 12, |
12, 12, 12, 12, 12, 12, 12, 12, |
80 |
12, 12, 12, 12, 12, 12, 12, 12, |
12, 12, 12, 12, 12, 12, 12, 12, |
81 |
12, 12, 12, 12, 12, 12, 12, 12, 12 |
12, 12, 12, 12, 12, 12, 12, 12, |
82 |
}; |
}; |
83 |
|
|
84 |
static __inline uint32_t |
static __inline uint32_t |
133 |
pMB->mvs[0] = pMB->mvs[1] = pMB->mvs[2] = pMB->mvs[3] = zeroMV; |
pMB->mvs[0] = pMB->mvs[1] = pMB->mvs[2] = pMB->mvs[3] = zeroMV; |
134 |
pMB->qmvs[0] = pMB->qmvs[1] = pMB->qmvs[2] = pMB->qmvs[3] = zeroMV; |
pMB->qmvs[0] = pMB->qmvs[1] = pMB->qmvs[2] = pMB->qmvs[3] = zeroMV; |
135 |
pMB->sad16 = pMB->sad8[0] = pMB->sad8[1] = pMB->sad8[2] = pMB->sad8[3] = sad; |
pMB->sad16 = pMB->sad8[0] = pMB->sad8[1] = pMB->sad8[2] = pMB->sad8[3] = sad; |
136 |
|
pMB->mcsel = 0; |
137 |
} |
} |
138 |
|
|
139 |
/* check if given vector is equal to any vector checked before */ |
/* check if given vector is equal to any vector checked before */ |
140 |
static __inline int |
static __inline int |
141 |
vector_repeats(const VECTOR * const pmv, const int i) |
vector_repeats(const VECTOR * const pmv, const unsigned int i) |
142 |
{ |
{ |
143 |
unsigned int j; |
unsigned int j; |
144 |
for (j = 0; j < i; j++) |
for (j = 0; j < i; j++) |
149 |
/* make a binary mask that prevents diamonds/squares |
/* make a binary mask that prevents diamonds/squares |
150 |
from checking a vector which has been checked as a prediction */ |
from checking a vector which has been checked as a prediction */ |
151 |
static __inline int |
static __inline int |
152 |
make_mask(const VECTOR * const pmv, const int i, const int current) |
make_mask(const VECTOR * const pmv, const unsigned int i, const unsigned int current) |
153 |
{ |
{ |
154 |
unsigned int mask = 255, j; |
unsigned int mask = 255, j; |
155 |
for (j = 0; j < i; j++) { |
for (j = 0; j < i; j++) { |