History

fix Bug-1479669 and Bug-1479831 in Bugizllia. When key colocated Ref Picture is lost or does not exist. B-Slice decoding has to be stoped.

xiaotiansf committed 8 years ago

Commit 55c15431 parent ae7bac24 files · +62 −21Browse files

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

Unified · Split

codec/decoder/core/src/decode_slice.cpp+11−2
@@ -1415,16 +1415,25 @@ int32_t WelsDecodeMbCabacBSlice (PWelsDecoderContext pCtx, PNalUnit pNalCur, uin · 1414 unmodified lines
1415 pCtx->bMbRefConcealed = pCtx->bRPLRError || pCtx->bMbRefConcealed || ! (ppRefPicL0[0] && ppRefPicL0[0]->bIsComplete)1415 pCtx->bMbRefConcealed = pCtx->bRPLRError || pCtx->bMbRefConcealed || ! (ppRefPicL0[0] && ppRefPicL0[0]->bIsComplete)
1416 || ! (ppRefPicL1[0] && ppRefPicL1[0]->bIsComplete);1416 || ! (ppRefPicL1[0] && ppRefPicL1[0]->bIsComplete);
1417 1417
1418
1418 if (pSliceHeader->iDirectSpatialMvPredFlag) {1419 if (pSliceHeader->iDirectSpatialMvPredFlag) {
1419 1420
1420 //predict direct spatial mv1421 //predict direct spatial mv
1421 PredMvBDirectSpatial (pCtx, pMv, ref);1422 SubMbType subMbType;
1423 int32_t ret = PredMvBDirectSpatial (pCtx, pMv, ref, subMbType);
1424 if (ret != ERR_NONE) {
1425 return ret;
1426 }
1422 } else {1427 } else {
1423 //temporal direct mode1428 //temporal direct mode
1424 ComputeColocated (pCtx);1429 ComputeColocated (pCtx);
1425 PredBDirectTemporal (pCtx, pMv, ref);1430 int32_t ret = PredBDirectTemporal (pCtx, pMv, ref);
1431 if (ret != ERR_NONE) {
1432 return ret;
1433 }
1426 }1434 }
1427 1435
1436
1428 //reset rS1437 //reset rS
1429 pCurLayer->pLumaQp[iMbXy] = pSlice->iLastMbQp; //??????????????? dqaunt of previous mb1438 pCurLayer->pLumaQp[iMbXy] = pSlice->iLastMbQp; //??????????????? dqaunt of previous mb
1430 for (i = 0; i < 2; i++) {1439 for (i = 0; i < 2; i++) {

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