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
370370 WelsLog (pLogCtx, WELS_LOG_WARNING,
371371 "bEnableFrameSkip = %d,bitrate can't be controlled for RC_QUALITY_MODE,RC_BITRATE_MODE and RC_TIMESTAMP_MODE without enabling skip frame.",
372372 pCfg->bEnableFrameSkip);
373−
374− if (pCfg->iUsageType == SCREEN_CONTENT_REAL_TIME) {
375− pCfg->iMinQp = MIN_SCREEN_QP;
376− pCfg->iMaxQp = MAX_SCREEN_QP;
377− } else {
378− pCfg->iMinQp = WELS_CLIP3 (pCfg->iMinQp , GOM_MIN_QP_MODE, 51);
379− pCfg->iMaxQp = WELS_CLIP3 (pCfg->iMaxQp , 0, 51);
380− if (pCfg->iMaxQp <= pCfg->iMinQp)
381− pCfg->iMaxQp = 51;
373+ if ((pCfg->iMaxQp <= 0) || (pCfg->iMinQp <= 0)) {
374+ if (pCfg->iUsageType == SCREEN_CONTENT_REAL_TIME) {
375+ WelsLog (pLogCtx, WELS_LOG_WARNING, "Change QP Range from(%d,%d) to (%d,%d)", pCfg->iMinQp, pCfg->iMaxQp, MIN_SCREEN_QP,
376+ MAX_SCREEN_QP);
377+ pCfg->iMinQp = MIN_SCREEN_QP;
378+ pCfg->iMaxQp = MAX_SCREEN_QP;
379+ } else {
380+ WelsLog (pLogCtx, WELS_LOG_WARNING, "Change QP Range from(%d,%d) to (%d,%d)", pCfg->iMinQp, pCfg->iMaxQp,
381+ GOM_MIN_QP_MODE, MAX_LOW_BR_QP);
382+ pCfg->iMinQp = GOM_MIN_QP_MODE;
383+ pCfg->iMaxQp = MAX_LOW_BR_QP;
384+ }
382385
383386 }
384−
387+ pCfg->iMinQp = WELS_CLIP3 (pCfg->iMinQp , GOM_MIN_QP_MODE, 51);
388+ pCfg->iMaxQp = WELS_CLIP3 (pCfg->iMaxQp , pCfg->iMinQp, 51);
385389 }
386390 // ref-frames validation
387391 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
638642 if ((pLayerInfo->uiProfileIdc == PRO_BASELINE) || (pLayerInfo->uiProfileIdc == PRO_SCALABLE_BASELINE)) {
639643 if (pCodingParam->iEntropyCodingModeFlag != 0) {
640644 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);
642646 }
643647 }
644648 }

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