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

Function ResetCurrentAccessUnit

codec/decoder/core/src/decoder_core.cpp:1806–1827  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1804}
1805
1806void ResetCurrentAccessUnit (PWelsDecoderContext pCtx) {
1807 PAccessUnit pCurAu = pCtx->pAccessUnitList;
1808 pCurAu->uiStartPos = 0;
1809 pCurAu->uiEndPos = 0;
1810 pCurAu->bCompletedAuFlag = false;
1811 if (pCurAu->uiActualUnitsNum > 0) {
1812 uint32_t iIdx = 0;
1813 const uint32_t kuiActualNum = pCurAu->uiActualUnitsNum;
1814 // a more simpler method to do nal units list management prefered here
1815 const uint32_t kuiAvailNum = pCurAu->uiAvailUnitsNum;
1816 const uint32_t kuiLeftNum = kuiAvailNum - kuiActualNum;
1817
1818 // Swapping active nal unit nodes of succeeding AU with leading of list
1819 while (iIdx < kuiLeftNum) {
1820 PNalUnit t = pCurAu->pNalUnitsList[kuiActualNum + iIdx];
1821 pCurAu->pNalUnitsList[kuiActualNum + iIdx] = pCurAu->pNalUnitsList[iIdx];
1822 pCurAu->pNalUnitsList[iIdx] = t;
1823 ++ iIdx;
1824 }
1825 pCurAu->uiActualUnitsNum = pCurAu->uiAvailUnitsNum = kuiLeftNum;
1826 }
1827}
1828
1829/*!
1830 * \brief Force reset current Acess Unit Nal list in case error parsing/decoding in current AU

Callers 1

WelsDecodeAccessUnitEndFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected