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

Function ParsePrefixNalUnit

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

Source from the content-addressed store, hash-verified

686}
687
688int32_t ParsePrefixNalUnit (PWelsDecoderContext pCtx, PBitStringAux pBs) {
689 PNalUnit pCurNal = &pCtx->sSpsPpsCtx.sPrefixNal;
690 uint32_t uiCode;
691
692 if (pCurNal->sNalHeaderExt.sNalUnitHeader.uiNalRefIdc != 0) {
693 PNalUnitHeaderExt head_ext = &pCurNal->sNalHeaderExt;
694 PPrefixNalUnit sPrefixNal = &pCurNal->sNalData.sPrefixNal;
695 WELS_READ_VERIFY (BsGetOneBit (pBs, &uiCode)); //store_ref_base_pic_flag
696 sPrefixNal->bStoreRefBasePicFlag = !!uiCode;
697 if ((head_ext->bUseRefBasePicFlag || sPrefixNal->bStoreRefBasePicFlag) && !head_ext->bIdrFlag) {
698 WELS_READ_VERIFY (ParseRefBasePicMarking (pBs, &sPrefixNal->sRefPicBaseMarking));
699 }
700 WELS_READ_VERIFY (BsGetOneBit (pBs, &uiCode)); //additional_prefix_nal_unit_extension_flag
701 sPrefixNal->bPrefixNalUnitAdditionalExtFlag = !!uiCode;
702 if (sPrefixNal->bPrefixNalUnitAdditionalExtFlag) {
703 WELS_READ_VERIFY (BsGetOneBit (pBs, &uiCode)); //additional_prefix_nal_unit_extension_data_flag
704 sPrefixNal->bPrefixNalUnitExtFlag = !!uiCode;
705 }
706 }
707 return ERR_NONE;
708}
709
710#define SUBSET_SPS_SEQ_SCALED_REF_LAYER_LEFT_OFFSET_MIN -32768
711#define SUBSET_SPS_SEQ_SCALED_REF_LAYER_LEFT_OFFSET_MAX 32767

Callers 1

ParseNalHeaderFunction · 0.85

Calls 2

BsGetOneBitFunction · 0.85
ParseRefBasePicMarkingFunction · 0.85

Tested by

no test coverage detected