History

remove "\n" which shoudl be added by the trace sink

ruil2 committed 12 years ago

Commit 40e952f1 parent bac551116 files · +249 −249Browse files

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

Unified · Split

codec/decoder/core/src/decoder_core.cpp+31−31
@@ -66,7 +66,7 @@ static inline int32_t DecodeFrameConstruction (PWelsDecoderContext pCtx, uint8_t · 65 unmodified lines
66 if (pCtx->iTotalNumMbRec == kiTotalNumMbInCurLayer) {66 if (pCtx->iTotalNumMbRec == kiTotalNumMbInCurLayer) {
67 pCtx->bPrintFrameErrorTraceFlag = true;67 pCtx->bPrintFrameErrorTraceFlag = true;
68 WelsLog (& (pCtx->sLogCtx), WELS_LOG_INFO,68 WelsLog (& (pCtx->sLogCtx), WELS_LOG_INFO,
69 "DecodeFrameConstruction()::::output first frame of new sequence, %d x %d, crop_left:%d, crop_right:%d, crop_top:%d, crop_bottom:%d, ignored error packet:%d.\n",69 "DecodeFrameConstruction()::::output first frame of new sequence, %d x %d, crop_left:%d, crop_right:%d, crop_top:%d, crop_bottom:%d, ignored error packet:%d.",
70 kiWidth, kiHeight, pCtx->sFrameCrop.iLeftOffset, pCtx->sFrameCrop.iRightOffset, pCtx->sFrameCrop.iTopOffset,70 kiWidth, kiHeight, pCtx->sFrameCrop.iLeftOffset, pCtx->sFrameCrop.iRightOffset, pCtx->sFrameCrop.iTopOffset,
71 pCtx->sFrameCrop.iBottomOffset, pCtx->iIgnoredErrorInfoPacketCount);71 pCtx->sFrameCrop.iBottomOffset, pCtx->iIgnoredErrorInfoPacketCount);
72 pCtx->iIgnoredErrorInfoPacketCount = 0;72 pCtx->iIgnoredErrorInfoPacketCount = 0;
@@ -75,7 +75,7 @@ static inline int32_t DecodeFrameConstruction (PWelsDecoderContext pCtx, uint8_t · 2 unmodified lines
75 75
76 if (pCtx->iTotalNumMbRec != kiTotalNumMbInCurLayer) {76 if (pCtx->iTotalNumMbRec != kiTotalNumMbInCurLayer) {
77 WelsLog (& (pCtx->sLogCtx), WELS_LOG_DEBUG,77 WelsLog (& (pCtx->sLogCtx), WELS_LOG_DEBUG,
78 "DecodeFrameConstruction():::iTotalNumMbRec:%d, total_num_mb_sps:%d, cur_layer_mb_width:%d, cur_layer_mb_height:%d \n",78 "DecodeFrameConstruction():::iTotalNumMbRec:%d, total_num_mb_sps:%d, cur_layer_mb_width:%d, cur_layer_mb_height:%d ",
79 pCtx->iTotalNumMbRec, kiTotalNumMbInCurLayer, pCurDq->iMbWidth, pCurDq->iMbHeight);79 pCtx->iTotalNumMbRec, kiTotalNumMbInCurLayer, pCurDq->iMbWidth, pCurDq->iMbHeight);
80 bFrameCompleteFlag = false; //return later after output buffer is done80 bFrameCompleteFlag = false; //return later after output buffer is done
81 if (pCtx->bInstantDecFlag) //no-delay decoding, wait for new slice81 if (pCtx->bInstantDecFlag) //no-delay decoding, wait for new slice
@@ -501,7 +501,7 @@ int32_t ParseSliceHeaderSyntaxs (PWelsDecoderContext pCtx, PBitStringAux pBs, co · 419 unmodified lines
501 WELS_READ_VERIFY (BsGetUe (pBs, &uiCode)); //slice_type501 WELS_READ_VERIFY (BsGetUe (pBs, &uiCode)); //slice_type
502 uiSliceType = uiCode;502 uiSliceType = uiCode;
503 if (uiSliceType > 9) {503 if (uiSliceType > 9) {
504 WelsLog (pLogCtx, WELS_LOG_WARNING, "slice type too large (%d) at first_mb(%d)\n", uiSliceType,504 WelsLog (pLogCtx, WELS_LOG_WARNING, "slice type too large (%d) at first_mb(%d)", uiSliceType,
505 pSliceHead->iFirstMbInSlice);505 pSliceHead->iFirstMbInSlice);
506 return GENERATE_ERROR_NO (ERR_LEVEL_SLICE_HEADER, ERR_INFO_INVALID_SLICE_TYPE);506 return GENERATE_ERROR_NO (ERR_LEVEL_SLICE_HEADER, ERR_INFO_INVALID_SLICE_TYPE);
507 }507 }
@@ -509,17 +509,17 @@ int32_t ParseSliceHeaderSyntaxs (PWelsDecoderContext pCtx, PBitStringAux pBs, co · 1 unmodified line
509 uiSliceType -= 5;509 uiSliceType -= 5;
510 510
511 if (B_SLICE == uiSliceType) {511 if (B_SLICE == uiSliceType) {
512 WelsLog (pLogCtx, WELS_LOG_WARNING, "ParseSliceHeaderSyntaxs(): B slice not supported.\n");512 WelsLog (pLogCtx, WELS_LOG_WARNING, "ParseSliceHeaderSyntaxs(): B slice not supported.");
513 return GENERATE_ERROR_NO (ERR_LEVEL_SLICE_HEADER, ERR_INFO_UNSUPPORTED_BIPRED);513 return GENERATE_ERROR_NO (ERR_LEVEL_SLICE_HEADER, ERR_INFO_UNSUPPORTED_BIPRED);
514 }514 }
515 if ((NAL_UNIT_CODED_SLICE_IDR == eNalType) && (I_SLICE != uiSliceType)) {515 if ((NAL_UNIT_CODED_SLICE_IDR == eNalType) && (I_SLICE != uiSliceType)) {
516 WelsLog (pLogCtx, WELS_LOG_WARNING, "Invalid slice type(%d) in IDR picture. \n", uiSliceType);516 WelsLog (pLogCtx, WELS_LOG_WARNING, "Invalid slice type(%d) in IDR picture. ", uiSliceType);
517 return GENERATE_ERROR_NO (ERR_LEVEL_SLICE_HEADER, ERR_INFO_INVALID_SLICE_TYPE);517 return GENERATE_ERROR_NO (ERR_LEVEL_SLICE_HEADER, ERR_INFO_INVALID_SLICE_TYPE);
518 }518 }
519 519
520 if (kbExtensionFlag) {520 if (kbExtensionFlag) {
521 if (uiSliceType > 2) {521 if (uiSliceType > 2) {
522 WelsLog (pLogCtx, WELS_LOG_WARNING, "Invalid slice type(%d).\n", uiSliceType);522 WelsLog (pLogCtx, WELS_LOG_WARNING, "Invalid slice type(%d).", uiSliceType);
523 return GENERATE_ERROR_NO (ERR_LEVEL_SLICE_HEADER, ERR_INFO_INVALID_SLICE_TYPE);523 return GENERATE_ERROR_NO (ERR_LEVEL_SLICE_HEADER, ERR_INFO_INVALID_SLICE_TYPE);
524 }524 }
525 }525 }
@@ -530,20 +530,20 @@ int32_t ParseSliceHeaderSyntaxs (PWelsDecoderContext pCtx, PBitStringAux pBs, co · 4 unmodified lines
530 iPpsId = uiCode;530 iPpsId = uiCode;
531 531
532 if (iPpsId >= MAX_PPS_COUNT) {532 if (iPpsId >= MAX_PPS_COUNT) {
533 WelsLog (pLogCtx, WELS_LOG_WARNING, "iPpsId out of range\n");533 WelsLog (pLogCtx, WELS_LOG_WARNING, "iPpsId out of range");
534 return GENERATE_ERROR_NO (ERR_LEVEL_SLICE_HEADER, ERR_INFO_PPS_ID_OVERFLOW);534 return GENERATE_ERROR_NO (ERR_LEVEL_SLICE_HEADER, ERR_INFO_PPS_ID_OVERFLOW);
535 }535 }
536 536
537 //add check PPS available here537 //add check PPS available here
538 if (pCtx->bPpsAvailFlags[iPpsId] == false) {538 if (pCtx->bPpsAvailFlags[iPpsId] == false) {
539 WelsLog (pLogCtx, WELS_LOG_ERROR, "PPS id is invalid!\n");539 WelsLog (pLogCtx, WELS_LOG_ERROR, "PPS id is invalid!");
540 return GENERATE_ERROR_NO (ERR_LEVEL_SLICE_HEADER, ERR_INFO_INVALID_PPS_ID);540 return GENERATE_ERROR_NO (ERR_LEVEL_SLICE_HEADER, ERR_INFO_INVALID_PPS_ID);
541 }541 }
542 542
543 pPps = &pCtx->sPpsBuffer[iPpsId];543 pPps = &pCtx->sPpsBuffer[iPpsId];
544 544
545 if (pPps->uiNumSliceGroups == 0) {545 if (pPps->uiNumSliceGroups == 0) {
546 WelsLog (pLogCtx, WELS_LOG_WARNING, "non existing PPS referenced\n");546 WelsLog (pLogCtx, WELS_LOG_WARNING, "non existing PPS referenced");
547 return GENERATE_ERROR_NO (ERR_LEVEL_SLICE_HEADER, ERR_INFO_NO_PARAM_SETS);547 return GENERATE_ERROR_NO (ERR_LEVEL_SLICE_HEADER, ERR_INFO_NO_PARAM_SETS);
548 }548 }
549 549
@@ -551,12 +551,12 @@ int32_t ParseSliceHeaderSyntaxs (PWelsDecoderContext pCtx, PBitStringAux pBs, co · 1 unmodified line
551 pSubsetSps = &pCtx->sSubsetSpsBuffer[pPps->iSpsId];551 pSubsetSps = &pCtx->sSubsetSpsBuffer[pPps->iSpsId];
552 pSps = &pSubsetSps->sSps;552 pSps = &pSubsetSps->sSps;
553 if (pCtx->bSubspsAvailFlags[pPps->iSpsId] == false) {553 if (pCtx->bSubspsAvailFlags[pPps->iSpsId] == false) {
554 WelsLog (pLogCtx, WELS_LOG_ERROR, "SPS id is invalid!\n");554 WelsLog (pLogCtx, WELS_LOG_ERROR, "SPS id is invalid!");
555 return GENERATE_ERROR_NO (ERR_LEVEL_SLICE_HEADER, ERR_INFO_INVALID_SPS_ID);555 return GENERATE_ERROR_NO (ERR_LEVEL_SLICE_HEADER, ERR_INFO_INVALID_SPS_ID);
556 }556 }
557 } else {557 } else {
558 if (pCtx->bSpsAvailFlags[pPps->iSpsId] == false) {558 if (pCtx->bSpsAvailFlags[pPps->iSpsId] == false) {
559 WelsLog (pLogCtx, WELS_LOG_ERROR, "SPS id is invalid!\n");559 WelsLog (pLogCtx, WELS_LOG_ERROR, "SPS id is invalid!");
560 return GENERATE_ERROR_NO (ERR_LEVEL_SLICE_HEADER, ERR_INFO_INVALID_SPS_ID);560 return GENERATE_ERROR_NO (ERR_LEVEL_SLICE_HEADER, ERR_INFO_INVALID_SPS_ID);
561 }561 }
562 pSps = &pCtx->sSpsBuffer[pPps->iSpsId];562 pSps = &pCtx->sSpsBuffer[pPps->iSpsId];
@@ -571,7 +571,7 @@ int32_t ParseSliceHeaderSyntaxs (PWelsDecoderContext pCtx, PBitStringAux pBs, co · 8 unmodified lines
571 bIdrFlag = (!kbExtensionFlag && eNalType == NAL_UNIT_CODED_SLICE_IDR) || (kbExtensionFlag && pNalHeaderExt->bIdrFlag);571 bIdrFlag = (!kbExtensionFlag && eNalType == NAL_UNIT_CODED_SLICE_IDR) || (kbExtensionFlag && pNalHeaderExt->bIdrFlag);
572 572
573 if (pSps->uiLog2MaxFrameNum == 0) {573 if (pSps->uiLog2MaxFrameNum == 0) {
574 WelsLog (pLogCtx, WELS_LOG_WARNING, "non existing SPS referenced\n");574 WelsLog (pLogCtx, WELS_LOG_WARNING, "non existing SPS referenced");
575 return GENERATE_ERROR_NO (ERR_LEVEL_SLICE_HEADER, ERR_INFO_NO_PARAM_SETS);575 return GENERATE_ERROR_NO (ERR_LEVEL_SLICE_HEADER, ERR_INFO_NO_PARAM_SETS);
576 }576 }
577 // check first_mb_in_slice577 // check first_mb_in_slice
@@ -583,7 +583,7 @@ int32_t ParseSliceHeaderSyntaxs (PWelsDecoderContext pCtx, PBitStringAux pBs, co · 5 unmodified lines
583 pSliceHead->bFieldPicFlag = false;583 pSliceHead->bFieldPicFlag = false;
584 pSliceHead->bBottomFiledFlag = false;584 pSliceHead->bBottomFiledFlag = false;
585 if (!pSps->bFrameMbsOnlyFlag) {585 if (!pSps->bFrameMbsOnlyFlag) {
586 WelsLog (pLogCtx, WELS_LOG_WARNING, "ParseSliceHeaderSyntaxs(): frame_mbs_only_flag = %d not supported. \n",586 WelsLog (pLogCtx, WELS_LOG_WARNING, "ParseSliceHeaderSyntaxs(): frame_mbs_only_flag = %d not supported. ",
587 pSps->bFrameMbsOnlyFlag);587 pSps->bFrameMbsOnlyFlag);
588 return GENERATE_ERROR_NO (ERR_LEVEL_SLICE_HEADER, ERR_INFO_UNSUPPORTED_MBAFF);588 return GENERATE_ERROR_NO (ERR_LEVEL_SLICE_HEADER, ERR_INFO_UNSUPPORTED_MBAFF);
589 }589 }
@@ -593,7 +593,7 @@ int32_t ParseSliceHeaderSyntaxs (PWelsDecoderContext pCtx, PBitStringAux pBs, co · 3 unmodified lines
593 if (bIdrFlag) {593 if (bIdrFlag) {
594 if (pSliceHead->iFrameNum != 0) {594 if (pSliceHead->iFrameNum != 0) {
595 WelsLog (pLogCtx, WELS_LOG_WARNING,595 WelsLog (pLogCtx, WELS_LOG_WARNING,
596 "ParseSliceHeaderSyntaxs(), invaild frame number: %d due to IDR frame introduced!\n",596 "ParseSliceHeaderSyntaxs(), invaild frame number: %d due to IDR frame introduced!",
597 pSliceHead->iFrameNum);597 pSliceHead->iFrameNum);
598 return GENERATE_ERROR_NO (ERR_LEVEL_SLICE_HEADER, ERR_INFO_INVALID_FRAME_NUM);598 return GENERATE_ERROR_NO (ERR_LEVEL_SLICE_HEADER, ERR_INFO_INVALID_FRAME_NUM);
599 }599 }
@@ -655,14 +655,14 @@ int32_t ParseSliceHeaderSyntaxs (PWelsDecoderContext pCtx, PBitStringAux pBs, co · 55 unmodified lines
655 }655 }
656 656
657 if (pSliceHead->uiRefCount[0] > MAX_REF_PIC_COUNT || pSliceHead->uiRefCount[1] > MAX_REF_PIC_COUNT) {657 if (pSliceHead->uiRefCount[0] > MAX_REF_PIC_COUNT || pSliceHead->uiRefCount[1] > MAX_REF_PIC_COUNT) {
658 WelsLog (pLogCtx, WELS_LOG_WARNING, "reference overflow\n");658 WelsLog (pLogCtx, WELS_LOG_WARNING, "reference overflow");
659 return GENERATE_ERROR_NO (ERR_LEVEL_SLICE_HEADER, ERR_INFO_REF_COUNT_OVERFLOW);659 return GENERATE_ERROR_NO (ERR_LEVEL_SLICE_HEADER, ERR_INFO_REF_COUNT_OVERFLOW);
660 }660 }
661 661
662 if (BASE_QUALITY_ID == uiQualityId) {662 if (BASE_QUALITY_ID == uiQualityId) {
663 iRet = ParseRefPicListReordering (pBs, pSliceHead);663 iRet = ParseRefPicListReordering (pBs, pSliceHead);
664 if (iRet != ERR_NONE) {664 if (iRet != ERR_NONE) {
665 WelsLog (pLogCtx, WELS_LOG_WARNING, "invalid ref pPic list reordering syntaxs!\n");665 WelsLog (pLogCtx, WELS_LOG_WARNING, "invalid ref pPic list reordering syntaxs!");
666 return iRet;666 return iRet;
667 }667 }
668 668
@@ -684,7 +684,7 @@ int32_t ParseSliceHeaderSyntaxs (PWelsDecoderContext pCtx, PBitStringAux pBs, co · 15 unmodified lines
684 pSliceHeadExt->bStoreRefBasePicFlag = !!uiCode;684 pSliceHeadExt->bStoreRefBasePicFlag = !!uiCode;
685 if ((pNalHeaderExt->bUseRefBasePicFlag || pSliceHeadExt->bStoreRefBasePicFlag) && !bIdrFlag) {685 if ((pNalHeaderExt->bUseRefBasePicFlag || pSliceHeadExt->bStoreRefBasePicFlag) && !bIdrFlag) {
686 WelsLog (pLogCtx, WELS_LOG_WARNING,686 WelsLog (pLogCtx, WELS_LOG_WARNING,
687 "ParseSliceHeaderSyntaxs(): bUseRefBasePicFlag or bStoreRefBasePicFlag = 1 not supported.\n");687 "ParseSliceHeaderSyntaxs(): bUseRefBasePicFlag or bStoreRefBasePicFlag = 1 not supported.");
688 return GENERATE_ERROR_NO (ERR_LEVEL_SLICE_HEADER, ERR_INFO_UNSUPPORTED_ILP);688 return GENERATE_ERROR_NO (ERR_LEVEL_SLICE_HEADER, ERR_INFO_UNSUPPORTED_ILP);
689 }689 }
690 }690 }
@@ -692,7 +692,7 @@ int32_t ParseSliceHeaderSyntaxs (PWelsDecoderContext pCtx, PBitStringAux pBs, co · 1 unmodified line
692 }692 }
693 693
694 if (pPps->bEntropyCodingModeFlag) {694 if (pPps->bEntropyCodingModeFlag) {
695 WelsLog (pLogCtx, WELS_LOG_WARNING, "ParseSliceHeaderSyntaxs(): CABAC in Enhancement layer not supported.\n");695 WelsLog (pLogCtx, WELS_LOG_WARNING, "ParseSliceHeaderSyntaxs(): CABAC in Enhancement layer not supported.");
696 return GENERATE_ERROR_NO (ERR_LEVEL_SLICE_HEADER, ERR_INFO_UNSUPPORTED_CABAC_EL);696 return GENERATE_ERROR_NO (ERR_LEVEL_SLICE_HEADER, ERR_INFO_UNSUPPORTED_CABAC_EL);
697 }697 }
698 698
@@ -700,14 +700,14 @@ int32_t ParseSliceHeaderSyntaxs (PWelsDecoderContext pCtx, PBitStringAux pBs, co · 1 unmodified line
700 pSliceHead->iSliceQpDelta = iCode;700 pSliceHead->iSliceQpDelta = iCode;
701 pSliceHead->iSliceQp = pPps->iPicInitQp + pSliceHead->iSliceQpDelta;701 pSliceHead->iSliceQp = pPps->iPicInitQp + pSliceHead->iSliceQpDelta;
702 if (pSliceHead->iSliceQp < 0 || pSliceHead->iSliceQp > 51) {702 if (pSliceHead->iSliceQp < 0 || pSliceHead->iSliceQp > 51) {
703 WelsLog (pLogCtx, WELS_LOG_WARNING, "QP %d out of range\n", pSliceHead->iSliceQp);703 WelsLog (pLogCtx, WELS_LOG_WARNING, "QP %d out of range", pSliceHead->iSliceQp);
704 return GENERATE_ERROR_NO (ERR_LEVEL_SLICE_HEADER, ERR_INFO_INVALID_QP);704 return GENERATE_ERROR_NO (ERR_LEVEL_SLICE_HEADER, ERR_INFO_INVALID_QP);
705 }705 }
706 706
707 //FIXME qscale / qp ... stuff707 //FIXME qscale / qp ... stuff
708 if (!kbExtensionFlag) {708 if (!kbExtensionFlag) {
709 if (uiSliceType == SP_SLICE || uiSliceType == SI_SLICE) {709 if (uiSliceType == SP_SLICE || uiSliceType == SI_SLICE) {
710 WelsLog (pLogCtx, WELS_LOG_WARNING, "SP/SI not supported\n");710 WelsLog (pLogCtx, WELS_LOG_WARNING, "SP/SI not supported");
711 return GENERATE_ERROR_NO (ERR_LEVEL_SLICE_HEADER, ERR_INFO_UNSUPPORTED_SPSI);711 return GENERATE_ERROR_NO (ERR_LEVEL_SLICE_HEADER, ERR_INFO_UNSUPPORTED_SPSI);
712 }712 }
713 }713 }
@@ -720,7 +720,7 @@ int32_t ParseSliceHeaderSyntaxs (PWelsDecoderContext pCtx, PBitStringAux pBs, co · 6 unmodified lines
720 pSliceHead->uiDisableDeblockingFilterIdc = uiCode;720 pSliceHead->uiDisableDeblockingFilterIdc = uiCode;
721 //refer to JVT-X201wcm1.doc G.7.4.3.4--2010.4.20721 //refer to JVT-X201wcm1.doc G.7.4.3.4--2010.4.20
722 if (pSliceHead->uiDisableDeblockingFilterIdc > 6) {722 if (pSliceHead->uiDisableDeblockingFilterIdc > 6) {
723 WelsLog (pLogCtx, WELS_LOG_WARNING, "disable_deblock_filter_idc (%d) out of range [0, 6]\n",723 WelsLog (pLogCtx, WELS_LOG_WARNING, "disable_deblock_filter_idc (%d) out of range [0, 6]",
724 pSliceHead->uiDisableDeblockingFilterIdc);724 pSliceHead->uiDisableDeblockingFilterIdc);
725 return ERR_INFO_INVALID_DBLOCKING_IDC;725 return ERR_INFO_INVALID_DBLOCKING_IDC;
726 }726 }
@@ -767,7 +767,7 @@ int32_t ParseSliceHeaderSyntaxs (PWelsDecoderContext pCtx, PBitStringAux pBs, co · 40 unmodified lines
767 pSliceHeadExt->uiDisableInterLayerDeblockingFilterIdc = uiCode;767 pSliceHeadExt->uiDisableInterLayerDeblockingFilterIdc = uiCode;
768 //refer to JVT-X201wcm1.doc G.7.4.3.4--2010.4.20768 //refer to JVT-X201wcm1.doc G.7.4.3.4--2010.4.20
769 if (pSliceHeadExt->uiDisableInterLayerDeblockingFilterIdc > 6) {769 if (pSliceHeadExt->uiDisableInterLayerDeblockingFilterIdc > 6) {
770 WelsLog (& (pCtx->sLogCtx), WELS_LOG_WARNING, "disable_inter_layer_deblock_filter_idc (%d) out of range [0, 6]\n",770 WelsLog (& (pCtx->sLogCtx), WELS_LOG_WARNING, "disable_inter_layer_deblock_filter_idc (%d) out of range [0, 6]",
771 pSliceHeadExt->uiDisableInterLayerDeblockingFilterIdc);771 pSliceHeadExt->uiDisableInterLayerDeblockingFilterIdc);
772 return ERR_INFO_INVALID_DBLOCKING_IDC;772 return ERR_INFO_INVALID_DBLOCKING_IDC;
773 }773 }
@@ -804,7 +804,7 @@ int32_t ParseSliceHeaderSyntaxs (PWelsDecoderContext pCtx, PBitStringAux pBs, co · 30 unmodified lines
804 (pos.iTopOffset + pos.iBottomOffset) / (1 + pSliceHead->bFieldPicFlag);804 (pos.iTopOffset + pos.iBottomOffset) / (1 + pSliceHead->bFieldPicFlag);
805 }805 }
806 } else if (uiQualityId > BASE_QUALITY_ID) {806 } else if (uiQualityId > BASE_QUALITY_ID) {
807 WelsLog (pLogCtx, WELS_LOG_WARNING, "MGS not supported.\n");807 WelsLog (pLogCtx, WELS_LOG_WARNING, "MGS not supported.");
808 return GENERATE_ERROR_NO (ERR_LEVEL_SLICE_HEADER, ERR_INFO_UNSUPPORTED_MGS);808 return GENERATE_ERROR_NO (ERR_LEVEL_SLICE_HEADER, ERR_INFO_UNSUPPORTED_MGS);
809 } else {809 } else {
810 pSliceHeadExt->uiRefLayerDqId = (uint8_t) - 1;810 pSliceHeadExt->uiRefLayerDqId = (uint8_t) - 1;
@@ -863,7 +863,7 @@ int32_t ParseSliceHeaderSyntaxs (PWelsDecoderContext pCtx, PBitStringAux pBs, co · 52 unmodified lines
863 WELS_READ_VERIFY (BsGetBits (pBs, 4, &uiCode)); //scan_idx_end863 WELS_READ_VERIFY (BsGetBits (pBs, 4, &uiCode)); //scan_idx_end
864 pSliceHeadExt->uiScanIdxEnd = uiCode;864 pSliceHeadExt->uiScanIdxEnd = uiCode;
865 if (pSliceHeadExt->uiScanIdxStart != 0 || pSliceHeadExt->uiScanIdxEnd != 15) {865 if (pSliceHeadExt->uiScanIdxStart != 0 || pSliceHeadExt->uiScanIdxEnd != 15) {
866 WelsLog (pLogCtx, WELS_LOG_WARNING, "uiScanIdxStart (%d) != 0 and uiScanIdxEnd (%d) !=15 not supported here\n",866 WelsLog (pLogCtx, WELS_LOG_WARNING, "uiScanIdxStart (%d) != 0 and uiScanIdxEnd (%d) !=15 not supported here",
867 pSliceHeadExt->uiScanIdxStart, pSliceHeadExt->uiScanIdxEnd);867 pSliceHeadExt->uiScanIdxStart, pSliceHeadExt->uiScanIdxEnd);
868 return GENERATE_ERROR_NO (ERR_LEVEL_SLICE_HEADER, ERR_INFO_UNSUPPORTED_MGS);868 return GENERATE_ERROR_NO (ERR_LEVEL_SLICE_HEADER, ERR_INFO_UNSUPPORTED_MGS);
869 }869 }
@@ -957,7 +957,7 @@ int32_t UpdateAccessUnit (PWelsDecoderContext pCtx) { · 87 unmodified lines
957 if (uiActualIdx ==957 if (uiActualIdx ==
958 pCurAu->uiActualUnitsNum) { // no found IDR nal within incoming AU, need exit to avoid mosaic issue, 11/19/2009958 pCurAu->uiActualUnitsNum) { // no found IDR nal within incoming AU, need exit to avoid mosaic issue, 11/19/2009
959 WelsLog (& (pCtx->sLogCtx), WELS_LOG_WARNING,959 WelsLog (& (pCtx->sLogCtx), WELS_LOG_WARNING,
960 "UpdateAccessUnit():::::Key frame lost.....CAN NOT find IDR from current AU.\n");960 "UpdateAccessUnit():::::Key frame lost.....CAN NOT find IDR from current AU.");
961 pCtx->iErrorCode |= dsRefLost;961 pCtx->iErrorCode |= dsRefLost;
962 if (pCtx->eErrorConMethod == ERROR_CON_DISABLE) {962 if (pCtx->eErrorConMethod == ERROR_CON_DISABLE) {
963#ifdef LONG_TERM_REF963#ifdef LONG_TERM_REF
@@ -1668,7 +1668,7 @@ int32_t ConstructAccessUnit (PWelsDecoderContext pCtx, uint8_t** ppDst, SBufferI · 704 unmodified lines
1668 if (pCtx->bNewSeqBegin)1668 if (pCtx->bNewSeqBegin)
1669 ResetActiveSPSForEachLayer (pCtx);1669 ResetActiveSPSForEachLayer (pCtx);
1670 if (ERR_NONE != iErr) {1670 if (ERR_NONE != iErr) {
1671 WelsLog (& (pCtx->sLogCtx), WELS_LOG_INFO, "returned error from decoding:[0x%x]\n", iErr);1671 WelsLog (& (pCtx->sLogCtx), WELS_LOG_INFO, "returned error from decoding:[0x%x]", iErr);
1672 return iErr;1672 return iErr;
1673 }1673 }
1674 1674
@@ -1804,7 +1804,7 @@ int32_t DecodeCurrentAccessUnit (PWelsDecoderContext pCtx, uint8_t** ppDst, SBuf · 129 unmodified lines
1804 1804
1805 if (NULL == pCtx->pDec) {1805 if (NULL == pCtx->pDec) {
1806 WelsLog (& (pCtx->sLogCtx), WELS_LOG_ERROR,1806 WelsLog (& (pCtx->sLogCtx), WELS_LOG_ERROR,
1807 "DecodeCurrentAccessUnit()::::::PrefetchPic ERROR, pSps->iNumRefFrames:%d.\n",1807 "DecodeCurrentAccessUnit()::::::PrefetchPic ERROR, pSps->iNumRefFrames:%d.",
1808 pCtx->pSps->iNumRefFrames);1808 pCtx->pSps->iNumRefFrames);
1809 pCtx->iErrorCode |= dsOutOfMemory;1809 pCtx->iErrorCode |= dsOutOfMemory;
1810 return ERR_INFO_REF_COUNT_OVERFLOW;1810 return ERR_INFO_REF_COUNT_OVERFLOW;
@@ -1857,7 +1857,7 @@ int32_t DecodeCurrentAccessUnit (PWelsDecoderContext pCtx, uint8_t** ppDst, SBuf · 46 unmodified lines
1857 pCtx->pFmo = &pCtx->sFmoList[iPpsId];1857 pCtx->pFmo = &pCtx->sFmoList[iPpsId];
1858 if (!FmoParamUpdate (pCtx->pFmo, pLayerInfo.pSps, pLayerInfo.pPps, &pCtx->iActiveFmoNum)) {1858 if (!FmoParamUpdate (pCtx->pFmo, pLayerInfo.pSps, pLayerInfo.pPps, &pCtx->iActiveFmoNum)) {
1859 pCtx->iErrorCode |= dsBitstreamError;1859 pCtx->iErrorCode |= dsBitstreamError;
1860 WelsLog (& (pCtx->sLogCtx), WELS_LOG_WARNING, "DecodeCurrentAccessUnit(), FmoParamUpdate failed, eSliceType: %d.\n",1860 WelsLog (& (pCtx->sLogCtx), WELS_LOG_WARNING, "DecodeCurrentAccessUnit(), FmoParamUpdate failed, eSliceType: %d.",
1861 pSh->eSliceType);1861 pSh->eSliceType);
1862 return GENERATE_ERROR_NO (ERR_LEVEL_SLICE_HEADER, ERR_INFO_FMO_INIT_FAIL);1862 return GENERATE_ERROR_NO (ERR_LEVEL_SLICE_HEADER, ERR_INFO_FMO_INIT_FAIL);
1863 }1863 }
@@ -1883,7 +1883,7 @@ int32_t DecodeCurrentAccessUnit (PWelsDecoderContext pCtx, uint8_t** ppDst, SBuf · 19 unmodified lines
1883 pSh->iFrameNum != pCtx->iPrevFrameNum &&1883 pSh->iFrameNum != pCtx->iPrevFrameNum &&
1884 pSh->iFrameNum != ((pCtx->iPrevFrameNum + 1) & ((1 << dq_cur->sLayerInfo.pSps->uiLog2MaxFrameNum) - 1))) {1884 pSh->iFrameNum != ((pCtx->iPrevFrameNum + 1) & ((1 << dq_cur->sLayerInfo.pSps->uiLog2MaxFrameNum) - 1))) {
1885 WelsLog (& (pCtx->sLogCtx), WELS_LOG_WARNING,1885 WelsLog (& (pCtx->sLogCtx), WELS_LOG_WARNING,
1886 "referencing pictures lost due frame gaps exist, prev_frame_num: %d, curr_frame_num: %d\n", pCtx->iPrevFrameNum,1886 "referencing pictures lost due frame gaps exist, prev_frame_num: %d, curr_frame_num: %d", pCtx->iPrevFrameNum,
1887 pSh->iFrameNum);1887 pSh->iFrameNum);
1888 1888
1889 pCtx->iErrorCode |= dsRefLost;1889 pCtx->iErrorCode |= dsRefLost;
@@ -1904,7 +1904,7 @@ int32_t DecodeCurrentAccessUnit (PWelsDecoderContext pCtx, uint8_t** ppDst, SBuf · 14 unmodified lines
1904 if (iRet) {1904 if (iRet) {
1905 HandleReferenceLost (pCtx, pNalCur);1905 HandleReferenceLost (pCtx, pNalCur);
1906 WelsLog (& (pCtx->sLogCtx), WELS_LOG_WARNING,1906 WelsLog (& (pCtx->sLogCtx), WELS_LOG_WARNING,
1907 "reference picture introduced by this frame is lost during transmission! uiTId: %d\n",1907 "reference picture introduced by this frame is lost during transmission! uiTId: %d",
1908 pNalCur->sNalHeaderExt.uiTemporalId);1908 pNalCur->sNalHeaderExt.uiTemporalId);
1909 if (pCtx->eErrorConMethod == ERROR_CON_DISABLE) {1909 if (pCtx->eErrorConMethod == ERROR_CON_DISABLE) {
1910 return iRet;1910 return iRet;
@@ -1917,7 +1917,7 @@ int32_t DecodeCurrentAccessUnit (PWelsDecoderContext pCtx, uint8_t** ppDst, SBuf · 6 unmodified lines
1917 //Output good store_base reconstruction when enhancement quality layer occurred error for MGS key picture case1917 //Output good store_base reconstruction when enhancement quality layer occurred error for MGS key picture case
1918 if (iRet != ERR_NONE) {1918 if (iRet != ERR_NONE) {
1919 WelsLog (& (pCtx->sLogCtx), WELS_LOG_WARNING,1919 WelsLog (& (pCtx->sLogCtx), WELS_LOG_WARNING,
1920 "DecodeCurrentAccessUnit() failed (%d) in frame: %d uiDId: %d uiQId: %d\n",1920 "DecodeCurrentAccessUnit() failed (%d) in frame: %d uiDId: %d uiQId: %d",
1921 iRet, pSh->iFrameNum, iCurrIdD, iCurrIdQ);1921 iRet, pSh->iFrameNum, iCurrIdD, iCurrIdQ);
1922 HandleReferenceLostL0 (pCtx, pNalCur);1922 HandleReferenceLostL0 (pCtx, pNalCur);
1923 if (pCtx->eErrorConMethod == ERROR_CON_DISABLE) {1923 if (pCtx->eErrorConMethod == ERROR_CON_DISABLE) {

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