History

Merge pull request #256 from mstorsjo/bigendian

Make the library work on big endian

Ethan Hugg committed 12 years ago

Commit fbcd9622 parents 914650a cadbec74 files · +41 −34Browse files

Showing the changes to codec/decoder/core/src/deblocking.cpp (1 of 4 files). Show all

Unified · Split

codec/decoder/core/src/deblocking.cpp+15−15
@@ -152,24 +152,24 @@ void_t inline DeblockingBSInsideMBAvsbase (int8_t* pNnzTab, uint8_t nBS[2][4][4] · 151 unmodified lines
152 uiNnz32b2 = * (uint32_t*) (pNnzTab + 8);152 uiNnz32b2 = * (uint32_t*) (pNnzTab + 8);
153 uiNnz32b3 = * (uint32_t*) (pNnzTab + 12);153 uiNnz32b3 = * (uint32_t*) (pNnzTab + 12);
154 154
155 * (uint32_t*)uiBsx3 = (uiNnz32b0 | (uiNnz32b0 >> 8)) << iLShiftFactor;155 * (uint32_t*)uiBsx3 = DEBLOCK_BS_SHIFTED (uiNnz32b0) << iLShiftFactor;
156 nBS[0][1][0] = uiBsx3[0];156 nBS[0][1][0] = uiBsx3[0];
157 nBS[0][2][0] = uiBsx3[1];157 nBS[0][2][0] = uiBsx3[1];
158 nBS[0][3][0] = uiBsx3[2];158 nBS[0][3][0] = uiBsx3[2];
159 159
160 * (uint32_t*)uiBsx3 = (uiNnz32b1 | (uiNnz32b1 >> 8)) << iLShiftFactor;160 * (uint32_t*)uiBsx3 = DEBLOCK_BS_SHIFTED (uiNnz32b1) << iLShiftFactor;
161 nBS[0][1][1] = uiBsx3[0];161 nBS[0][1][1] = uiBsx3[0];
162 nBS[0][2][1] = uiBsx3[1];162 nBS[0][2][1] = uiBsx3[1];
163 nBS[0][3][1] = uiBsx3[2];163 nBS[0][3][1] = uiBsx3[2];
164 * (uint32_t*)nBS[1][1] = (uiNnz32b0 | uiNnz32b1) << iLShiftFactor;164 * (uint32_t*)nBS[1][1] = (uiNnz32b0 | uiNnz32b1) << iLShiftFactor;
165 165
166 * (uint32_t*)uiBsx3 = (uiNnz32b2 | (uiNnz32b2 >> 8)) << iLShiftFactor;166 * (uint32_t*)uiBsx3 = DEBLOCK_BS_SHIFTED (uiNnz32b2) << iLShiftFactor;
167 nBS[0][1][2] = uiBsx3[0];167 nBS[0][1][2] = uiBsx3[0];
168 nBS[0][2][2] = uiBsx3[1];168 nBS[0][2][2] = uiBsx3[1];
169 nBS[0][3][2] = uiBsx3[2];169 nBS[0][3][2] = uiBsx3[2];
170 * (uint32_t*)nBS[1][2] = (uiNnz32b1 | uiNnz32b2) << iLShiftFactor;170 * (uint32_t*)nBS[1][2] = (uiNnz32b1 | uiNnz32b2) << iLShiftFactor;
171 171
172 * (uint32_t*)uiBsx3 = (uiNnz32b3 | (uiNnz32b3 >> 8)) << iLShiftFactor;172 * (uint32_t*)uiBsx3 = DEBLOCK_BS_SHIFTED (uiNnz32b3) << iLShiftFactor;
173 nBS[0][1][3] = uiBsx3[0];173 nBS[0][1][3] = uiBsx3[0];
174 nBS[0][2][3] = uiBsx3[1];174 nBS[0][2][3] = uiBsx3[1];
175 nBS[0][3][3] = uiBsx3[2];175 nBS[0][3][3] = uiBsx3[2];
@@ -188,22 +188,22 @@ void_t static inline DeblockingBSInsideMBNormal (PDqLayer pCurDqLayer, uint8_t n · 12 unmodified lines
188 uiNnz32b2 = * (uint32_t*) (pNnzTab + 8);188 uiNnz32b2 = * (uint32_t*) (pNnzTab + 8);
189 uiNnz32b3 = * (uint32_t*) (pNnzTab + 12);189 uiNnz32b3 = * (uint32_t*) (pNnzTab + 12);
190 190
191 * (uint32_t*)uiBsx4 = (uiNnz32b0 | (uiNnz32b0 >> 8));191 * (uint32_t*)uiBsx4 = DEBLOCK_BS_SHIFTED (uiNnz32b0);
192 nBS[0][1][0] = BS_EDGE (uiBsx4[0], iRefIndex, pCurDqLayer->pMv[LIST_0][iMbXy], 1, 0);192 nBS[0][1][0] = BS_EDGE (uiBsx4[0], iRefIndex, pCurDqLayer->pMv[LIST_0][iMbXy], 1, 0);
193 nBS[0][2][0] = BS_EDGE (uiBsx4[1], iRefIndex, pCurDqLayer->pMv[LIST_0][iMbXy], 2, 1);193 nBS[0][2][0] = BS_EDGE (uiBsx4[1], iRefIndex, pCurDqLayer->pMv[LIST_0][iMbXy], 2, 1);
194 nBS[0][3][0] = BS_EDGE (uiBsx4[2], iRefIndex, pCurDqLayer->pMv[LIST_0][iMbXy], 3, 2);194 nBS[0][3][0] = BS_EDGE (uiBsx4[2], iRefIndex, pCurDqLayer->pMv[LIST_0][iMbXy], 3, 2);
195 195
196 * (uint32_t*)uiBsx4 = (uiNnz32b1 | (uiNnz32b1 >> 8));196 * (uint32_t*)uiBsx4 = DEBLOCK_BS_SHIFTED (uiNnz32b1);
197 nBS[0][1][1] = BS_EDGE (uiBsx4[0], iRefIndex, pCurDqLayer->pMv[LIST_0][iMbXy], 5, 4);197 nBS[0][1][1] = BS_EDGE (uiBsx4[0], iRefIndex, pCurDqLayer->pMv[LIST_0][iMbXy], 5, 4);
198 nBS[0][2][1] = BS_EDGE (uiBsx4[1], iRefIndex, pCurDqLayer->pMv[LIST_0][iMbXy], 6, 5);198 nBS[0][2][1] = BS_EDGE (uiBsx4[1], iRefIndex, pCurDqLayer->pMv[LIST_0][iMbXy], 6, 5);
199 nBS[0][3][1] = BS_EDGE (uiBsx4[2], iRefIndex, pCurDqLayer->pMv[LIST_0][iMbXy], 7, 6);199 nBS[0][3][1] = BS_EDGE (uiBsx4[2], iRefIndex, pCurDqLayer->pMv[LIST_0][iMbXy], 7, 6);
200 200
201 * (uint32_t*)uiBsx4 = (uiNnz32b2 | (uiNnz32b2 >> 8));201 * (uint32_t*)uiBsx4 = DEBLOCK_BS_SHIFTED (uiNnz32b2);
202 nBS[0][1][2] = BS_EDGE (uiBsx4[0], iRefIndex, pCurDqLayer->pMv[LIST_0][iMbXy], 9, 8);202 nBS[0][1][2] = BS_EDGE (uiBsx4[0], iRefIndex, pCurDqLayer->pMv[LIST_0][iMbXy], 9, 8);
203 nBS[0][2][2] = BS_EDGE (uiBsx4[1], iRefIndex, pCurDqLayer->pMv[LIST_0][iMbXy], 10, 9);203 nBS[0][2][2] = BS_EDGE (uiBsx4[1], iRefIndex, pCurDqLayer->pMv[LIST_0][iMbXy], 10, 9);
204 nBS[0][3][2] = BS_EDGE (uiBsx4[2], iRefIndex, pCurDqLayer->pMv[LIST_0][iMbXy], 11, 10);204 nBS[0][3][2] = BS_EDGE (uiBsx4[2], iRefIndex, pCurDqLayer->pMv[LIST_0][iMbXy], 11, 10);
205 205
206 * (uint32_t*)uiBsx4 = (uiNnz32b3 | (uiNnz32b3 >> 8));206 * (uint32_t*)uiBsx4 = DEBLOCK_BS_SHIFTED (uiNnz32b3);
207 nBS[0][1][3] = BS_EDGE (uiBsx4[0], iRefIndex, pCurDqLayer->pMv[LIST_0][iMbXy], 13, 12);207 nBS[0][1][3] = BS_EDGE (uiBsx4[0], iRefIndex, pCurDqLayer->pMv[LIST_0][iMbXy], 13, 12);
208 nBS[0][2][3] = BS_EDGE (uiBsx4[1], iRefIndex, pCurDqLayer->pMv[LIST_0][iMbXy], 14, 13);208 nBS[0][2][3] = BS_EDGE (uiBsx4[1], iRefIndex, pCurDqLayer->pMv[LIST_0][iMbXy], 14, 13);
209 nBS[0][3][3] = BS_EDGE (uiBsx4[2], iRefIndex, pCurDqLayer->pMv[LIST_0][iMbXy], 15, 14);209 nBS[0][3][3] = BS_EDGE (uiBsx4[2], iRefIndex, pCurDqLayer->pMv[LIST_0][iMbXy], 15, 14);
@@ -233,18 +233,18 @@ uint32_t DeblockingBsMarginalMBAvcbase (PDqLayer pCurDqLayer, int32_t iEdge, int · 23 unmodified lines
233 uint32_t uiBSx4;233 uint32_t uiBSx4;
234 //uint8_t* bS = static_cast<uint8_t*>(&uiBSx4);234 //uint8_t* bS = static_cast<uint8_t*>(&uiBSx4);
235 uint8_t* pBS = (uint8_t*) (&uiBSx4);235 uint8_t* pBS = (uint8_t*) (&uiBSx4);
236 uint32_t uiBIdx = * (uint32_t*) (&g_kuiTableBIdx[iEdge][0]);236 const uint8_t *pBIdx = &g_kuiTableBIdx[iEdge][0];
237 uint32_t uiBnIdx = * (uint32_t*) (&g_kuiTableBIdx[iEdge][4]);237 const uint8_t *pBnIdx = &g_kuiTableBIdx[iEdge][4];
238 238
239 for (i = 0; i < 4; i++) {239 for (i = 0; i < 4; i++) {
240 if (pCurDqLayer->pNzc[iMbXy][uiBIdx & 0xff] | pCurDqLayer->pNzc[iNeighMb][uiBnIdx & 0xff]) {240 if (pCurDqLayer->pNzc[iMbXy][*pBIdx] | pCurDqLayer->pNzc[iNeighMb][*pBnIdx]) {
241 pBS[i] = 2;241 pBS[i] = 2;
242 } else {242 } else {
243 pBS[i] = MB_BS_MV (pCurDqLayer->pRefIndex[LIST_0], pCurDqLayer->pMv[LIST_0], iMbXy, iNeighMb, (uiBIdx & 0xff),243 pBS[i] = MB_BS_MV (pCurDqLayer->pRefIndex[LIST_0], pCurDqLayer->pMv[LIST_0], iMbXy, iNeighMb, *pBIdx,
244 (uiBnIdx & 0xff));244 *pBnIdx);
245 }245 }
246 uiBIdx = uiBIdx >> 8;246 pBIdx++;
247 uiBnIdx = uiBnIdx >> 8;247 pBnIdx++;
248 }248 }
249 return uiBSx4;249 return uiBSx4;
250}250}

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t