History

Convert tabs to spaces in vertically aligned code

Martin Storsjö committed 11 years ago

Commit 51efa571 parent 723044864 files · +2746 −2751Browse files

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

Unified · Split

codec/decoder/core/src/decoder_core.cpp+172−172
@@ -427,27 +427,27 @@ bool FillDefaultSliceHeaderExt (PSliceHeaderExt pShExt, PNalUnitHeaderExt pNalEx · 426 unmodified lines
427427 else
428428 pShExt->bBasePredWeightTableFlag = true;
429429 pShExt->uiRefLayerDqId = (uint8_t) - 1;
430− pShExt->uiDisableInterLayerDeblockingFilterIdc = 0;
431− pShExt->iInterLayerSliceAlphaC0Offset = 0;
432− pShExt->iInterLayerSliceBetaOffset = 0;
433− pShExt->bConstrainedIntraResamplingFlag = false;
434− pShExt->uiRefLayerChromaPhaseXPlus1Flag = 0;
435− pShExt->uiRefLayerChromaPhaseYPlus1 = 1;
430+ pShExt->uiDisableInterLayerDeblockingFilterIdc = 0;
431+ pShExt->iInterLayerSliceAlphaC0Offset = 0;
432+ pShExt->iInterLayerSliceBetaOffset = 0;
433+ pShExt->bConstrainedIntraResamplingFlag = false;
434+ pShExt->uiRefLayerChromaPhaseXPlus1Flag = 0;
435+ pShExt->uiRefLayerChromaPhaseYPlus1 = 1;
436436 //memset(&pShExt->sScaledRefLayer, 0, sizeof(SPosOffset));
437437
438− pShExt->iScaledRefLayerPicWidthInSampleLuma = pShExt->sSliceHeader.iMbWidth << 4;
439− pShExt->iScaledRefLayerPicHeightInSampleLuma = pShExt->sSliceHeader.iMbHeight << 4;
438+ pShExt->iScaledRefLayerPicWidthInSampleLuma = pShExt->sSliceHeader.iMbWidth << 4;
439+ pShExt->iScaledRefLayerPicHeightInSampleLuma = pShExt->sSliceHeader.iMbHeight << 4;
440440
441− pShExt->bSliceSkipFlag = false;
442− pShExt->bAdaptiveBaseModeFlag = false;
443− pShExt->bDefaultBaseModeFlag = false;
444− pShExt->bAdaptiveMotionPredFlag = false;
445− pShExt->bDefaultMotionPredFlag = false;
446− pShExt->bAdaptiveResidualPredFlag = false;
447− pShExt->bDefaultResidualPredFlag = false;
448− pShExt->bTCoeffLevelPredFlag = false;
449− pShExt->uiScanIdxStart = 0;
450− pShExt->uiScanIdxEnd = 15;
441+ pShExt->bSliceSkipFlag = false;
442+ pShExt->bAdaptiveBaseModeFlag = false;
443+ pShExt->bDefaultBaseModeFlag = false;
444+ pShExt->bAdaptiveMotionPredFlag = false;
445+ pShExt->bDefaultMotionPredFlag = false;
446+ pShExt->bAdaptiveResidualPredFlag = false;
447+ pShExt->bDefaultResidualPredFlag = false;
448+ pShExt->bTCoeffLevelPredFlag = false;
449+ pShExt->uiScanIdxStart = 0;
450+ pShExt->uiScanIdxEnd = 15;
451451
452452 return true;
453453 }
@@ -551,8 +551,8 @@ int32_t WelsInitMemory (PWelsDecoderContext pCtx) { · 97 unmodified lines
551551 if (InitBsBuffer (pCtx) != 0)
552552 return ERR_INFO_OUT_OF_MEMORY;
553553
554− pCtx->uiTargetDqId = (uint8_t) - 1;
555− pCtx->bEndOfStreamFlag = false;
554+ pCtx->uiTargetDqId = (uint8_t) - 1;
555+ pCtx->bEndOfStreamFlag = false;
556556
557557 return ERR_NONE;
558558 }
@@ -579,15 +579,15 @@ void WelsFreeMemory (PWelsDecoderContext pCtx) { · 20 unmodified lines
579579 }
580580 pCtx->sRawData.pHead = NULL;
581581 pCtx->sRawData.pEnd = NULL;
582− pCtx->sRawData.pStartPos = NULL;
583− pCtx->sRawData.pCurPos = NULL;
582+ pCtx->sRawData.pStartPos = NULL;
583+ pCtx->sRawData.pCurPos = NULL;
584584 if (pCtx->bParseOnly) {
585585 if (pCtx->sSavedData.pHead) {
586586 WelsFree (pCtx->sSavedData.pHead, "pCtx->sSavedData->pHead");
587587 }
588588 pCtx->sSavedData.pHead = NULL;
589589 pCtx->sSavedData.pEnd = NULL;
590− pCtx->sSavedData.pStartPos = NULL;
590+ pCtx->sSavedData.pStartPos = NULL;
591591 pCtx->sSavedData.pCurPos = NULL;
592592 if (pCtx->pParserBsInfo) {
593593 if (pCtx->pParserBsInfo->pDstBuff) {
@@ -610,20 +610,20 @@ void DecodeNalHeaderExt (PNalUnit pNal, uint8_t* pSrc) { · 16 unmodified lines
610610 PNalUnitHeaderExt pHeaderExt = &pNal->sNalHeaderExt;
611611
612612 uint8_t uiCurByte = *pSrc;
613− pHeaderExt->bIdrFlag = !! (uiCurByte & 0x40);
614− pHeaderExt->uiPriorityId = uiCurByte & 0x3F;
613+ pHeaderExt->bIdrFlag = !! (uiCurByte & 0x40);
614+ pHeaderExt->uiPriorityId = uiCurByte & 0x3F;
615615
616616 uiCurByte = * (++pSrc);
617617 pHeaderExt->iNoInterLayerPredFlag = uiCurByte >> 7;
618− pHeaderExt->uiDependencyId = (uiCurByte & 0x70) >> 4;
619− pHeaderExt->uiQualityId = uiCurByte & 0x0F;
618+ pHeaderExt->uiDependencyId = (uiCurByte & 0x70) >> 4;
619+ pHeaderExt->uiQualityId = uiCurByte & 0x0F;
620620 uiCurByte = * (++pSrc);
621− pHeaderExt->uiTemporalId = uiCurByte >> 5;
622− pHeaderExt->bUseRefBasePicFlag = !! (uiCurByte & 0x10);
623− pHeaderExt->bDiscardableFlag = !! (uiCurByte & 0x08);
624− pHeaderExt->bOutputFlag = !! (uiCurByte & 0x04);
625− pHeaderExt->uiReservedThree2Bits = uiCurByte & 0x03;
626− pHeaderExt->uiLayerDqId = (pHeaderExt->uiDependencyId << 4) | pHeaderExt->uiQualityId;
621+ pHeaderExt->uiTemporalId = uiCurByte >> 5;
622+ pHeaderExt->bUseRefBasePicFlag = !! (uiCurByte & 0x10);
623+ pHeaderExt->bDiscardableFlag = !! (uiCurByte & 0x08);
624+ pHeaderExt->bOutputFlag = !! (uiCurByte & 0x04);
625+ pHeaderExt->uiReservedThree2Bits = uiCurByte & 0x03;
626+ pHeaderExt->uiLayerDqId = (pHeaderExt->uiDependencyId << 4) | pHeaderExt->uiQualityId;
627627 }
628628
629629
@@ -640,21 +640,21 @@ void DecodeNalHeaderExt (PNalUnit pNal, uint8_t* pSrc) { · 10 unmodified lines
640640 * Parse slice header of bitstream in avc for storing data structure
641641 */
642642 int32_t ParseSliceHeaderSyntaxs (PWelsDecoderContext pCtx, PBitStringAux pBs, const bool kbExtensionFlag) {
643− PNalUnit const kpCurNal = pCtx->pAccessUnitList->pNalUnitsList[pCtx->pAccessUnitList->uiAvailUnitsNum - 1];
644−
645− PNalUnitHeaderExt pNalHeaderExt = NULL;
646− PSliceHeader pSliceHead = NULL;
647− PSliceHeaderExt pSliceHeadExt = NULL;
648− PSubsetSps pSubsetSps = NULL;
649− PSps pSps = NULL;
650− PPps pPps = NULL;
651− EWelsNalUnitType eNalType = static_cast<EWelsNalUnitType> (0);
652− int32_t iPpsId = 0;
653− int32_t iRet = ERR_NONE;
654− uint8_t uiSliceType = 0;
655− uint8_t uiQualityId = BASE_QUALITY_ID;
656− bool bIdrFlag = false;
657− bool bSgChangeCycleInvolved = false; // involved slice group change cycle ?
643+ PNalUnit const kpCurNal = pCtx->pAccessUnitList->pNalUnitsList[pCtx->pAccessUnitList->uiAvailUnitsNum - 1];
644+
645+ PNalUnitHeaderExt pNalHeaderExt = NULL;
646+ PSliceHeader pSliceHead = NULL;
647+ PSliceHeaderExt pSliceHeadExt = NULL;
648+ PSubsetSps pSubsetSps = NULL;
649+ PSps pSps = NULL;
650+ PPps pPps = NULL;
651+ EWelsNalUnitType eNalType = static_cast<EWelsNalUnitType> (0);
652+ int32_t iPpsId = 0;
653+ int32_t iRet = ERR_NONE;
654+ uint8_t uiSliceType = 0;
655+ uint8_t uiQualityId = BASE_QUALITY_ID;
656+ bool bIdrFlag = false;
657+ bool bSgChangeCycleInvolved = false; // involved slice group change cycle ?
658658 uint32_t uiCode;
659659 int32_t iCode;
660660 SLogContext* pLogCtx = & (pCtx->sLogCtx);
@@ -663,11 +663,11 @@ int32_t ParseSliceHeaderSyntaxs (PWelsDecoderContext pCtx, PBitStringAux pBs, co · 2 unmodified lines
663663 return ERR_INFO_OUT_OF_MEMORY;
664664 }
665665
666− pNalHeaderExt = &kpCurNal->sNalHeaderExt;
667− pSliceHead = &kpCurNal->sNalData.sVclNal.sSliceHeaderExt.sSliceHeader;
668− eNalType = pNalHeaderExt->sNalUnitHeader.eNalUnitType;
666+ pNalHeaderExt = &kpCurNal->sNalHeaderExt;
667+ pSliceHead = &kpCurNal->sNalData.sVclNal.sSliceHeaderExt.sSliceHeader;
668+ eNalType = pNalHeaderExt->sNalUnitHeader.eNalUnitType;
669669
670− pSliceHeadExt = &kpCurNal->sNalData.sVclNal.sSliceHeaderExt;
670+ pSliceHeadExt = &kpCurNal->sNalData.sVclNal.sSliceHeaderExt;
671671
672672 if (pSliceHeadExt) {
673673 SRefBasePicMarking sBaseMarking;
@@ -746,7 +746,7 @@ int32_t ParseSliceHeaderSyntaxs (PWelsDecoderContext pCtx, PBitStringAux pBs, co · 72 unmodified lines
746746
747747 if (kbExtensionFlag) {
748748 pSubsetSps = &pCtx->sSubsetSpsBuffer[pPps->iSpsId];
749− pSps = &pSubsetSps->sSps;
749+ pSps = &pSubsetSps->sSps;
750750 if (pCtx->bSubspsAvailFlags[pPps->iSpsId] == false) {
751751 pCtx->sDecoderStatistics.iSubSpsReportErrorNum++;
752752 if (pCtx->iSubSPSLastInvalidId != pPps->iSpsId) {
@@ -798,15 +798,15 @@ int32_t ParseSliceHeaderSyntaxs (PWelsDecoderContext pCtx, PBitStringAux pBs, co · 45 unmodified lines
798798 WELS_READ_VERIFY (BsGetBits (pBs, pSps->uiLog2MaxFrameNum, &uiCode)); //frame_num
799799 pSliceHead->iFrameNum = uiCode;
800800
801− pSliceHead->bFieldPicFlag = false;
802− pSliceHead->bBottomFiledFlag = false;
801+ pSliceHead->bFieldPicFlag = false;
802+ pSliceHead->bBottomFiledFlag = false;
803803 if (!pSps->bFrameMbsOnlyFlag) {
804804 WelsLog (pLogCtx, WELS_LOG_WARNING, "ParseSliceHeaderSyntaxs(): frame_mbs_only_flag = %d not supported. ",
805805 pSps->bFrameMbsOnlyFlag);
806806 return GENERATE_ERROR_NO (ERR_LEVEL_SLICE_HEADER, ERR_INFO_UNSUPPORTED_MBAFF);
807807 }
808− pSliceHead->iMbWidth = pSps->iMbWidth;
809− pSliceHead->iMbHeight = pSps->iMbHeight / (1 + pSliceHead->bFieldPicFlag);
808+ pSliceHead->iMbWidth = pSps->iMbWidth;
809+ pSliceHead->iMbHeight = pSps->iMbHeight / (1 + pSliceHead->bFieldPicFlag);
810810
811811 if (bIdrFlag) {
812812 if (pSliceHead->iFrameNum != 0) {
@@ -825,9 +825,9 @@ int32_t ParseSliceHeaderSyntaxs (PWelsDecoderContext pCtx, PBitStringAux pBs, co · 12 unmodified lines
825825 #endif
826826 }
827827
828− pSliceHead->iDeltaPicOrderCntBottom = 0;
829− pSliceHead->iDeltaPicOrderCnt[0] =
830− pSliceHead->iDeltaPicOrderCnt[1] = 0;
828+ pSliceHead->iDeltaPicOrderCntBottom = 0;
829+ pSliceHead->iDeltaPicOrderCnt[0] =
830+ pSliceHead->iDeltaPicOrderCnt[1] = 0;
831831 if (pSps->uiPocType == 0) {
832832 WELS_READ_VERIFY (BsGetBits (pBs, pSps->iLog2MaxPocLsb, &uiCode)); //pic_order_cnt_lsb
833833 pSliceHead->iPicOrderCntLsb = uiCode;
@@ -854,8 +854,8 @@ int32_t ParseSliceHeaderSyntaxs (PWelsDecoderContext pCtx, PBitStringAux pBs, co · 20 unmodified lines
854854 }
855855
856856 //set defaults, might be overriden a few line later
857− pSliceHead->uiRefCount[0] = pPps->uiNumRefIdxL0Active;
858− pSliceHead->uiRefCount[1] = pPps->uiNumRefIdxL1Active;
857+ pSliceHead->uiRefCount[0] = pPps->uiNumRefIdxL0Active;
858+ pSliceHead->uiRefCount[1] = pPps->uiNumRefIdxL1Active;
859859
860860 bool bReadNumRefFlag = (P_SLICE == uiSliceType);
861861 if (kbExtensionFlag) {
@@ -928,8 +928,8 @@ int32_t ParseSliceHeaderSyntaxs (PWelsDecoderContext pCtx, PBitStringAux pBs, co · 66 unmodified lines
928928 }
929929
930930 WELS_READ_VERIFY (BsGetSe (pBs, &iCode)); //slice_qp_delta
931− pSliceHead->iSliceQpDelta = iCode;
932− pSliceHead->iSliceQp = pPps->iPicInitQp + pSliceHead->iSliceQpDelta;
931+ pSliceHead->iSliceQpDelta = iCode;
932+ pSliceHead->iSliceQp = pPps->iPicInitQp + pSliceHead->iSliceQpDelta;
933933 if (pSliceHead->iSliceQp < 0 || pSliceHead->iSliceQp > 51) {
934934 WelsLog (pLogCtx, WELS_LOG_WARNING, "QP %d out of range", pSliceHead->iSliceQp);
935935 return GENERATE_ERROR_NO (ERR_LEVEL_SLICE_HEADER, ERR_INFO_INVALID_QP);
@@ -943,9 +943,9 @@ int32_t ParseSliceHeaderSyntaxs (PWelsDecoderContext pCtx, PBitStringAux pBs, co · 7 unmodified lines
943943 }
944944 }
945945
946− pSliceHead->uiDisableDeblockingFilterIdc = 0;
947− pSliceHead->iSliceAlphaC0Offset = 0;
948− pSliceHead->iSliceBetaOffset = 0;
946+ pSliceHead->uiDisableDeblockingFilterIdc = 0;
947+ pSliceHead->iSliceAlphaC0Offset = 0;
948+ pSliceHead->iSliceBetaOffset = 0;
949949 if (pPps->bDeblockingFilterControlPresentFlag) {
950950 WELS_READ_VERIFY (BsGetUe (pBs, &uiCode)); //disable_deblocking_filter_idc
951951 pSliceHead->uiDisableDeblockingFilterIdc = uiCode;
@@ -1017,21 +1017,21 @@ int32_t ParseSliceHeaderSyntaxs (PWelsDecoderContext pCtx, PBitStringAux pBs, co · 65 unmodified lines
10171017 }
10181018 }
10191019
1020− pSliceHeadExt->uiRefLayerChromaPhaseXPlus1Flag = pSubsetSps->sSpsSvcExt.uiSeqRefLayerChromaPhaseXPlus1Flag;
1021− pSliceHeadExt->uiRefLayerChromaPhaseYPlus1 = pSubsetSps->sSpsSvcExt.uiSeqRefLayerChromaPhaseYPlus1;
1020+ pSliceHeadExt->uiRefLayerChromaPhaseXPlus1Flag = pSubsetSps->sSpsSvcExt.uiSeqRefLayerChromaPhaseXPlus1Flag;
1021+ pSliceHeadExt->uiRefLayerChromaPhaseYPlus1 = pSubsetSps->sSpsSvcExt.uiSeqRefLayerChromaPhaseYPlus1;
10221022
10231023 WELS_READ_VERIFY (BsGetOneBit (pBs, &uiCode)); //constrained_intra_resampling_flag
10241024 pSliceHeadExt->bConstrainedIntraResamplingFlag = !!uiCode;
10251025
10261026 {
10271027 SPosOffset pos;
1028− pos.iLeftOffset = pSubsetSps->sSpsSvcExt.sSeqScaledRefLayer.iLeftOffset;
1029− pos.iTopOffset = pSubsetSps->sSpsSvcExt.sSeqScaledRefLayer.iTopOffset * (2 - pSps->bFrameMbsOnlyFlag);
1030− pos.iRightOffset = pSubsetSps->sSpsSvcExt.sSeqScaledRefLayer.iRightOffset;
1028+ pos.iLeftOffset = pSubsetSps->sSpsSvcExt.sSeqScaledRefLayer.iLeftOffset;
1029+ pos.iTopOffset = pSubsetSps->sSpsSvcExt.sSeqScaledRefLayer.iTopOffset * (2 - pSps->bFrameMbsOnlyFlag);
1030+ pos.iRightOffset = pSubsetSps->sSpsSvcExt.sSeqScaledRefLayer.iRightOffset;
10311031 pos.iBottomOffset = pSubsetSps->sSpsSvcExt.sSeqScaledRefLayer.iBottomOffset * (2 - pSps->bFrameMbsOnlyFlag);
10321032 //memcpy(&pSliceHeadExt->sScaledRefLayer, &pos, sizeof(SPosOffset));//confirmed_safe_unsafe_usage
1033− pSliceHeadExt->iScaledRefLayerPicWidthInSampleLuma = (pSliceHead->iMbWidth << 4) - (pos.iLeftOffset + pos.iRightOffset);
1034− pSliceHeadExt->iScaledRefLayerPicHeightInSampleLuma = (pSliceHead->iMbHeight << 4) -
1033+ pSliceHeadExt->iScaledRefLayerPicWidthInSampleLuma = (pSliceHead->iMbWidth << 4) - (pos.iLeftOffset + pos.iRightOffset);
1034+ pSliceHeadExt->iScaledRefLayerPicHeightInSampleLuma = (pSliceHead->iMbHeight << 4) -
10351035 (pos.iTopOffset + pos.iBottomOffset) / (1 + pSliceHead->bFieldPicFlag);
10361036 }
10371037 } else if (uiQualityId > BASE_QUALITY_ID) {
@@ -1041,17 +1041,17 @@ int32_t ParseSliceHeaderSyntaxs (PWelsDecoderContext pCtx, PBitStringAux pBs, co · 3 unmodified lines
10411041 pSliceHeadExt->uiRefLayerDqId = (uint8_t) - 1;
10421042 }
10431043
1044− pSliceHeadExt->bSliceSkipFlag = false;
1045− pSliceHeadExt->bAdaptiveBaseModeFlag = false;
1046− pSliceHeadExt->bDefaultBaseModeFlag = false;
1047− pSliceHeadExt->bAdaptiveMotionPredFlag = false;
1048− pSliceHeadExt->bDefaultMotionPredFlag = false;
1049− pSliceHeadExt->bAdaptiveResidualPredFlag = false;
1050− pSliceHeadExt->bDefaultResidualPredFlag = false;
1044+ pSliceHeadExt->bSliceSkipFlag = false;
1045+ pSliceHeadExt->bAdaptiveBaseModeFlag = false;
1046+ pSliceHeadExt->bDefaultBaseModeFlag = false;
1047+ pSliceHeadExt->bAdaptiveMotionPredFlag = false;
1048+ pSliceHeadExt->bDefaultMotionPredFlag = false;
1049+ pSliceHeadExt->bAdaptiveResidualPredFlag = false;
1050+ pSliceHeadExt->bDefaultResidualPredFlag = false;
10511051 if (pNalHeaderExt->iNoInterLayerPredFlag)
1052− pSliceHeadExt->bTCoeffLevelPredFlag = false;
1052+ pSliceHeadExt->bTCoeffLevelPredFlag = false;
10531053 else
1054− pSliceHeadExt->bTCoeffLevelPredFlag = pSubsetSps->sSpsSvcExt.bSeqTCoeffLevelPredFlag;
1054+ pSliceHeadExt->bTCoeffLevelPredFlag = pSubsetSps->sSpsSvcExt.bSeqTCoeffLevelPredFlag;
10551055
10561056 if (!pNalHeaderExt->iNoInterLayerPredFlag) {
10571057 WELS_READ_VERIFY (BsGetOneBit (pBs, &uiCode)); //slice_skip_flag
@@ -1099,8 +1099,8 @@ int32_t ParseSliceHeaderSyntaxs (PWelsDecoderContext pCtx, PBitStringAux pBs, co · 41 unmodified lines
10991099 return GENERATE_ERROR_NO (ERR_LEVEL_SLICE_HEADER, ERR_INFO_UNSUPPORTED_MGS);
11001100 }
11011101 } else {
1102− pSliceHeadExt->uiScanIdxStart = 0;
1103− pSliceHeadExt->uiScanIdxEnd = 15;
1102+ pSliceHeadExt->uiScanIdxStart = 0;
1103+ pSliceHeadExt->uiScanIdxEnd = 15;
11041104 }
11051105 }
11061106
@@ -1122,24 +1122,24 @@ bool PrefetchNalHeaderExtSyntax (PWelsDecoderContext pCtx, PNalUnit const kppDst · 15 unmodified lines
11221122 if (kppDst == NULL || kpSrc == NULL)
11231123 return false;
11241124
1125− pNalHdrExtD = &kppDst->sNalHeaderExt;
1126− pNalHdrExtS = &kpSrc->sNalHeaderExt;
1127− pShExtD = &kppDst->sNalData.sVclNal.sSliceHeaderExt;
1128− pPrefixS = &kpSrc->sNalData.sPrefixNal;
1129− pSps = &pCtx->sSpsBuffer[pCtx->sPpsBuffer[pShExtD->sSliceHeader.iPpsId].iSpsId];
1130−
1131− pNalHdrExtD->uiDependencyId = pNalHdrExtS->uiDependencyId;
1132− pNalHdrExtD->uiQualityId = pNalHdrExtS->uiQualityId;
1133− pNalHdrExtD->uiTemporalId = pNalHdrExtS->uiTemporalId;
1134− pNalHdrExtD->uiPriorityId = pNalHdrExtS->uiPriorityId;
1135− pNalHdrExtD->bIdrFlag = pNalHdrExtS->bIdrFlag;
1136− pNalHdrExtD->iNoInterLayerPredFlag = pNalHdrExtS->iNoInterLayerPredFlag;
1137− pNalHdrExtD->bDiscardableFlag = pNalHdrExtS->bDiscardableFlag;
1138− pNalHdrExtD->bOutputFlag = pNalHdrExtS->bOutputFlag;
1139− pNalHdrExtD->bUseRefBasePicFlag = pNalHdrExtS->bUseRefBasePicFlag;
1140− pNalHdrExtD->uiLayerDqId = pNalHdrExtS->uiLayerDqId;
1141−
1142− pShExtD->bStoreRefBasePicFlag = pPrefixS->bStoreRefBasePicFlag;
1125+ pNalHdrExtD = &kppDst->sNalHeaderExt;
1126+ pNalHdrExtS = &kpSrc->sNalHeaderExt;
1127+ pShExtD = &kppDst->sNalData.sVclNal.sSliceHeaderExt;
1128+ pPrefixS = &kpSrc->sNalData.sPrefixNal;
1129+ pSps = &pCtx->sSpsBuffer[pCtx->sPpsBuffer[pShExtD->sSliceHeader.iPpsId].iSpsId];
1130+
1131+ pNalHdrExtD->uiDependencyId = pNalHdrExtS->uiDependencyId;
1132+ pNalHdrExtD->uiQualityId = pNalHdrExtS->uiQualityId;
1133+ pNalHdrExtD->uiTemporalId = pNalHdrExtS->uiTemporalId;
1134+ pNalHdrExtD->uiPriorityId = pNalHdrExtS->uiPriorityId;
1135+ pNalHdrExtD->bIdrFlag = pNalHdrExtS->bIdrFlag;
1136+ pNalHdrExtD->iNoInterLayerPredFlag = pNalHdrExtS->iNoInterLayerPredFlag;
1137+ pNalHdrExtD->bDiscardableFlag = pNalHdrExtS->bDiscardableFlag;
1138+ pNalHdrExtD->bOutputFlag = pNalHdrExtS->bOutputFlag;
1139+ pNalHdrExtD->bUseRefBasePicFlag = pNalHdrExtS->bUseRefBasePicFlag;
1140+ pNalHdrExtD->uiLayerDqId = pNalHdrExtS->uiLayerDqId;
1141+
1142+ pShExtD->bStoreRefBasePicFlag = pPrefixS->bStoreRefBasePicFlag;
11431143 memcpy (&pShExtD->sRefBasePicMarking, &pPrefixS->sRefPicBaseMarking,
11441144 sizeof (SRefBasePicMarking)); //confirmed_safe_unsafe_usage
11451145 if (pShExtD->sRefBasePicMarking.bAdaptiveRefBasePicMarkingModeFlag) {
@@ -1161,7 +1161,7 @@ bool PrefetchNalHeaderExtSyntax (PWelsDecoderContext pCtx, PNalUnit const kppDst · 15 unmodified lines
11611161
11621162
11631163 int32_t UpdateAccessUnit (PWelsDecoderContext pCtx) {
1164− PAccessUnit pCurAu = pCtx->pAccessUnitList;
1164+ PAccessUnit pCurAu = pCtx->pAccessUnitList;
11651165 int32_t iIdx = pCurAu->uiEndPos;
11661166
11671167 // Conversed iterator
@@ -1211,8 +1211,8 @@ int32_t InitialDqLayersContext (PWelsDecoderContext pCtx, const int32_t kiMaxWid · 43 unmodified lines
12111211 int32_t i = 0;
12121212
12131213 WELS_VERIFY_RETURN_IF (ERR_INFO_INVALID_PARAM, (NULL == pCtx || kiMaxWidth <= 0 || kiMaxHeight <= 0))
1214− pCtx->sMb.iMbWidth = (kiMaxWidth + 15) >> 4;
1215− pCtx->sMb.iMbHeight = (kiMaxHeight + 15) >> 4;
1214+ pCtx->sMb.iMbWidth = (kiMaxWidth + 15) >> 4;
1215+ pCtx->sMb.iMbHeight = (kiMaxHeight + 15) >> 4;
12161216
12171217 if (pCtx->bInitialDqLayersMem && kiMaxWidth <= pCtx->iPicWidthReq
12181218 && kiMaxHeight <= pCtx->iPicHeightReq) // have same dimension memory, skipped
@@ -1313,9 +1313,9 @@ int32_t InitialDqLayersContext (PWelsDecoderContext pCtx, const int32_t kiMaxWid · 94 unmodified lines
13131313 ++ i;
13141314 } while (i < LAYER_NUM_EXCHANGEABLE);
13151315
1316− pCtx->bInitialDqLayersMem = true;
1317− pCtx->iPicWidthReq = kiMaxWidth;
1318− pCtx->iPicHeightReq = kiMaxHeight;
1316+ pCtx->bInitialDqLayersMem = true;
1317+ pCtx->iPicWidthReq = kiMaxWidth;
1318+ pCtx->iPicHeightReq = kiMaxHeight;
13191319
13201320 return ERR_NONE;
13211321 }
@@ -1478,22 +1478,22 @@ void UninitialDqLayersContext (PWelsDecoderContext pCtx) { · 156 unmodified lines
14781478 ++ i;
14791479 } while (i < LAYER_NUM_EXCHANGEABLE);
14801480
1481− pCtx->iPicWidthReq = 0;
1482− pCtx->iPicHeightReq = 0;
1483− pCtx->bInitialDqLayersMem = false;
1481+ pCtx->iPicWidthReq = 0;
1482+ pCtx->iPicHeightReq = 0;
1483+ pCtx->bInitialDqLayersMem = false;
14841484 }
14851485
14861486 void ResetCurrentAccessUnit (PWelsDecoderContext pCtx) {
14871487 PAccessUnit pCurAu = pCtx->pAccessUnitList;
14881488 pCurAu->uiStartPos = 0;
1489− pCurAu->uiEndPos = 0;
1490− pCurAu->bCompletedAuFlag = false;
1489+ pCurAu->uiEndPos = 0;
1490+ pCurAu->bCompletedAuFlag = false;
14911491 if (pCurAu->uiActualUnitsNum > 0) {
14921492 uint32_t iIdx = 0;
14931493 const uint32_t kuiActualNum = pCurAu->uiActualUnitsNum;
14941494 // a more simpler method to do nal units list management prefered here
1495− const uint32_t kuiAvailNum = pCurAu->uiAvailUnitsNum;
1496− const uint32_t kuiLeftNum = kuiAvailNum - kuiActualNum;
1495+ const uint32_t kuiAvailNum = pCurAu->uiAvailUnitsNum;
1496+ const uint32_t kuiLeftNum = kuiAvailNum - kuiActualNum;
14971497
14981498 // Swapping active nal unit nodes of succeeding AU with leading of list
14991499 while (iIdx < kuiLeftNum) {
@@ -1512,27 +1512,27 @@ void ResetCurrentAccessUnit (PWelsDecoderContext pCtx) { · 12 unmodified lines
15121512 * \history 11/16/2009
15131513 */
15141514 void ForceResetCurrentAccessUnit (PAccessUnit pAu) {
1515− uint32_t uiSucAuIdx = pAu->uiEndPos + 1;
1516− uint32_t uiCurAuIdx = 0;
1515+ uint32_t uiSucAuIdx = pAu->uiEndPos + 1;
1516+ uint32_t uiCurAuIdx = 0;
15171517
15181518 // swap the succeeding AU's nal units to the front
15191519 while (uiSucAuIdx < pAu->uiAvailUnitsNum) {
15201520 PNalUnit t = pAu->pNalUnitsList[uiSucAuIdx];
1521− pAu->pNalUnitsList[uiSucAuIdx] = pAu->pNalUnitsList[uiCurAuIdx];
1522− pAu->pNalUnitsList[uiCurAuIdx] = t;
1521+ pAu->pNalUnitsList[uiSucAuIdx] = pAu->pNalUnitsList[uiCurAuIdx];
1522+ pAu->pNalUnitsList[uiCurAuIdx] = t;
15231523 ++ uiSucAuIdx;
15241524 ++ uiCurAuIdx;
15251525 }
15261526
15271527 // Update avail/actual units num accordingly for next AU parsing
15281528 if (pAu->uiAvailUnitsNum > pAu->uiEndPos)
1529− pAu->uiAvailUnitsNum -= (pAu->uiEndPos + 1);
1529+ pAu->uiAvailUnitsNum -= (pAu->uiEndPos + 1);
15301530 else
1531− pAu->uiAvailUnitsNum = 0;
1532− pAu->uiActualUnitsNum = 0;
1531+ pAu->uiAvailUnitsNum = 0;
1532+ pAu->uiActualUnitsNum = 0;
15331533 pAu->uiStartPos = 0;
1534− pAu->uiEndPos = 0;
1535− pAu->bCompletedAuFlag = false;
1534+ pAu->uiEndPos = 0;
1535+ pAu->bCompletedAuFlag = false;
15361536 }
15371537
15381538 //clear current corrupted NAL from pNalUnitsList
@@ -1547,11 +1547,11 @@ void ForceResetParaSetStatusAndAUList (PWelsDecoderContext pCtx) { · 8 unmodified lines
15471547 pCtx->bPpsExistAheadFlag = false;
15481548
15491549 // Force clear the AU list
1550− pCtx->pAccessUnitList->uiAvailUnitsNum = 0;
1551− pCtx->pAccessUnitList->uiActualUnitsNum = 0;
1552− pCtx->pAccessUnitList->uiStartPos = 0;
1553− pCtx->pAccessUnitList->uiEndPos = 0;
1554− pCtx->pAccessUnitList->bCompletedAuFlag = false;
1550+ pCtx->pAccessUnitList->uiAvailUnitsNum = 0;
1551+ pCtx->pAccessUnitList->uiActualUnitsNum = 0;
1552+ pCtx->pAccessUnitList->uiStartPos = 0;
1553+ pCtx->pAccessUnitList->uiEndPos = 0;
1554+ pCtx->pAccessUnitList->bCompletedAuFlag = false;
15551555 }
15561556
15571557 void CheckAvailNalUnitsListContinuity (PWelsDecoderContext pCtx, int32_t iStartIdx, int32_t iEndIdx) {
@@ -1985,35 +1985,35 @@ int32_t ConstructAccessUnit (PWelsDecoderContext pCtx, uint8_t** ppDst, SBufferI · 427 unmodified lines
19851985
19861986 static inline void InitDqLayerInfo (PDqLayer pDqLayer, PLayerInfo pLayerInfo, PNalUnit pNalUnit, PPicture pPicDec) {
19871987 PNalUnitHeaderExt pNalHdrExt = &pNalUnit->sNalHeaderExt;
1988− PSliceHeaderExt pShExt = &pNalUnit->sNalData.sVclNal.sSliceHeaderExt;
1989− PSliceHeader pSh = &pShExt->sSliceHeader;
1990− const uint8_t kuiQualityId = pNalHdrExt->uiQualityId;
1988+ PSliceHeaderExt pShExt = &pNalUnit->sNalData.sVclNal.sSliceHeaderExt;
1989+ PSliceHeader pSh = &pShExt->sSliceHeader;
1990+ const uint8_t kuiQualityId = pNalHdrExt->uiQualityId;
19911991
19921992 memcpy (&pDqLayer->sLayerInfo, pLayerInfo, sizeof (SLayerInfo)); //confirmed_safe_unsafe_usage
19931993
1994− pDqLayer->pDec = pPicDec;
1995− pDqLayer->iMbWidth = pSh->iMbWidth; // MB width of this picture
1996− pDqLayer->iMbHeight = pSh->iMbHeight;// MB height of this picture
1994+ pDqLayer->pDec = pPicDec;
1995+ pDqLayer->iMbWidth = pSh->iMbWidth; // MB width of this picture
1996+ pDqLayer->iMbHeight = pSh->iMbHeight;// MB height of this picture
19971997
19981998 pDqLayer->iSliceIdcBackup = (pSh->iFirstMbInSlice << 7) | (pNalHdrExt->uiDependencyId << 4) | (pNalHdrExt->uiQualityId);
19991999
20002000 /* Common syntax elements across all slices of a DQLayer */
2001− pDqLayer->uiPpsId = pLayerInfo->pPps->iPpsId;
2002− pDqLayer->uiDisableInterLayerDeblockingFilterIdc = pShExt->uiDisableInterLayerDeblockingFilterIdc;
2003− pDqLayer->iInterLayerSliceAlphaC0Offset = pShExt->iInterLayerSliceAlphaC0Offset;
2004− pDqLayer->iInterLayerSliceBetaOffset = pShExt->iInterLayerSliceBetaOffset;
2005− pDqLayer->iSliceGroupChangeCycle = pSh->iSliceGroupChangeCycle;
2006− pDqLayer->bStoreRefBasePicFlag = pShExt->bStoreRefBasePicFlag;
2007− pDqLayer->bTCoeffLevelPredFlag = pShExt->bTCoeffLevelPredFlag;
2008− pDqLayer->bConstrainedIntraResamplingFlag = pShExt->bConstrainedIntraResamplingFlag;
2009− pDqLayer->uiRefLayerDqId = pShExt->uiRefLayerDqId;
2010− pDqLayer->uiRefLayerChromaPhaseXPlus1Flag = pShExt->uiRefLayerChromaPhaseXPlus1Flag;
2011− pDqLayer->uiRefLayerChromaPhaseYPlus1 = pShExt->uiRefLayerChromaPhaseYPlus1;
2001+ pDqLayer->uiPpsId = pLayerInfo->pPps->iPpsId;
2002+ pDqLayer->uiDisableInterLayerDeblockingFilterIdc = pShExt->uiDisableInterLayerDeblockingFilterIdc;
2003+ pDqLayer->iInterLayerSliceAlphaC0Offset = pShExt->iInterLayerSliceAlphaC0Offset;
2004+ pDqLayer->iInterLayerSliceBetaOffset = pShExt->iInterLayerSliceBetaOffset;
2005+ pDqLayer->iSliceGroupChangeCycle = pSh->iSliceGroupChangeCycle;
2006+ pDqLayer->bStoreRefBasePicFlag = pShExt->bStoreRefBasePicFlag;
2007+ pDqLayer->bTCoeffLevelPredFlag = pShExt->bTCoeffLevelPredFlag;
2008+ pDqLayer->bConstrainedIntraResamplingFlag = pShExt->bConstrainedIntraResamplingFlag;
2009+ pDqLayer->uiRefLayerDqId = pShExt->uiRefLayerDqId;
2010+ pDqLayer->uiRefLayerChromaPhaseXPlus1Flag = pShExt->uiRefLayerChromaPhaseXPlus1Flag;
2011+ pDqLayer->uiRefLayerChromaPhaseYPlus1 = pShExt->uiRefLayerChromaPhaseYPlus1;
20122012 //memcpy(&pDqLayer->sScaledRefLayer, &pShExt->sScaledRefLayer, sizeof(SPosOffset));//confirmed_safe_unsafe_usage
20132013
20142014 if (kuiQualityId == BASE_QUALITY_ID) {
2015− pDqLayer->pRefPicListReordering = &pSh->pRefPicListReordering;
2016− pDqLayer->pRefPicMarking = &pSh->sRefMarking;
2015+ pDqLayer->pRefPicListReordering = &pSh->pRefPicListReordering;
2016+ pDqLayer->pRefPicMarking = &pSh->sRefMarking;
20172017
20182018 if (pSh->pPps->bWeightedPredFlag) {
20192019 pDqLayer->bUseWeightPredictionFlag = true;
@@ -2022,20 +2022,20 @@ static inline void InitDqLayerInfo (PDqLayer pDqLayer, PLayerInfo pLayerInfo, PN · 2 unmodified lines
20222022 } else
20232023 pDqLayer->bUseWeightPredictionFlag = false;
20242024
2025− pDqLayer->pRefPicBaseMarking = &pShExt->sRefBasePicMarking;
2025+ pDqLayer->pRefPicBaseMarking = &pShExt->sRefBasePicMarking;
20262026 }
20272027
2028− pDqLayer->uiLayerDqId = pNalHdrExt->uiLayerDqId; // dq_id of current layer
2029− pDqLayer->bUseRefBasePicFlag = pNalHdrExt->bUseRefBasePicFlag;
2028+ pDqLayer->uiLayerDqId = pNalHdrExt->uiLayerDqId; // dq_id of current layer
2029+ pDqLayer->bUseRefBasePicFlag = pNalHdrExt->bUseRefBasePicFlag;
20302030 }
20312031
20322032 void WelsDqLayerDecodeStart (PWelsDecoderContext pCtx, PNalUnit pCurNal, PSps pSps, PPps pPps) {
20332033 PSliceHeader pSh = &pCurNal->sNalData.sVclNal.sSliceHeaderExt.sSliceHeader;
20342034
2035− pCtx->eSliceType = pSh->eSliceType;
2036− pCtx->pSliceHeader = pSh;
2035+ pCtx->eSliceType = pSh->eSliceType;
2036+ pCtx->pSliceHeader = pSh;
20372037
2038− pCtx->iFrameNum = pSh->iFrameNum;
2038+ pCtx->iFrameNum = pSh->iFrameNum;
20392039 }
20402040
20412041 int32_t InitRefPicList (PWelsDecoderContext pCtx, const uint8_t kuiNRi, int32_t iPoc) {
@@ -2050,18 +2050,18 @@ int32_t InitRefPicList (PWelsDecoderContext pCtx, const uint8_t kuiNRi, int32_t · 8 unmodified lines
20502050
20512051 void InitCurDqLayerData (PWelsDecoderContext pCtx, PDqLayer pCurDq) {
20522052 if (NULL != pCtx && NULL != pCurDq) {
2053− pCurDq->pMbType = pCtx->sMb.pMbType[0];
2054− pCurDq->pSliceIdc = pCtx->sMb.pSliceIdc[0];
2055− pCurDq->pMv[0] = pCtx->sMb.pMv[0][0];
2053+ pCurDq->pMbType = pCtx->sMb.pMbType[0];
2054+ pCurDq->pSliceIdc = pCtx->sMb.pSliceIdc[0];
2055+ pCurDq->pMv[0] = pCtx->sMb.pMv[0][0];
20562056 pCurDq->pRefIndex[0] = pCtx->sMb.pRefIndex[0][0];
20572057 pCurDq->pNoSubMbPartSizeLessThan8x8Flag = pCtx->sMb.pNoSubMbPartSizeLessThan8x8Flag[0];
20582058 pCurDq->pTransformSize8x8Flag = pCtx->sMb.pTransformSize8x8Flag[0];
20592059 pCurDq->pLumaQp = pCtx->sMb.pLumaQp[0];
20602060 pCurDq->pChromaQp = pCtx->sMb.pChromaQp[0];
2061− pCurDq->pMvd[0] = pCtx->sMb.pMvd[0][0];
2062− pCurDq->pCbfDc = pCtx->sMb.pCbfDc[0];
2063− pCurDq->pNzc = pCtx->sMb.pNzc[0];
2064− pCurDq->pNzcRs = pCtx->sMb.pNzcRs[0];
2061+ pCurDq->pMvd[0] = pCtx->sMb.pMvd[0][0];
2062+ pCurDq->pCbfDc = pCtx->sMb.pCbfDc[0];
2063+ pCurDq->pNzc = pCtx->sMb.pNzc[0];
2064+ pCurDq->pNzcRs = pCtx->sMb.pNzcRs[0];
20652065 pCurDq->pScaledTCoeff = pCtx->sMb.pScaledTCoeff[0];
20662066 pCurDq->pIntraPredMode = pCtx->sMb.pIntraPredMode[0];
20672067 pCurDq->pIntra4x4FinalMode = pCtx->sMb.pIntra4x4FinalMode[0];
@@ -2156,10 +2156,10 @@ int32_t DecodeCurrentAccessUnit (PWelsDecoderContext pCtx, uint8_t** ppDst, SBuf · 88 unmodified lines
21562156 */
21572157 while (iIdx <= iEndIdx) {
21582158 bool bReconstructSlice;
2159− iCurrIdQ = pNalCur->sNalHeaderExt.uiQualityId;
2160− iCurrIdD = pNalCur->sNalHeaderExt.uiDependencyId;
2161− pSh = &pNalCur->sNalData.sVclNal.sSliceHeaderExt.sSliceHeader;
2162− pShExt = &pNalCur->sNalData.sVclNal.sSliceHeaderExt;
2159+ iCurrIdQ = pNalCur->sNalHeaderExt.uiQualityId;
2160+ iCurrIdD = pNalCur->sNalHeaderExt.uiDependencyId;
2161+ pSh = &pNalCur->sNalData.sVclNal.sSliceHeaderExt.sSliceHeader;
2162+ pShExt = &pNalCur->sNalData.sVclNal.sSliceHeaderExt;
21632163 pCtx->bRPLRError = false;
21642164 bReconstructSlice = CheckSliceNeedReconstruct (pNalCur->sNalHeaderExt.uiLayerDqId, kuiTargetLayerDqId);
21652165
@@ -2170,14 +2170,14 @@ int32_t DecodeCurrentAccessUnit (PWelsDecoderContext pCtx, uint8_t** ppDst, SBuf · 4 unmodified lines
21702170 pCtx->pDec->bIdrFlag = pNalCur->sNalHeaderExt.bIdrFlag;
21712171
21722172 memcpy (&pLayerInfo.sSliceInLayer.sSliceHeaderExt, pShExt, sizeof (SSliceHeaderExt)); //confirmed_safe_unsafe_usage
2173− pLayerInfo.sSliceInLayer.bSliceHeaderExtFlag = pNalCur->sNalData.sVclNal.bSliceHeaderExtFlag;
2174− pLayerInfo.sSliceInLayer.eSliceType = pSh->eSliceType;
2175− pLayerInfo.sSliceInLayer.iLastMbQp = pSh->iSliceQp;
2176− dq_cur->pBitStringAux = &pNalCur->sNalData.sVclNal.sSliceBitsRead;
2173+ pLayerInfo.sSliceInLayer.bSliceHeaderExtFlag = pNalCur->sNalData.sVclNal.bSliceHeaderExtFlag;
2174+ pLayerInfo.sSliceInLayer.eSliceType = pSh->eSliceType;
2175+ pLayerInfo.sSliceInLayer.iLastMbQp = pSh->iSliceQp;
2176+ dq_cur->pBitStringAux = &pNalCur->sNalData.sVclNal.sSliceBitsRead;
21772177
2178− uiNalRefIdc = pNalCur->sNalHeaderExt.sNalUnitHeader.uiNalRefIdc;
2178+ uiNalRefIdc = pNalCur->sNalHeaderExt.sNalUnitHeader.uiNalRefIdc;
21792179
2180− iPpsId = pSh->iPpsId;
2180+ iPpsId = pSh->iPpsId;
21812181
21822182 pLayerInfo.pPps = pSh->pPps;
21832183 pLayerInfo.pSps = pSh->pSps;

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