History

fix decoder, now it works correctly again

Sigrid Solveig Haflínudóttir committed 5 years ago

Commit 07b90531 parent 37423d47 files · +29 −58Browse files

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

Unified · Split

codec/decoder/core/src/cabac_decoder.cpp+6−6
@@ -252,19 +252,19 @@ int32_t DecodeUnaryBinCabac (PWelsCabacDecEngine pDecEngine, PWelsCabacCtx pBinC · 251 unmodified lines
252 if (*uiSymVal == 0) {252 if (*uiSymVal == 0) {
253 return ERR_NONE;253 return ERR_NONE;
254 } else {254 } else {
255 uint32_t uiCode;255 uint32_t uiCode = 0;
256 pBinCtx += iCtxOffset;256 pBinCtx += iCtxOffset;
257 *uiSymVal = 0;257 *uiSymVal = 0;
258 do {258 do {
259 WELS_READ_VERIFY (DecodeBinCabac (pDecEngine, pBinCtx, &uiCode));259 WELS_READ_VERIFY (DecodeBinCabac (pDecEngine, pBinCtx, &uiCode));
260 ++(*uiSymVal);260 *uiSymVal += 1;
261 } while (uiCode != 0);261 } while (uiCode != 0);
262 return ERR_NONE;262 return ERR_NONE;
263 }263 }
264}264}
265 265
266int32_t DecodeExpBypassCabac (PWelsCabacDecEngine pDecEngine, int32_t iCount, uint32_t *uiSymVal) {266int32_t DecodeExpBypassCabac (PWelsCabacDecEngine pDecEngine, int32_t iCount, uint32_t *uiSymVal) {
267 uint32_t uiCode;267 uint32_t uiCode = 0;
268 int32_t iSymTmp = 0;268 int32_t iSymTmp = 0;
269 int32_t iSymTmp2 = 0;269 int32_t iSymTmp2 = 0;
270 *uiSymVal = 0;270 *uiSymVal = 0;
@@ -295,11 +295,11 @@ uint32_t DecodeUEGLevelCabac (PWelsCabacDecEngine pDecEngine, PWelsCabacCtx pBin · 24 unmodified lines
295 if (*uiCode == 0)295 if (*uiCode == 0)
296 return ERR_NONE;296 return ERR_NONE;
297 else {297 else {
298 uint32_t uiTmp, uiCount = 1;298 uint32_t uiTmp = 0, uiCount = 1;
299 *uiCode = 0;299 *uiCode = 0;
300 do {300 do {
301 WELS_READ_VERIFY (DecodeBinCabac (pDecEngine, pBinCtx, &uiTmp));301 WELS_READ_VERIFY (DecodeBinCabac (pDecEngine, pBinCtx, &uiTmp));
302 ++(*uiCode);302 *uiCode += 1;
303 ++uiCount;303 ++uiCount;
304 } while (uiTmp != 0 && uiCount != 13);304 } while (uiTmp != 0 && uiCount != 13);
305 305
@@ -321,7 +321,7 @@ int32_t DecodeUEGMvCabac (PWelsCabacDecEngine pDecEngine, PWelsCabacCtx pBinCtx, · 15 unmodified lines
321 *uiCode = 0;321 *uiCode = 0;
322 do {322 do {
323 WELS_READ_VERIFY (DecodeBinCabac (pDecEngine, pBinCtx + g_kMvdBinPos2Ctx[uiCount++], &uiTmp));323 WELS_READ_VERIFY (DecodeBinCabac (pDecEngine, pBinCtx + g_kMvdBinPos2Ctx[uiCount++], &uiTmp));
324 (*uiCode)++;324 *uiCode += 1;
325 } while (uiTmp != 0 && uiCount != 8);325 } while (uiTmp != 0 && uiCount != 8);
326 326
327 if (uiTmp != 0) {327 if (uiTmp != 0) {

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