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

Function DetectStartCodePrefix

codec/decoder/core/src/au_parser.cpp:66–89  ·  view source on GitHub ↗

! ************************************************************************************* * \brief Start Code Prefix (0x 00 00 00 01) detection * * \param pBuf bitstream payload buffer * \param pOffset offset between NAL rbsp and original bitsteam that * start code prefix is seperated from. * \param iBufSize count size of buffer * * \return RBSP b

Source from the content-addressed store, hash-verified

64 *************************************************************************************
65 */
66uint8_t* DetectStartCodePrefix (const uint8_t* kpBuf, int32_t* pOffset, int32_t iBufSize) {
67 uint8_t* pBits = (uint8_t*)kpBuf;
68
69 do {
70 int32_t iIdx = 0;
71 while ((iIdx < iBufSize) && (! (*pBits))) {
72 ++ pBits;
73 ++ iIdx;
74 }
75 if (iIdx >= iBufSize) break;
76
77 ++ iIdx;
78 ++ pBits;
79
80 if ((iIdx >= 3) && ((* (pBits - 1)) == 0x1)) {
81 *pOffset = (int32_t) (((uintptr_t)pBits) - ((uintptr_t)kpBuf));
82 return pBits;
83 }
84
85 iBufSize -= iIdx;
86 } while (1);
87
88 return NULL;
89}
90
91/*!
92 *************************************************************************************

Callers 1

WelsDecodeBsFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected