History

Merge pull request #1482 from ruil2/cabac_refine

add setoption trace

sijchen committed 12 years ago

Commit dbd43302 parents 938f441 c19db251 file · +39 −0Browse files

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

Unified · Split

codec/encoder/plus/src/welsEncoderExt.cpp+39−0
@@ -771,6 +771,9 @@ int CWelsH264SVCEncoder::SetOption (ENCODER_OPTION eOptionId, void* pOption) { · 770 unmodified lines
771 //adjust to valid range771 //adjust to valid range
772 m_pEncContext->pSvcParam->fMaxFrameRate = WELS_CLIP3 (iValue, MIN_FRAME_RATE, MAX_FRAME_RATE);772 m_pEncContext->pSvcParam->fMaxFrameRate = WELS_CLIP3 (iValue, MIN_FRAME_RATE, MAX_FRAME_RATE);
773 WelsEncoderApplyFrameRate (m_pEncContext->pSvcParam);773 WelsEncoderApplyFrameRate (m_pEncContext->pSvcParam);
774 WelsLog (&m_pWelsTrace->m_sLogCtx, WELS_LOG_INFO,
775 "CWelsH264SVCEncoder::SetOption():ENCODER_OPTION_FRAME_RATE,m_pEncContext->pSvcParam->fMaxFrameRate= %f",
776 m_pEncContext->pSvcParam->fMaxFrameRate);
774 }777 }
775 break;778 break;
776 case ENCODER_OPTION_BITRATE: { // Target bit-rate779 case ENCODER_OPTION_BITRATE: { // Target bit-rate
@@ -813,6 +816,8 @@ int CWelsH264SVCEncoder::SetOption (ENCODER_OPTION eOptionId, void* pOption) { · 36 unmodified lines
813 }816 }
814 //adjust to valid range817 //adjust to valid range
815 WelsEncoderApplyBitRate (&m_pWelsTrace->m_sLogCtx, m_pEncContext->pSvcParam, pInfo->iLayer);818 WelsEncoderApplyBitRate (&m_pWelsTrace->m_sLogCtx, m_pEncContext->pSvcParam, pInfo->iLayer);
819 WelsLog (&m_pWelsTrace->m_sLogCtx, WELS_LOG_INFO,
820 "CWelsH264SVCEncoder::SetOption():ENCODER_OPTION_BITRATE layerId= %d,iSpatialBitrate = %d", pInfo->iLayer, iBitrate);
816 }821 }
817 break;822 break;
818 case ENCODER_OPTION_MAX_BITRATE: { // Target bit-rate823 case ENCODER_OPTION_MAX_BITRATE: { // Target bit-rate
@@ -856,16 +861,25 @@ int CWelsH264SVCEncoder::SetOption (ENCODER_OPTION eOptionId, void* pOption) { · 37 unmodified lines
856 }861 }
857 //adjust to valid range862 //adjust to valid range
858 WelsEncoderApplyBitRate (&m_pWelsTrace->m_sLogCtx, m_pEncContext->pSvcParam, pInfo->iLayer);863 WelsEncoderApplyBitRate (&m_pWelsTrace->m_sLogCtx, m_pEncContext->pSvcParam, pInfo->iLayer);
864 WelsLog (&m_pWelsTrace->m_sLogCtx, WELS_LOG_INFO,
865 "CWelsH264SVCEncoder::SetOption():ENCODER_OPTION_MAX_BITRATE layerId= %d,iMaxSpatialBitrate = %d", pInfo->iLayer,
866 iBitrate);
859 }867 }
860 break;868 break;
861 case ENCODER_OPTION_RC_MODE: { // 0:quality mode;1:bit-rate mode;2:bitrate limited mode869 case ENCODER_OPTION_RC_MODE: { // 0:quality mode;1:bit-rate mode;2:bitrate limited mode
862 int32_t iValue = * ((int32_t*)pOption);870 int32_t iValue = * ((int32_t*)pOption);
863 m_pEncContext->pSvcParam->iRCMode = (RC_MODES) iValue;871 m_pEncContext->pSvcParam->iRCMode = (RC_MODES) iValue;
872 WelsLog (&m_pWelsTrace->m_sLogCtx, WELS_LOG_INFO,
873 "CWelsH264SVCEncoder::SetOption():ENCODER_OPTION_RC_MODE iRCMode= %d ",
874 iValue);
864 }875 }
865 break;876 break;
866 case ENCODER_PADDING_PADDING: { // 0:disable padding;1:padding877 case ENCODER_PADDING_PADDING: { // 0:disable padding;1:padding
867 int32_t iValue = * ((int32_t*)pOption);878 int32_t iValue = * ((int32_t*)pOption);
868 m_pEncContext->pSvcParam->iPaddingFlag = iValue;879 m_pEncContext->pSvcParam->iPaddingFlag = iValue;
880 WelsLog (&m_pWelsTrace->m_sLogCtx, WELS_LOG_INFO,
881 "CWelsH264SVCEncoder::SetOption():ENCODER_PADDING_PADDING iPaddingFlag= %d ",
882 iValue);
869 }883 }
870 break;884 break;
871 case ENCODER_LTR_RECOVERY_REQUEST: {885 case ENCODER_LTR_RECOVERY_REQUEST: {
@@ -881,6 +895,9 @@ int CWelsH264SVCEncoder::SetOption (ENCODER_OPTION eOptionId, void* pOption) { · 9 unmodified lines
881 case ENCODER_LTR_MARKING_PERIOD: {895 case ENCODER_LTR_MARKING_PERIOD: {
882 uint32_t iValue = * ((uint32_t*) (pOption));896 uint32_t iValue = * ((uint32_t*) (pOption));
883 m_pEncContext->pSvcParam->iLtrMarkPeriod = iValue;897 m_pEncContext->pSvcParam->iLtrMarkPeriod = iValue;
898 WelsLog (&m_pWelsTrace->m_sLogCtx, WELS_LOG_INFO,
899 "CWelsH264SVCEncoder::SetOption():ENCODER_LTR_MARKING_PERIOD iLtrMarkPeriod= %d ",
900 iValue);
884 }901 }
885 break;902 break;
886 case ENCODER_OPTION_LTR: {903 case ENCODER_OPTION_LTR: {
@@ -888,6 +905,10 @@ int CWelsH264SVCEncoder::SetOption (ENCODER_OPTION eOptionId, void* pOption) { · 1 unmodified line
888 if (WelsEncoderApplyLTR (&m_pWelsTrace->m_sLogCtx, &m_pEncContext, pLTRValue)) {905 if (WelsEncoderApplyLTR (&m_pWelsTrace->m_sLogCtx, &m_pEncContext, pLTRValue)) {
889 return cmInitParaError;906 return cmInitParaError;
890 }907 }
908 WelsLog (&m_pWelsTrace->m_sLogCtx, WELS_LOG_INFO,
909 "CWelsH264SVCEncoder::SetOption():ENCODER_OPTION_LTR,expected bEnableLongTermReference = %d,expeced iLTRRefNum = %d,actual bEnableLongTermReference = %d,actual iLTRRefNum = %d",
910 pLTRValue->bEnableLongTermReference, pLTRValue->iLTRRefNum, m_pEncContext->pSvcParam->bEnableLongTermReference,
911 m_pEncContext->pSvcParam->iLTRRefNum);
891 }912 }
892 break;913 break;
893 case ENCODER_OPTION_ENABLE_SSEI: {914 case ENCODER_OPTION_ENABLE_SSEI: {
@@ -960,6 +981,10 @@ int CWelsH264SVCEncoder::SetOption (ENCODER_OPTION eOptionId, void* pOption) { · 66 unmodified lines
960 return cmInitParaError;981 return cmInitParaError;
961 }982 }
962 CheckProfileSetting (pProfileInfo->iLayer, pProfileInfo->uiProfileIdc);983 CheckProfileSetting (pProfileInfo->iLayer, pProfileInfo->uiProfileIdc);
984 WelsLog (&m_pWelsTrace->m_sLogCtx, WELS_LOG_INFO,
985 "CWelsH264SVCEncoder::SetOption():ENCODER_OPTION_PROFILE,layerId = %d,expected profile = %d,actual profile = %d",
986 pProfileInfo->iLayer, pProfileInfo->uiProfileIdc,
987 m_pEncContext->pSvcParam->sSpatialLayers[pProfileInfo->iLayer].uiProfileIdc);
963 }988 }
964 break;989 break;
965 case ENCODER_OPTION_LEVEL: {990 case ENCODER_OPTION_LEVEL: {
@@ -970,21 +995,31 @@ int CWelsH264SVCEncoder::SetOption (ENCODER_OPTION eOptionId, void* pOption) { · 4 unmodified lines
970 return cmInitParaError;995 return cmInitParaError;
971 }996 }
972 CheckLevelSetting (pLevelInfo->iLayer, pLevelInfo->uiLevelIdc);997 CheckLevelSetting (pLevelInfo->iLayer, pLevelInfo->uiLevelIdc);
998 WelsLog (&m_pWelsTrace->m_sLogCtx, WELS_LOG_INFO,
999 "CWelsH264SVCEncoder::SetOption():ENCODER_OPTION_LEVEL,layerId = %d,expected level = %d,actual level = %d",
1000 pLevelInfo->iLayer, pLevelInfo->uiLevelIdc, m_pEncContext->pSvcParam->sSpatialLayers[pLevelInfo->iLayer].uiLevelIdc);
973 }1001 }
974 break;1002 break;
975 case ENCODER_OPTION_NUMBER_REF: {1003 case ENCODER_OPTION_NUMBER_REF: {
976 int32_t iValue = * ((int32_t*)pOption);1004 int32_t iValue = * ((int32_t*)pOption);
977 CheckReferenceNumSetting (iValue);1005 CheckReferenceNumSetting (iValue);
1006 WelsLog (&m_pWelsTrace->m_sLogCtx, WELS_LOG_INFO,
1007 "CWelsH264SVCEncoder::SetOption():ENCODER_OPTION_NUMBER_REF,expected refNum = %d,actual refnum = %d", iValue,
1008 m_pEncContext->pSvcParam->iNumRefFrame);
978 }1009 }
979 break;1010 break;
980 case ENCODER_OPTION_DELIVERY_STATUS: {1011 case ENCODER_OPTION_DELIVERY_STATUS: {
981 SDeliveryStatus* pValue = (static_cast<SDeliveryStatus*> (pOption));1012 SDeliveryStatus* pValue = (static_cast<SDeliveryStatus*> (pOption));
982 m_pEncContext->bDeliveryFlag = pValue->bDeliveryFlag;1013 m_pEncContext->bDeliveryFlag = pValue->bDeliveryFlag;
1014 WelsLog (&m_pWelsTrace->m_sLogCtx, WELS_LOG_INFO,
1015 "CWelsH264SVCEncoder::SetOption():ENCODER_OPTION_DELIVERY_STATUS,bDeliveryFlag = %d", pValue->bDeliveryFlag);
983 }1016 }
984 break;1017 break;
985 case ENCODER_OPTION_COMPLEXITY: {1018 case ENCODER_OPTION_COMPLEXITY: {
986 int32_t iValue = * (static_cast<int32_t*> (pOption));1019 int32_t iValue = * (static_cast<int32_t*> (pOption));
987 m_pEncContext->pSvcParam->iComplexityMode = (ECOMPLEXITY_MODE)iValue;1020 m_pEncContext->pSvcParam->iComplexityMode = (ECOMPLEXITY_MODE)iValue;
1021 WelsLog (&m_pWelsTrace->m_sLogCtx, WELS_LOG_INFO,
1022 "CWelsH264SVCEncoder::SetOption():ENCODER_OPTION_COMPLEXITY,iComplexityMode = %d", iValue);
988 }1023 }
989 break;1024 break;
990 case ENCODER_OPTION_GET_STATISTICS: {1025 case ENCODER_OPTION_GET_STATISTICS: {
@@ -995,11 +1030,15 @@ int CWelsH264SVCEncoder::SetOption (ENCODER_OPTION eOptionId, void* pOption) { · 4 unmodified lines
995 case ENCODER_OPTION_STATISTICS_LOG_INTERVAL: {1030 case ENCODER_OPTION_STATISTICS_LOG_INTERVAL: {
996 int32_t iValue = * (static_cast<int32_t*> (pOption));1031 int32_t iValue = * (static_cast<int32_t*> (pOption));
997 m_pEncContext->iStatisticsLogInterval = iValue;1032 m_pEncContext->iStatisticsLogInterval = iValue;
1033 WelsLog (&m_pWelsTrace->m_sLogCtx, WELS_LOG_INFO,
1034 "CWelsH264SVCEncoder::SetOption():ENCODER_OPTION_STATISTICS_LOG_INTERVAL,iStatisticsLogInterval = %d", iValue);
998 }1035 }
999 break;1036 break;
1000 case ENCODER_OPTION_IS_LOSSLESS_LINK: {1037 case ENCODER_OPTION_IS_LOSSLESS_LINK: {
1001 bool bValue = * (static_cast<bool*> (pOption));1038 bool bValue = * (static_cast<bool*> (pOption));
1002 m_pEncContext->pSvcParam->bIsLosslessLink = bValue;1039 m_pEncContext->pSvcParam->bIsLosslessLink = bValue;
1040 WelsLog (&m_pWelsTrace->m_sLogCtx, WELS_LOG_INFO,
1041 "CWelsH264SVCEncoder::SetOption():ENCODER_OPTION_IS_LOSSLESS_LINK,bIsLosslessLink = %d", bValue);
1003 }1042 }
1004 break;1043 break;
1005 default:1044 default:

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