Showing the changes to codec/encoder/core/src/encoder_ext.cpp (1 of 7 files). Show all
Unified · Split
| @@ -3682,7 +3682,7 @@ int32_t WelsEncoderEncodeExt (sWelsEncCtx* pCtx, SFrameBSInfo* pFbi, const SSour · 3681 unmodified lines | |||
| 3682 | } | 3682 | } |
| 3683 | 3683 | ||
| 3684 | WelsLoadNal (pCtx->pOut, eNalType, eNalRefIdc); | 3684 | WelsLoadNal (pCtx->pOut, eNalType, eNalRefIdc); |
| 3685 | assert (0 == (int) pCurSlice->uiSliceIdx); | 3685 | assert (0 == (int) pCurSlice->iSliceIdx); |
| 3686 | pCtx->iEncoderError = SetSliceBoundaryInfo(pCtx->pCurDqLayer, pCurSlice, 0); | 3686 | pCtx->iEncoderError = SetSliceBoundaryInfo(pCtx->pCurDqLayer, pCurSlice, 0); |
| 3687 | WELS_VERIFY_RETURN_IFNEQ (pCtx->iEncoderError, ENC_RETURN_SUCCESS) | 3687 | WELS_VERIFY_RETURN_IFNEQ (pCtx->iEncoderError, ENC_RETURN_SUCCESS) |
| 3688 | 3688 | ||
| @@ -3809,7 +3809,6 @@ int32_t WelsEncoderEncodeExt (sWelsEncCtx* pCtx, SFrameBSInfo* pFbi, const SSour · 120 unmodified lines | |||
| 3809 | iLayerSize = AppendSliceToFrameBs (pCtx, pLayerBsInfo, kiPartitionCnt); | 3809 | iLayerSize = AppendSliceToFrameBs (pCtx, pLayerBsInfo, kiPartitionCnt); |
| 3810 | } else { // for non-dynamic-slicing mode single threading branch.. | 3810 | } else { // for non-dynamic-slicing mode single threading branch.. |
| 3811 | const bool bNeedPrefix = pCtx->bNeedPrefixNalFlag; | 3811 | const bool bNeedPrefix = pCtx->bNeedPrefixNalFlag; |
| 3812 | |||
| 3813 | int32_t iSliceIdx = 0; | 3812 | int32_t iSliceIdx = 0; |
| 3814 | uint32_t uiTheadIdx = 0; | 3813 | uint32_t uiTheadIdx = 0; |
| 3815 | SSlice* pCurSlice = NULL; | 3814 | SSlice* pCurSlice = NULL; |
| @@ -3830,7 +3829,7 @@ int32_t WelsEncoderEncodeExt (sWelsEncCtx* pCtx, SFrameBSInfo* pFbi, const SSour · 14 unmodified lines | |||
| 3830 | WelsLoadNal (pCtx->pOut, eNalType, eNalRefIdc); | 3829 | WelsLoadNal (pCtx->pOut, eNalType, eNalRefIdc); |
| 3831 | 3830 | ||
| 3832 | pCurSlice = &pCtx->pCurDqLayer->sSliceThreadInfo.pSliceInThread[uiTheadIdx][iSliceIdx]; | 3831 | pCurSlice = &pCtx->pCurDqLayer->sSliceThreadInfo.pSliceInThread[uiTheadIdx][iSliceIdx]; |
| 3833 | assert (iSliceIdx == (int) pCurSlice->uiSliceIdx); | 3832 | assert (iSliceIdx == pCurSlice->iSliceIdx); |
| 3834 | pCtx->iEncoderError = SetSliceBoundaryInfo(pCtx->pCurDqLayer, pCurSlice, iSliceIdx); | 3833 | pCtx->iEncoderError = SetSliceBoundaryInfo(pCtx->pCurDqLayer, pCurSlice, iSliceIdx); |
| 3835 | WELS_VERIFY_RETURN_IFNEQ (pCtx->iEncoderError, ENC_RETURN_SUCCESS) | 3834 | WELS_VERIFY_RETURN_IFNEQ (pCtx->iEncoderError, ENC_RETURN_SUCCESS) |
| 3836 | 3835 | ||
| @@ -4574,7 +4573,7 @@ int32_t WelsCodeOnePicPartition (sWelsEncCtx* pCtx, · 737 unmodified lines | |||
| 4574 | WelsLoadNal (pCtx->pOut, keNalType, keNalRefIdc); | 4573 | WelsLoadNal (pCtx->pOut, keNalType, keNalRefIdc); |
| 4575 | 4574 | ||
| 4576 | pCurSlice = &pCtx->pCurDqLayer->sSliceThreadInfo.pSliceInThread[uiTheadIdx][iSliceIdx]; | 4575 | pCurSlice = &pCtx->pCurDqLayer->sSliceThreadInfo.pSliceInThread[uiTheadIdx][iSliceIdx]; |
| 4577 | assert (iSliceIdx == (int) pCurSlice->uiSliceIdx); | 4576 | assert (iSliceIdx == pCurSlice->iSliceIdx); |
| 4578 | 4577 | ||
| 4579 | iReturn = WelsCodeOneSlice (pCtx, pCurSlice, keNalType); | 4578 | iReturn = WelsCodeOneSlice (pCtx, pCurSlice, keNalType); |
| 4580 | WELS_VERIFY_RETURN_IFNEQ (iReturn, ENC_RETURN_SUCCESS) | 4579 | WELS_VERIFY_RETURN_IFNEQ (iReturn, ENC_RETURN_SUCCESS) |
| @@ -4601,7 +4600,8 @@ int32_t WelsCodeOnePicPartition (sWelsEncCtx* pCtx, · 20 unmodified lines | |||
| 4601 | #endif//SLICE_INFO_OUTPUT | 4600 | #endif//SLICE_INFO_OUTPUT |
| 4602 | 4601 | ||
| 4603 | ++ iNalIdxInLayer; | 4602 | ++ iNalIdxInLayer; |
| 4604 | iSliceIdx += kiSliceStep; //if uiSliceIdx is not continuous | 4603 | |
| 4604 | iSliceIdx += kiSliceStep; //if iSliceIdx is not continuous | ||
| 4605 | iAnyMbLeftInPartition = iEndMbIdxInPartition - pCurLayer->pLastCodedMbIdxOfPartition[kiPartitionId]; | 4605 | iAnyMbLeftInPartition = iEndMbIdxInPartition - pCurLayer->pLastCodedMbIdxOfPartition[kiPartitionId]; |
| 4606 | } | 4606 | } |
| 4607 | 4607 | ||