MCPcopy Create free account
hub / github.com/cisco/openh264 / Process

Method Process

codec/processing/src/common/WelsFrameWork.cpp:151–174  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

149}
150
151EResult CVpFrameWork::Process (int32_t iType, SPixMap* pSrcPixMap, SPixMap* pDstPixMap) {
152 EResult eReturn = RET_NOTSUPPORTED;
153 EMethods eMethod = WelsVpGetValidMethod (iType);
154 int32_t iCurIdx = WelsStaticCast (int32_t, eMethod) - 1;
155 SPixMap sSrcPic;
156 SPixMap sDstPic;
157 memset (&sSrcPic, 0, sizeof (sSrcPic)); // confirmed_safe_unsafe_usage
158 memset (&sDstPic, 0, sizeof (sDstPic)); // confirmed_safe_unsafe_usage
159
160 if (pSrcPixMap) sSrcPic = *pSrcPixMap;
161 if (pDstPixMap) sDstPic = *pDstPixMap;
162 if (!CheckValid (eMethod, sSrcPic, sDstPic))
163 return RET_INVALIDPARAM;
164
165 WelsMutexLock (&m_mutes);
166
167 IStrategy* pStrategy = m_pStgChain[iCurIdx];
168 if (pStrategy)
169 eReturn = pStrategy->Process (0, &sSrcPic, &sDstPic);
170
171 WelsMutexUnlock (&m_mutes);
172
173 return eReturn;
174}
175
176EResult CVpFrameWork::Get (int32_t iType, void* pParam) {
177 EResult eReturn = RET_SUCCESS;

Callers 1

ProcessFunction · 0.45

Calls 3

WelsVpGetValidMethodFunction · 0.85
WelsMutexLockFunction · 0.85
WelsMutexUnlockFunction · 0.85

Tested by

no test coverage detected