Showing the changes to codec/decoder/core/src/fmo.cpp (1 of 6 files). Show all
Unified · Split
| @@ -259,26 +259,20 @@ bool FmoParamSetsChanged (PFmo pFmo, const int32_t kiCountNumMb, const int32_t k · 258 unmodified lines | |||
| 259 | * | 259 | * |
| 260 | * \return true - update/insert successfully; false - failed; | 260 | * \return true - update/insert successfully; false - failed; |
| 261 | */ | 261 | */ |
| 262 | bool FmoParamUpdate (PFmo pFmo, PSps pSps, PPps pPps, int32_t* pActiveFmoNum, CMemoryAlign* pMa) { | 262 | int32_t FmoParamUpdate (PFmo pFmo, PSps pSps, PPps pPps, int32_t* pActiveFmoNum, CMemoryAlign* pMa) { |
| 263 | const uint32_t kuiMbWidth = pSps->iMbWidth; | 263 | const uint32_t kuiMbWidth = pSps->iMbWidth; |
| 264 | const uint32_t kuiMbHeight = pSps->iMbHeight; | 264 | const uint32_t kuiMbHeight = pSps->iMbHeight; |
| 265 | 265 | int32_t iRet = ERR_NONE; | |
| 266 | if (FmoParamSetsChanged (pFmo, | 266 | if (FmoParamSetsChanged (pFmo, kuiMbWidth * kuiMbHeight, pPps->uiSliceGroupMapType, pPps->uiNumSliceGroups)) { |
| 267 | kuiMbWidth * kuiMbHeight, | 267 | iRet = InitFmo (pFmo, pPps, kuiMbWidth, kuiMbHeight, pMa); |
| 268 | pPps->uiSliceGroupMapType, | 268 | WELS_VERIFY_RETURN_IF (iRet, iRet); |
| 269 | pPps->uiNumSliceGroups)) { | 269 | |
| 270 | 270 | if (!pFmo->bActiveFlag && *pActiveFmoNum < MAX_PPS_COUNT) { | |
| 271 | if (InitFmo (pFmo, pPps, kuiMbWidth, kuiMbHeight, pMa)) { | 271 | ++ (*pActiveFmoNum); |
| 272 | return false; | 272 | pFmo->bActiveFlag = true; |
| 273 | } else { | ||
| 274 | if (!pFmo->bActiveFlag && *pActiveFmoNum < MAX_PPS_COUNT) { | ||
| 275 | ++ (*pActiveFmoNum); | ||
| 276 | pFmo->bActiveFlag = true; | ||
| 277 | } | ||
| 278 | } | 273 | } |
| 279 | } | 274 | } |
| 280 | 275 | return iRet; | |
| 281 | return true; | ||
| 282 | } | 276 | } |
| 283 | 277 | ||
| 284 | /*! | 278 | /*! |