[Encoder] remove duplicated operation after thread pool
Showing the changes to codec/encoder/core/src/wels_task_management.cpp (1 of 7 files). Show all
Unified · Split
| @@ -99,7 +99,7 @@ WelsErrorType CWelsTaskManageBase::Init (sWelsEncCtx* pEncCtx) { · 98 unmodified lines | ||
| 99 | 99 | WELS_VERIFY_RETURN_IF (ENC_RETURN_MEMALLOCERR, NULL == m_pThreadPool) |
| 100 | 100 | |
| 101 | 101 | m_pcAllTaskList[CWelsBaseTask::WELS_ENC_TASK_ENCODING] = m_cEncodingTaskList; |
| 102 | − m_pcAllTaskList[CWelsBaseTask::WELS_ENC_TASK_PREENCODING] = m_cPreEncodingTaskList; | |
| 102 | + m_pcAllTaskList[CWelsBaseTask::WELS_ENC_TASK_UPDATEMBMAP] = m_cPreEncodingTaskList; | |
| 103 | 103 | |
| 104 | 104 | m_iCurrentTaskNum = pEncCtx->pSvcParam->sSpatialLayers[0].sSliceArgument.uiSliceNum; |
| 105 | 105 | //printf ("CWelsTaskManageBase Init m_iThreadNum %d m_iCurrentTaskNum %d pEncCtx->iMaxSliceCount %d\n", m_iThreadNum, m_iCurrentTaskNum, pEncCtx->iMaxSliceCount); |
| @@ -202,7 +202,9 @@ WelsErrorType CWelsTaskManageBase::ExecuteTaskList (TASKLIST_TYPE* pTargetTaskL · 96 unmodified lines | ||
| 202 | 202 | } |
| 203 | 203 | |
| 204 | 204 | void CWelsTaskManageBase::InitFrame (const int32_t kiCurDid) { |
| 205 | − ExecuteTaskList (m_pcAllTaskList[CWelsBaseTask::WELS_ENC_TASK_PREENCODING]); | |
| 205 | + if (m_pEncCtx->pCurDqLayer->bNeedAdjustingSlicing) { | |
| 206 | + ExecuteTaskList (m_pcAllTaskList[CWelsBaseTask::WELS_ENC_TASK_UPDATEMBMAP]); | |
| 207 | + } | |
| 206 | 208 | } |
| 207 | 209 | |
| 208 | 210 | WelsErrorType CWelsTaskManageBase::ExecuteTasks (const CWelsBaseTask::ETaskType iTaskType) { |
| @@ -229,7 +231,9 @@ void CWelsTaskManageMultiD::InitFrame (const int32_t kiCurDid) { · 20 unmodified lines | ||
| 229 | 231 | //printf("CWelsTaskManageMultiD: InitFrame: m_iCurDid=%d, m_iCurrentTaskNum=%d\n", m_iCurDid, m_iCurrentTaskNum); |
| 230 | 232 | m_iCurDid = kiCurDid; |
| 231 | 233 | m_iCurrentTaskNum = m_iTaskNumD[kiCurDid]; |
| 232 | − ExecuteTaskList (m_pcAllTaskList[CWelsBaseTask::WELS_ENC_TASK_PREENCODING]); | |
| 234 | + if (m_pEncCtx->pCurDqLayer->bNeedAdjustingSlicing) { | |
| 235 | + ExecuteTaskList (m_pcAllTaskList[CWelsBaseTask::WELS_ENC_TASK_UPDATEMBMAP]); | |
| 236 | + } | |
| 233 | 237 | } |
| 234 | 238 | |
| 235 | 239 | WelsErrorType CWelsTaskManageMultiD::ExecuteTasks (const CWelsBaseTask::ETaskType iTaskType) { |