History

refine code

lyao2 committed 12 years ago

Commit 849a7301 parent 24bd0b71 file · +47 −6Browse files

Showing the changes to test/encoder/EncUT_EncoderExt.cpp (1 of 1 file). Show all

Unified · Split

test/encoder/EncUT_EncoderExt.cpp+47−6
@@ -174,7 +174,7 @@ TEST_F (EncoderInterfaceTest, EncoderAdditionalOptionSetTest) { · 173 unmodified lines
174174 iResult = pPtrEnc->GetOption (eOptionId, &iReturn);
175175 EXPECT_EQ (iResult, static_cast<int> (cmResultSuccess));
176176 EXPECT_EQ (iValue, iReturn);
177−
177+
178178 PrepareOneSrcFrame();
179179 iResult = pPtrEnc->EncodeFrame (pSrcPic, &sFbi);
180180 EXPECT_EQ (iResult, static_cast<int> (cmResultSuccess));
@@ -188,7 +188,7 @@ TEST_F (EncoderInterfaceTest, EncoderAdditionalOptionSetTest) { · 7 unmodified lines
188188 EXPECT_EQ (iResult, static_cast<int> (cmInitParaError));
189189 else{
190190 EXPECT_EQ (iResult, static_cast<int> (cmResultSuccess));
191−
191+
192192 iResult = pPtrEnc->GetOption (eOptionId, &fReturn);
193193 EXPECT_EQ (iResult, static_cast<int> (cmResultSuccess));
194194 EXPECT_EQ (WELS_CLIP3 (fValue, 1, 30), fReturn);
@@ -248,19 +248,20 @@ TEST_F (EncoderInterfaceTest, EncoderAdditionalOptionSetTest) { · 53 unmodified lines
248248
249249 TEST_F (EncoderInterfaceTest, TemporalLayerSettingTest) {
250250
251− pParamExt->iPicWidth = m_iWidth;
252− pParamExt->iPicHeight = m_iHeight;
251+ pParamExt->iPicWidth = 1280;
252+ pParamExt->iPicHeight = 720;
253+ m_iWidth = pParamExt->iPicWidth;
254+ m_iHeight = pParamExt->iPicHeight;
253255 pParamExt->iTargetBitrate = 60000;
254256 pParamExt->sSpatialLayers[0].iVideoHeight = pParamExt->iPicHeight;
255257 pParamExt->sSpatialLayers[0].iVideoWidth = pParamExt->iPicWidth;
256258 pParamExt->sSpatialLayers[0].iSpatialBitrate = 50000;
257259 pParamExt->iTemporalLayerNum = 1;
258260 pParamExt->iSpatialLayerNum = 1;
259− int iResult;
260261
261262 for(int i = 0; i < 2; i++){
262263 pParamExt->iUsageType = (( i == 0 ) ? SCREEN_CONTENT_REAL_TIME : CAMERA_VIDEO_REAL_TIME);
263− iResult = pPtrEnc->InitializeExt (pParamExt);
264+ int iResult = pPtrEnc->InitializeExt (pParamExt);
264265 EXPECT_EQ (iResult, static_cast<int> (cmResultSuccess));
265266
266267 PrepareOneSrcFrame();
@@ -307,6 +308,46 @@ TEST_F (EncoderInterfaceTest, TemporalLayerSettingTest) { · 40 unmodified lines
307308 EXPECT_EQ (iResult, static_cast<int> (cmResultSuccess));
308309 }
309310
311+ InitializeParamExt();
312+ pParamExt->iUsageType = (rand() % 2) ? SCREEN_CONTENT_REAL_TIME : CAMERA_VIDEO_REAL_TIME;
313+ pParamExt->iRCMode = (rand() % 2) ? RC_BITRATE_MODE : RC_QUALITY_MODE;
314+
315+ int iResult = pPtrEnc->InitializeExt (pParamExt);
316+ const int kiFrameNumber = TEST_FRAMES;
317+
318+ m_iWidth = pParamExt->iPicWidth;
319+ m_iHeight = pParamExt->iPicHeight;
320+ m_iPicResSize = m_iWidth * m_iHeight * 3 >> 1;
321+ delete []pYUV;
322+ pYUV = new unsigned char [m_iPicResSize];
323+ ASSERT_TRUE (pYUV != NULL);
324+ PrepareOneSrcFrame();
325+
326+ ENCODER_OPTION eOptionId = ENCODER_OPTION_SVC_ENCODE_PARAM_EXT;
327+ memcpy (pOption, pParamExt, sizeof (SEncParamExt));
328+
329+ for(int i = 0; i < kiFrameNumber; i ++){
330+ if ((i%7) == 0){
331+ if (pOption->iTemporalLayerNum<4){
332+ pOption->iTemporalLayerNum++;
333+ } else {
334+ pOption->iTemporalLayerNum--;
335+ }
336+ iResult = pPtrEnc->SetOption (eOptionId, pOption);
337+ EXPECT_EQ (iResult, static_cast<int32_t> (cmResultSuccess));
338+ pSrcPic->uiTimeStamp += 30;
339+ }
340+
341+ int iStartX = rand() % (m_iPicResSize >> 1);
342+ int iEndX = (iStartX + (rand() % MEM_VARY_SIZE)) % m_iPicResSize;
343+ for (int j = iStartX; j < iEndX; j++)
344+ pYUV[j] = rand() % 256;
345+
346+ iResult = pPtrEnc->EncodeFrame (pSrcPic, &sFbi);
347+ EXPECT_EQ (iResult, static_cast<int32_t> (cmResultSuccess));
348+ pSrcPic->uiTimeStamp += 30;
349+ }
350+
310351 iResult = pPtrEnc->Uninitialize();
311352 EXPECT_EQ (iResult, static_cast<int> (cmResultSuccess));
312353

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t