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

Function InitParamForRasterSlcMode

test/encoder/EncUT_SliceBufferReallocate.cpp:117–140  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

115}
116
117void InitParamForRasterSlcMode (sWelsEncCtx* pCtx, const int32_t iLayerIdx) {
118 SSpatialLayerConfig* pLayerCfg = &pCtx->pSvcParam->sSpatialLayers[iLayerIdx];
119 SSliceArgument* pSliceArgument = &pLayerCfg->sSliceArgument;
120 int32_t iMBWidth = (pLayerCfg->iVideoWidth + 15) >> 4;
121 int32_t iMBHeight = (pLayerCfg->iVideoHeight + 15) >> 4;
122 int32_t iMbNumInFrame = iMBWidth * iMBHeight;
123 int32_t iSliceMBNum = 0;
124
125 pSliceArgument->uiSliceMbNum[0] = rand() % 2;
126 if (0 == pSliceArgument->uiSliceMbNum[0] && iMBHeight > MAX_SLICES_NUM) {
127 pSliceArgument->uiSliceNum = MAX_SLICES_NUM;
128 pSliceArgument->uiSliceMbNum[0] = 1;
129 }
130
131 if (0 != pSliceArgument->uiSliceMbNum[0]) {
132 iSliceMBNum = iMbNumInFrame / pSliceArgument->uiSliceNum;
133 for (int32_t iSlcIdx = 0; iSlcIdx < (int32_t)pSliceArgument->uiSliceNum - 1; iSlcIdx++) {
134 pSliceArgument->uiSliceMbNum[iSlcIdx] = iSliceMBNum;
135 }
136 iSliceMBNum = iMbNumInFrame / pSliceArgument->uiSliceNum;
137 pSliceArgument->uiSliceMbNum[pSliceArgument->uiSliceNum - 1] = iMbNumInFrame - iSliceMBNum *
138 (pSliceArgument->uiSliceNum - 1);
139 }
140}
141
142void SetParamForReallocateTest (sWelsEncCtx* pCtx, int32_t iLayerIdx,
143 int32_t iThreadIndex, int32_t iPartitionNum) {

Callers 1

InitLayerSliceBufferMethod · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected