Showing the changes to codec/encoder/core/src/svc_encode_slice.cpp (1 of 12 files). Show all
Unified · Split
| @@ -292,7 +292,8 @@ void WelsSliceHeaderWrite (sWelsEncCtx* pCtx, SBitStringAux* pBs, SDqLayer* pCur · 291 unmodified lines | |||
| 292 | BsWriteUE (pBs, 2); | 292 | BsWriteUE (pBs, 2); |
| 293 | break; | 293 | break; |
| 294 | default: | 294 | default: |
| 295 | WelsLog(&pCtx->sLogCtx, WELS_LOG_ERROR, "Invalid uiDisableDeblockingFilterIdc %d", pSliceHeader->uiDisableDeblockingFilterIdc); | 295 | WelsLog (&pCtx->sLogCtx, WELS_LOG_ERROR, "Invalid uiDisableDeblockingFilterIdc %d", |
| 296 | pSliceHeader->uiDisableDeblockingFilterIdc); | ||
| 296 | break; | 297 | break; |
| 297 | } | 298 | } |
| 298 | if (1 != pSliceHeader->uiDisableDeblockingFilterIdc) { | 299 | if (1 != pSliceHeader->uiDisableDeblockingFilterIdc) { |
| @@ -455,7 +456,8 @@ void WelsPMbChromaEncode (sWelsEncCtx* pEncCtx, SSlice* pSlice, SMB* pCurMb) { · 156 unmodified lines | |||
| 455 | } | 456 | } |
| 456 | 457 | ||
| 457 | void OutputPMbWithoutConstructCsRsNoCopy (sWelsEncCtx* pCtx, SDqLayer* pDq, SSlice* pSlice, SMB* pMb) { | 458 | void OutputPMbWithoutConstructCsRsNoCopy (sWelsEncCtx* pCtx, SDqLayer* pDq, SSlice* pSlice, SMB* pMb) { |
| 458 | if (IS_INTER (pMb->uiMbType) || IS_I_BL (pMb->uiMbType)) { //intra have been reconstructed, NO COPY from CS to pDecPic-- | 459 | if ((IS_INTER (pMb->uiMbType) && !IS_SKIP (pMb->uiMbType)) |
| 460 | || IS_I_BL (pMb->uiMbType)) { //intra have been reconstructed, NO COPY from CS to pDecPic-- | ||
| 459 | SMbCache* pMbCache = &pSlice->sMbCacheInfo; | 461 | SMbCache* pMbCache = &pSlice->sMbCacheInfo; |
| 460 | uint8_t* pDecY = pMbCache->SPicData.pDecMb[0]; | 462 | uint8_t* pDecY = pMbCache->SPicData.pDecMb[0]; |
| 461 | uint8_t* pDecU = pMbCache->SPicData.pDecMb[1]; | 463 | uint8_t* pDecU = pMbCache->SPicData.pDecMb[1]; |
| @@ -843,7 +845,7 @@ void AddSliceBoundary (sWelsEncCtx* pEncCtx, SSlice* pCurSlice, SSliceCtx* pSlic · 381 unmodified lines | |||
| 843 | 845 | ||
| 844 | pSliceCtx->pFirstMbInSlice[iNextSliceIdc] = iFirstMbIdxOfNextSlice; | 846 | pSliceCtx->pFirstMbInSlice[iNextSliceIdc] = iFirstMbIdxOfNextSlice; |
| 845 | WelsSetMemMultiplebytes_c (pSliceCtx->pOverallMbMap + iFirstMbIdxOfNextSlice, iNextSliceIdc, | 847 | WelsSetMemMultiplebytes_c (pSliceCtx->pOverallMbMap + iFirstMbIdxOfNextSlice, iNextSliceIdc, |
| 846 | (kiLastMbIdxInPartition - iFirstMbIdxOfNextSlice + 1), sizeof(uint16_t)); | 848 | (kiLastMbIdxInPartition - iFirstMbIdxOfNextSlice + 1), sizeof (uint16_t)); |
| 847 | 849 | ||
| 848 | //DYNAMIC_SLICING_ONE_THREAD: update pMbList slice_neighbor_info | 850 | //DYNAMIC_SLICING_ONE_THREAD: update pMbList slice_neighbor_info |
| 849 | UpdateMbNeighbourInfoForNextSlice (pSliceCtx, pMbList, iFirstMbIdxOfNextSlice, kiLastMbIdxInPartition); | 851 | UpdateMbNeighbourInfoForNextSlice (pSliceCtx, pMbList, iFirstMbIdxOfNextSlice, kiLastMbIdxInPartition); |