mirror of
https://github.com/obsproject/obs-studio.git
synced 2026-09-24 23:31:36 +08:00
obs-qsv11: Adjust Subjective Video Enhancements
Disable MBBRC (macro block level bitrate control) because it can reduce objective quality metrics like VMAF. Use AdaptiveCQM for CBR and VBR.
This commit is contained in:
@@ -130,7 +130,6 @@ typedef struct {
|
||||
mfxU32 MinDisplayMasteringLuminance;
|
||||
mfxU16 MaxContentLightLevel;
|
||||
mfxU16 MaxPicAverageLightLevel;
|
||||
bool bMBBRC;
|
||||
bool bCQM;
|
||||
bool video_fmt_10bit;
|
||||
} qsv_param_t;
|
||||
|
||||
@@ -335,8 +335,6 @@ mfxStatus QSV_Encoder_Internal::InitParams(qsv_param_t *pParams,
|
||||
if (pParams->nRateControl == MFX_RATECONTROL_LA_ICQ ||
|
||||
pParams->nRateControl == MFX_RATECONTROL_LA)
|
||||
m_co2.LookAheadDepth = pParams->nLADEPTH;
|
||||
if (pParams->bMBBRC)
|
||||
m_co2.MBBRC = MFX_CODINGOPTION_ON;
|
||||
if (pParams->nbFrames > 1)
|
||||
m_co2.BRefType = MFX_B_REF_PYRAMID;
|
||||
if (m_mfxEncParams.mfx.LowPower == MFX_CODINGOPTION_ON) {
|
||||
@@ -356,6 +354,7 @@ mfxStatus QSV_Encoder_Internal::InitParams(qsv_param_t *pParams,
|
||||
m_co3.Header.BufferId = MFX_EXTBUFF_CODING_OPTION3;
|
||||
m_co3.Header.BufferSz = sizeof(m_co3);
|
||||
m_co3.ScenarioInfo = MFX_SCENARIO_GAME_STREAMING;
|
||||
m_co3.AdaptiveCQM = MFX_CODINGOPTION_ON;
|
||||
extendedBuffers.push_back((mfxExtBuffer *)&m_co3);
|
||||
}
|
||||
|
||||
|
||||
@@ -187,7 +187,7 @@ static void obs_qsv_defaults(obs_data_t *settings, int ver,
|
||||
obs_data_set_default_int(settings, "keyint_sec", 3);
|
||||
obs_data_set_default_string(settings, "latency", "normal");
|
||||
obs_data_set_default_int(settings, "bframes", 3);
|
||||
obs_data_set_default_bool(settings, "enhancements", false);
|
||||
obs_data_set_default_bool(settings, "enhancements", true);
|
||||
}
|
||||
|
||||
static void obs_qsv_defaults_h264_v1(obs_data_t *settings)
|
||||
@@ -717,7 +717,6 @@ static void update_params(struct obs_qsv *obsqsv, obs_data_t *settings)
|
||||
obsqsv->params.nbFrames = (mfxU16)bFrames;
|
||||
obsqsv->params.nKeyIntSec = (mfxU16)keyint_sec;
|
||||
obsqsv->params.nICQQuality = (mfxU16)icq_quality;
|
||||
obsqsv->params.bMBBRC = enhancements;
|
||||
obsqsv->params.bCQM = enhancements;
|
||||
|
||||
info("settings:\n"
|
||||
|
||||
Reference in New Issue
Block a user