History

use default qp range when qp isn't set

Karina committed 9 years ago

Commit df8820e1 parent db31c222 files · +575 −571Browse files

Showing the changes to codec/encoder/core/src/encoder_ext.cpp (1 of 2 files). Show all

Unified · Split

codec/encoder/core/src/encoder_ext.cpp+15−11
@@ -370,18 +370,22 @@ int32_t ParamValidation (SLogContext* pLogCtx, SWelsSvcCodingParam* pCfg) { · 369 unmodified lines
370 WelsLog (pLogCtx, WELS_LOG_WARNING,370 WelsLog (pLogCtx, WELS_LOG_WARNING,
371 "bEnableFrameSkip = %d,bitrate can't be controlled for RC_QUALITY_MODE,RC_BITRATE_MODE and RC_TIMESTAMP_MODE without enabling skip frame.",371 "bEnableFrameSkip = %d,bitrate can't be controlled for RC_QUALITY_MODE,RC_BITRATE_MODE and RC_TIMESTAMP_MODE without enabling skip frame.",
372 pCfg->bEnableFrameSkip);372 pCfg->bEnableFrameSkip);
373 373 if ((pCfg->iMaxQp <= 0) || (pCfg->iMinQp <= 0)) {
374 if (pCfg->iUsageType == SCREEN_CONTENT_REAL_TIME) {374 if (pCfg->iUsageType == SCREEN_CONTENT_REAL_TIME) {
375 pCfg->iMinQp = MIN_SCREEN_QP;375 WelsLog (pLogCtx, WELS_LOG_WARNING, "Change QP Range from(%d,%d) to (%d,%d)", pCfg->iMinQp, pCfg->iMaxQp, MIN_SCREEN_QP,
376 pCfg->iMaxQp = MAX_SCREEN_QP;376 MAX_SCREEN_QP);
377 } else {377 pCfg->iMinQp = MIN_SCREEN_QP;
378 pCfg->iMinQp = WELS_CLIP3 (pCfg->iMinQp , GOM_MIN_QP_MODE, 51);378 pCfg->iMaxQp = MAX_SCREEN_QP;
379 pCfg->iMaxQp = WELS_CLIP3 (pCfg->iMaxQp , 0, 51);379 } else {
380 if (pCfg->iMaxQp <= pCfg->iMinQp)380 WelsLog (pLogCtx, WELS_LOG_WARNING, "Change QP Range from(%d,%d) to (%d,%d)", pCfg->iMinQp, pCfg->iMaxQp,
381 pCfg->iMaxQp = 51;381 GOM_MIN_QP_MODE, MAX_LOW_BR_QP);
382 pCfg->iMinQp = GOM_MIN_QP_MODE;
383 pCfg->iMaxQp = MAX_LOW_BR_QP;
384 }
382 385
383 }386 }
384 387 pCfg->iMinQp = WELS_CLIP3 (pCfg->iMinQp , GOM_MIN_QP_MODE, 51);
388 pCfg->iMaxQp = WELS_CLIP3 (pCfg->iMaxQp , pCfg->iMinQp, 51);
385 }389 }
386 // ref-frames validation390 // ref-frames validation
387 if (((pCfg->iUsageType == CAMERA_VIDEO_REAL_TIME) || (pCfg->iUsageType == SCREEN_CONTENT_REAL_TIME))391 if (((pCfg->iUsageType == CAMERA_VIDEO_REAL_TIME) || (pCfg->iUsageType == SCREEN_CONTENT_REAL_TIME))
@@ -638,7 +642,7 @@ int32_t ParamValidationExt (SLogContext* pLogCtx, SWelsSvcCodingParam* pCodingPa · 250 unmodified lines
638 if ((pLayerInfo->uiProfileIdc == PRO_BASELINE) || (pLayerInfo->uiProfileIdc == PRO_SCALABLE_BASELINE)) {642 if ((pLayerInfo->uiProfileIdc == PRO_BASELINE) || (pLayerInfo->uiProfileIdc == PRO_SCALABLE_BASELINE)) {
639 if (pCodingParam->iEntropyCodingModeFlag != 0) {643 if (pCodingParam->iEntropyCodingModeFlag != 0) {
640 pCodingParam->iEntropyCodingModeFlag = 0;644 pCodingParam->iEntropyCodingModeFlag = 0;
641 WelsLog (pLogCtx, WELS_LOG_WARNING, "layerId(%d) Profile is baseline, Change CABAC to CAVLC",i);645 WelsLog (pLogCtx, WELS_LOG_WARNING, "layerId(%d) Profile is baseline, Change CABAC to CAVLC", i);
642 }646 }
643 }647 }
644 }648 }

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