History

Merge pull request #2286 from sijchen/ut3

[Encoder] adjust the input para judgement of iMaxNalSize

HaiboZhu committed 10 years ago

Commit ece95c82 parents 5bf677c 86674521 file · +12 −12Browse files

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

Unified · Split

codec/encoder/core/src/encoder_ext.cpp+12−12
@@ -417,9 +417,8 @@ int32_t ParamValidationExt (SLogContext* pLogCtx, SWelsSvcCodingParam* pCodingPa · 416 unmodified lines
417 return ENC_RETURN_UNSUPPORTED_PARA;417 return ENC_RETURN_UNSUPPORTED_PARA;
418 }418 }
419 if ((pCodingParam->uiMaxNalSize != 0) && (pSpatialLayer->sSliceArgument.uiSliceMode != SM_SIZELIMITED_SLICE)) {419 if ((pCodingParam->uiMaxNalSize != 0) && (pSpatialLayer->sSliceArgument.uiSliceMode != SM_SIZELIMITED_SLICE)) {
420 WelsLog (pLogCtx, WELS_LOG_ERROR, "ParamValidationExt(), invalid uiSliceMode (%d) settings!,MaxNalSize = %d",420 WelsLog (pLogCtx, WELS_LOG_WARNING, "ParamValidationExt(), current layer %d uiSliceMode (%d) settings may not fulfill MaxNalSize = %d", i,
421 pSpatialLayer->sSliceArgument.uiSliceMode, pCodingParam->uiMaxNalSize);421 pSpatialLayer->sSliceArgument.uiSliceMode, pCodingParam->uiMaxNalSize);
422 return ENC_RETURN_UNSUPPORTED_PARA;
423 }422 }
424 CheckProfileSetting (pLogCtx, pCodingParam, i, pSpatialLayer->uiProfileIdc);423 CheckProfileSetting (pLogCtx, pCodingParam, i, pSpatialLayer->uiProfileIdc);
425 CheckLevelSetting (pLogCtx, pCodingParam, i, pSpatialLayer->uiLevelIdc);424 CheckLevelSetting (pLogCtx, pCodingParam, i, pSpatialLayer->uiLevelIdc);
@@ -565,21 +564,22 @@ int32_t ParamValidationExt (SLogContext* pLogCtx, SWelsSvcCodingParam* pCodingPa · 139 unmodified lines
565 return ENC_RETURN_UNSUPPORTED_PARA;564 return ENC_RETURN_UNSUPPORTED_PARA;
566 }565 }
567 566
568 if (pCodingParam->uiMaxNalSize < (NAL_HEADER_ADD_0X30BYTES + MAX_MACROBLOCK_SIZE_IN_BYTE)) {567 if (pCodingParam->uiMaxNalSize > 0) {
569 WelsLog (pLogCtx, WELS_LOG_ERROR,568 if (pCodingParam->uiMaxNalSize < (NAL_HEADER_ADD_0X30BYTES + MAX_MACROBLOCK_SIZE_IN_BYTE)) {
570 "ParamValidationExt(), invalid uiMaxNalSize (%d) settings! should be larger than (NAL_HEADER_ADD_0X30BYTES + MAX_MACROBLOCK_SIZE_IN_BYTE)(%d)",569 WelsLog (pLogCtx, WELS_LOG_ERROR,
571 pCodingParam->uiMaxNalSize, (NAL_HEADER_ADD_0X30BYTES + MAX_MACROBLOCK_SIZE_IN_BYTE));570 "ParamValidationExt(), invalid uiMaxNalSize (%d) settings! should be larger than (NAL_HEADER_ADD_0X30BYTES + MAX_MACROBLOCK_SIZE_IN_BYTE)(%d)",
572 return ENC_RETURN_UNSUPPORTED_PARA;571 pCodingParam->uiMaxNalSize, (NAL_HEADER_ADD_0X30BYTES + MAX_MACROBLOCK_SIZE_IN_BYTE));
573 }572 return ENC_RETURN_UNSUPPORTED_PARA;
573 }
574 574
575 if (pSpatialLayer->sSliceArgument.uiSliceSizeConstraint > (pCodingParam->uiMaxNalSize -575 if (pSpatialLayer->sSliceArgument.uiSliceSizeConstraint > (pCodingParam->uiMaxNalSize -
576 NAL_HEADER_ADD_0X30BYTES)) {576 NAL_HEADER_ADD_0X30BYTES)) {
577 WelsLog (pLogCtx, WELS_LOG_WARNING,577 WelsLog (pLogCtx, WELS_LOG_WARNING,
578 "ParamValidationExt(), slice mode = SM_SIZELIMITED_SLICE, uiSliceSizeConstraint = %d ,uiMaxNalsize = %d, will take uiMaxNalsize!",578 "ParamValidationExt(), slice mode = SM_SIZELIMITED_SLICE, uiSliceSizeConstraint = %d ,uiMaxNalsize = %d, will take uiMaxNalsize!",
579 pSpatialLayer->sSliceArgument.uiSliceSizeConstraint, pCodingParam->uiMaxNalSize);579 pSpatialLayer->sSliceArgument.uiSliceSizeConstraint, pCodingParam->uiMaxNalSize);
580 pSpatialLayer->sSliceArgument.uiSliceSizeConstraint = pCodingParam->uiMaxNalSize - NAL_HEADER_ADD_0X30BYTES;580 pSpatialLayer->sSliceArgument.uiSliceSizeConstraint = pCodingParam->uiMaxNalSize - NAL_HEADER_ADD_0X30BYTES;
581 }
581 }582 }
582
583 }583 }
584 break;584 break;
585 default: {585 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