Revert "Merge pull request #1418 from cabirdme/qsv_feature_add"
This reverts commit3c22cf35c9
, reversing changes made toc7dab6c92b
. This is being reverted due to many people being unable to start up the QSV encoder with these changes.
This commit is contained in:
@@ -198,7 +198,6 @@ bool QSV_Encoder_Internal::InitParams(qsv_param_t * pParams)
|
||||
{
|
||||
memset(&m_mfxEncParams, 0, sizeof(m_mfxEncParams));
|
||||
|
||||
|
||||
m_mfxEncParams.mfx.CodecId = MFX_CODEC_AVC;
|
||||
m_mfxEncParams.mfx.GopOptFlag = MFX_GOP_STRICT;
|
||||
m_mfxEncParams.mfx.NumSlice = 1;
|
||||
@@ -213,7 +212,6 @@ bool QSV_Encoder_Internal::InitParams(qsv_param_t * pParams)
|
||||
m_mfxEncParams.mfx.FrameInfo.CropY = 0;
|
||||
m_mfxEncParams.mfx.FrameInfo.CropW = pParams->nWidth;
|
||||
m_mfxEncParams.mfx.FrameInfo.CropH = pParams->nHeight;
|
||||
m_mfxEncParams.mfx.GopRefDist = pParams->nbFrames + 1;
|
||||
|
||||
m_mfxEncParams.mfx.RateControlMethod = pParams->nRateControl;
|
||||
|
||||
@@ -245,10 +243,6 @@ bool QSV_Encoder_Internal::InitParams(qsv_param_t * pParams)
|
||||
case MFX_RATECONTROL_LA_ICQ:
|
||||
m_mfxEncParams.mfx.ICQQuality = pParams->nICQQuality;
|
||||
break;
|
||||
case MFX_RATECONTROL_LA_HRD:
|
||||
m_mfxEncParams.mfx.TargetKbps = pParams->nTargetBitRate;
|
||||
m_mfxEncParams.mfx.MaxKbps = pParams->nTargetBitRate;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
@@ -259,17 +253,28 @@ bool QSV_Encoder_Internal::InitParams(qsv_param_t * pParams)
|
||||
|
||||
static mfxExtBuffer* extendedBuffers[2];
|
||||
int iBuffers = 0;
|
||||
if (pParams->nAsyncDepth == 1) {
|
||||
m_mfxEncParams.mfx.NumRefFrame = 1;
|
||||
// low latency, I and P frames only
|
||||
m_mfxEncParams.mfx.GopRefDist = 1;
|
||||
memset(&m_co, 0, sizeof(mfxExtCodingOption));
|
||||
m_co.Header.BufferId = MFX_EXTBUFF_CODING_OPTION;
|
||||
m_co.Header.BufferSz = sizeof(mfxExtCodingOption);
|
||||
m_co.MaxDecFrameBuffering = 1;
|
||||
extendedBuffers[iBuffers++] = (mfxExtBuffer*)&m_co;
|
||||
}
|
||||
else
|
||||
m_mfxEncParams.mfx.GopRefDist = pParams->nbFrames + 1;
|
||||
|
||||
memset(&m_co2, 0, sizeof(mfxExtCodingOption2));
|
||||
m_co2.Header.BufferId = MFX_EXTBUFF_CODING_OPTION2;
|
||||
m_co2.Header.BufferSz = sizeof(m_co2);
|
||||
if (pParams->bMBBRC)
|
||||
m_co2.MBBRC = MFX_CODINGOPTION_ON;
|
||||
if (pParams->nRateControl == MFX_RATECONTROL_LA_ICQ ||
|
||||
pParams->nRateControl == MFX_RATECONTROL_LA)
|
||||
pParams->nRateControl == MFX_RATECONTROL_LA) {
|
||||
|
||||
memset(&m_co2, 0, sizeof(mfxExtCodingOption2));
|
||||
m_co2.Header.BufferId = MFX_EXTBUFF_CODING_OPTION;
|
||||
m_co2.Header.BufferSz = sizeof(m_co2);
|
||||
m_co2.LookAheadDepth = pParams->nLADEPTH;
|
||||
extendedBuffers[iBuffers++] = (mfxExtBuffer*)& m_co2;
|
||||
extendedBuffers[iBuffers++] = (mfxExtBuffer*)& m_co2;
|
||||
}
|
||||
|
||||
if (iBuffers > 0) {
|
||||
m_mfxEncParams.ExtParam = extendedBuffers;
|
||||
|
Reference in New Issue
Block a user