This builds on the work in cisco/openh264#2746 to allow the user to configure the screen content min and max QR values, which default to the range [26, 35]. Setting the QP range is useful for exploring the parameter space for screen content to make the appropriate tradeoffs between quality and bitrate usage for a large variety of network environments. See: cisco/openh264#2732
Showing the changes to codec/encoder/core/src/encoder_ext.cpp (1 of 5 files). Show all
Unified · Split
| @@ -384,8 +384,8 @@ int32_t ParamValidation (SLogContext* pLogCtx, SWelsSvcCodingParam* pCfg) { · 383 unmodified lines | ||
| 384 | 384 | } |
| 385 | 385 | |
| 386 | 386 | } |
| 387 | − pCfg->iMinQp = WELS_CLIP3 (pCfg->iMinQp, GOM_MIN_QP_MODE, 51); | |
| 388 | − pCfg->iMaxQp = WELS_CLIP3 (pCfg->iMaxQp, pCfg->iMinQp, 51); | |
| 387 | + pCfg->iMinQp = WELS_CLIP3 (pCfg->iMinQp, GOM_MIN_QP_MODE, QP_MAX_VALUE); | |
| 388 | + pCfg->iMaxQp = WELS_CLIP3 (pCfg->iMaxQp, pCfg->iMinQp, QP_MAX_VALUE); | |
| 389 | 389 | } |
| 390 | 390 | // ref-frames validation |
| 391 | 391 | if (((pCfg->iUsageType == CAMERA_VIDEO_REAL_TIME) || (pCfg->iUsageType == SCREEN_CONTENT_REAL_TIME)) |