History

interface update

ruil2 committed 12 years ago

Commit 45c2fff1 parent 2f53a089 files · +33 −46Browse files

Showing the changes to codec/encoder/plus/src/welsEncoderExt.cpp (1 of 9 files). Show all

Unified · Split

codec/encoder/plus/src/welsEncoderExt.cpp+12−21
@@ -293,14 +293,6 @@ int CWelsH264SVCEncoder::InitializeInternal (SWelsSvcCodingParam* pCfg) { · 292 unmodified lines
293293 }
294294 #endif//REC_FRAME_COUNT
295295
296− const int32_t iColorspace = pCfg->iInputCsp;
297− if (videoFormatI420 != iColorspace) {
298− WelsLog (&m_pWelsTrace->m_sLogCtx, WELS_LOG_ERROR, "CWelsH264SVCEncoder::Initialize(), invalid iInputCsp= %d.\n",
299− iColorspace);
300− Uninitialize();
301− return cmInitParaError;
302− }
303−
304296 // Check valid parameters
305297 const int32_t iNumOfLayers = pCfg->iSpatialLayerNum;
306298 if (iNumOfLayers < 1 || iNumOfLayers > MAX_DEPENDENCY_LAYER) {
@@ -378,7 +370,6 @@ int CWelsH264SVCEncoder::InitializeInternal (SWelsSvcCodingParam* pCfg) { · 71 unmodified lines
378370 }
379371
380372 const int32_t kiDecStages = WELS_LOG2 (pCfg->uiGopSize);
381− pCfg->iInputCsp = iColorspace;
382373 pCfg->iTemporalLayerNum = (int8_t) (1 + kiDecStages);
383374 pCfg->iLoopFilterAlphaC0Offset = WELS_CLIP3 (pCfg->iLoopFilterAlphaC0Offset, -6, 6);
384375 pCfg->iLoopFilterBetaOffset = WELS_CLIP3 (pCfg->iLoopFilterBetaOffset, -6, 6);
@@ -393,7 +384,6 @@ int CWelsH264SVCEncoder::InitializeInternal (SWelsSvcCodingParam* pCfg) { · 8 unmodified lines
393384 return cmInitParaError;
394385 }
395386
396− m_iCspInternal = iColorspace;
397387 m_bInitialFlag = true;
398388
399389 return cmResultSuccess;
@@ -645,16 +635,12 @@ int CWelsH264SVCEncoder::SetOption (ENCODER_OPTION eOptionId, void* pOption) { · 245 unmodified lines
645635 case ENCODER_OPTION_SVC_ENCODE_PARAM_EXT: { // SVC Encoding Parameter
646636 SEncParamExt sEncodingParam;
647637 SWelsSvcCodingParam sConfig;
648− int32_t iInputColorspace = 0;
649638 int32_t iTargetWidth = 0;
650639 int32_t iTargetHeight = 0;
651640
652641 memcpy (&sEncodingParam, pOption, sizeof (SEncParamExt)); // confirmed_safe_unsafe_usage
653642 WelsLog (&m_pWelsTrace->m_sLogCtx, WELS_LOG_INFO,
654− "ENCODER_OPTION_SVC_ENCODE_PARAM_EXT, sEncodingParam.iInputCsp= 0x%x\n",
655− sEncodingParam.iInputCsp);
656− WelsLog (&m_pWelsTrace->m_sLogCtx, WELS_LOG_INFO,
657− "coding_param->iPicWidth= %d;coding_param->iPicHeight= %d;coding_param->iTargetBitrate= %d; coding_param->iMaxBitrate= %d; coding_param->iRCMode= %d;coding_param->iPaddingFlag= %d;coding_param->iTemporalLayerNum= %d;coding_param->iSpatialLayerNum= %d;coding_param->fFrameRate= %.6ff;coding_param->iInputCsp= %d;coding_param->uiIntraPeriod= %d;coding_param->bEnableSpsPpsIdAddition = %d;coding_param->bPrefixNalAddingCtrl = %d;coding_param->bEnableDenoise= %d;coding_param->bEnableBackgroundDetection= %d;coding_param->bEnableAdaptiveQuant= %d;coding_param->bEnableAdaptiveQuant= %d;coding_param->bEnableLongTermReference= %d;coding_param->iLtrMarkPeriod= %d;\n",
643+ "coding_param->iPicWidth= %d;coding_param->iPicHeight= %d;coding_param->iTargetBitrate= %d; coding_param->iMaxBitrate= %d; coding_param->iRCMode= %d;coding_param->iPaddingFlag= %d;coding_param->iTemporalLayerNum= %d;coding_param->iSpatialLayerNum= %d;coding_param->fFrameRate= %.6ff;coding_param->uiIntraPeriod= %d;coding_param->bEnableSpsPpsIdAddition = %d;coding_param->bPrefixNalAddingCtrl = %d;coding_param->bEnableDenoise= %d;coding_param->bEnableBackgroundDetection= %d;coding_param->bEnableAdaptiveQuant= %d;coding_param->bEnableAdaptiveQuant= %d;coding_param->bEnableLongTermReference= %d;coding_param->iLtrMarkPeriod= %d;\n",
658644 sEncodingParam.iPicWidth,
659645 sEncodingParam.iPicHeight,
660646 sEncodingParam.iTargetBitrate,
@@ -664,7 +650,6 @@ int CWelsH264SVCEncoder::SetOption (ENCODER_OPTION eOptionId, void* pOption) { · 3 unmodified lines
664650 sEncodingParam.iTemporalLayerNum,
665651 sEncodingParam.iSpatialLayerNum,
666652 sEncodingParam.fMaxFrameRate,
667− sEncodingParam.iInputCsp,
668653 sEncodingParam.uiIntraPeriod,
669654 sEncodingParam.bEnableSpsPpsIdAddition,
670655 sEncodingParam.bPrefixNalAddingCtrl,
@@ -702,7 +687,6 @@ int CWelsH264SVCEncoder::SetOption (ENCODER_OPTION eOptionId, void* pOption) { · 31 unmodified lines
702687 return cmInitParaError;
703688 }
704689
705− iInputColorspace = sEncodingParam.iInputCsp;
706690 if (sConfig.ParamTranscode (sEncodingParam)) {
707691 return cmInitParaError;
708692 }
@@ -711,11 +695,10 @@ int CWelsH264SVCEncoder::SetOption (ENCODER_OPTION eOptionId, void* pOption) { · 2 unmodified lines
711695 }
712696 iTargetWidth = sConfig.iPicWidth;
713697 iTargetHeight = sConfig.iPicHeight;
714− if (m_iCspInternal != iInputColorspace || m_iMaxPicWidth != iTargetWidth
715− || m_iMaxPicHeight != iTargetHeight) { // for color space due to changed
698+ if (m_iMaxPicWidth != iTargetWidth
699+ || m_iMaxPicHeight != iTargetHeight) {
716700 m_iMaxPicWidth = iTargetWidth;
717701 m_iMaxPicHeight = iTargetHeight;
718− m_iCspInternal = iInputColorspace;
719702 }
720703 #ifdef REC_FRAME_COUNT
721704 WelsLog (&m_pWelsTrace->m_sLogCtx, WELS_LOG_INFO,
@@ -724,7 +707,6 @@ int CWelsH264SVCEncoder::SetOption (ENCODER_OPTION eOptionId, void* pOption) { · 2 unmodified lines
724707 #endif//REC_FRAME_COUNT
725708
726709 /* New configuration available here */
727− sConfig.iInputCsp = m_iCspInternal; // I420 in default designed for presentation in encoder used internal
728710 sConfig.DetermineTemporalSettings();
729711
730712 /* Check every field whether there is new request for memory block changed or else, Oct. 24, 2008 */
@@ -953,6 +935,11 @@ int CWelsH264SVCEncoder::SetOption (ENCODER_OPTION eOptionId, void* pOption) { · 222 unmodified lines
953935 m_pEncContext->iDropNumber = pValue->iDropNum;
954936 }
955937 break;
938+ case ENCODER_OPTION_COMPLEXITY: {
939+ int32_t iValue = * ((int32_t*)pOption);
940+ m_pEncContext->pSvcParam->iComplexityMode = (ECOMPLEXITY_MODE)iValue;
941+ }
942+ break;
956943 default:
957944 return cmInitParaError;
958945 }
@@ -1055,6 +1042,10 @@ int CWelsH264SVCEncoder::GetOption (ENCODER_OPTION eOptionId, void* pOption) { · 96 unmodified lines
10551042 }
10561043 }
10571044 break;
1045+ case ENCODER_OPTION_COMPLEXITY: {
1046+ * ((int32_t*)pOption) = m_pEncContext->pSvcParam->iComplexityMode;
1047+ }
1048+ break;
10581049 default:
10591050 return cmInitParaError;
10601051 }

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