History

refactor

Sijia Chen committed 11 years ago

Commit 76ef30d1 parent a5cb0ea2 files · +13 −10Browse files

Showing the changes to codec/encoder/core/src/wels_preprocess.cpp (1 of 2 files). Show all

Unified · Split

codec/encoder/core/src/wels_preprocess.cpp+12−10
@@ -255,26 +255,28 @@ int32_t CWelsPreProcess::AnalyzeSpatialPic (sWelsEncCtx* pCtx, const int32_t kiD · 254 unmodified lines
255 return 0;255 return 0;
256}256}
257 257
258int32_t CWelsPreProcess::GetCurPicPosition(const int32_t kiDidx) {
259 return (m_uiSpatialLayersInTemporal[kiDidx] - 1);
260}
261
258int32_t CWelsPreProcess::UpdateSpatialPictures (sWelsEncCtx* pCtx, SWelsSvcCodingParam* pParam,262int32_t CWelsPreProcess::UpdateSpatialPictures (sWelsEncCtx* pCtx, SWelsSvcCodingParam* pParam,
259 const int8_t iCurTid, const int32_t kiDidx) {263 const int8_t iCurTid, const int32_t kiDidx) {
260 if (pCtx->pSvcParam->iUsageType == SCREEN_CONTENT_REAL_TIME)264 if (pCtx->pSvcParam->iUsageType == SCREEN_CONTENT_REAL_TIME)
261 return 0;265 return 0;
262 if (iCurTid < m_uiSpatialLayersInTemporal[kiDidx] - 1 || pParam->iDecompStages == 0) {266 const int32_t kiCurPos = GetCurPicPosition(kiDidx);
263 if ((iCurTid >= MAX_TEMPORAL_LEVEL) || (m_uiSpatialLayersInTemporal[kiDidx] - 1 > MAX_TEMPORAL_LEVEL)) {267 if (iCurTid < kiCurPos || pParam->iDecompStages == 0) {
268 if ((iCurTid >= MAX_TEMPORAL_LEVEL) || (kiCurPos > MAX_TEMPORAL_LEVEL)) {
264 InitLastSpatialPictures (pCtx);269 InitLastSpatialPictures (pCtx);
265 return 1;270 return 1;
266 }271 }
267 if (pParam->bEnableLongTermReference && pCtx->bLongTermRefFlag[kiDidx][iCurTid]) {272 if (pParam->bEnableLongTermReference && pCtx->bLongTermRefFlag[kiDidx][iCurTid]) {
268 SPicture* tmp = m_pSpatialPic[kiDidx][m_uiSpatialLayersInTemporal[kiDidx] + pCtx->pVaa->uiMarkLongTermPicIdx];273 const int32_t kiAvailableLtrPos = m_uiSpatialLayersInTemporal[kiDidx] + pCtx->pVaa->uiMarkLongTermPicIdx;
269 m_pSpatialPic[kiDidx][m_uiSpatialLayersInTemporal[kiDidx] + pCtx->pVaa->uiMarkLongTermPicIdx] =274 WelsExchangeSpatialPictures (&m_pSpatialPic[kiDidx][kiAvailableLtrPos],
270 m_pSpatialPic[kiDidx][iCurTid];
271 m_pSpatialPic[kiDidx][iCurTid] = m_pSpatialPic[kiDidx][m_uiSpatialLayersInTemporal[kiDidx] - 1];
272 m_pSpatialPic[kiDidx][m_uiSpatialLayersInTemporal[kiDidx] - 1] = tmp;
273 pCtx->bLongTermRefFlag[kiDidx][iCurTid] = false;
274 } else {
275 WelsExchangeSpatialPictures (&m_pSpatialPic[kiDidx][m_uiSpatialLayersInTemporal[kiDidx] - 1],
276 &m_pSpatialPic[kiDidx][iCurTid]);275 &m_pSpatialPic[kiDidx][iCurTid]);
276 pCtx->bLongTermRefFlag[kiDidx][iCurTid] = false;
277 }277 }
278 WelsExchangeSpatialPictures (&m_pSpatialPic[kiDidx][kiCurPos],
279 &m_pSpatialPic[kiDidx][iCurTid]);
278 }280 }
279 return 0;281 return 0;
280}282}

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