This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

DM8127 H264 Encoder ROI



Hi folks,


We are trying to enable the ROI feature on the H264 encoder.  Our platform is as follows:

1. DM8127 processor

2. H.264 Encoder version 02.00.02.02.

Firstly, does ROI function correctly on this version of the encoder?

When we try to enable ROI on the encoder (by setting the enableROI flag in the dynamic params) we are finding that, when we read the encoder status back the enableROI flag is always set to zero.  There is no error being reported from any of the function calls.

My understanding is that there are certain combinations of H.264 parameters that cause ROI to be automatically disabled.    Is there are definitive list available?

I can supply a list of our current settings if need be.

Any help would be appreciated with this problem,

Thanks in advance,

Regards,

Terry

  • Hi Terry,

    ROI functions correctly in H.264 Encoder version 02.00.02.02.

    Can you provide the encoder configuration settings, including the static and dynamic parameters, and also the ROI input parameters so that we can analyze and give a valid suggestion ?

  • Hi Mohd,

    Thanks for the quick reply, our settings are as follows:

    Static Settings:

    --------------------

    N:Video P:1 #:01559 T:0000000912c0547b M:xdc.runtime.Main S:videnc2Params->size = 312
    N:Video P:1 #:01560 T:0000000912c0b1b9 M:xdc.runtime.Main S:videnc2Params->encodingPreset = 3
    N:Video P:1 #:01561 T:0000000912c10d4b M:xdc.runtime.Main S:videnc2Params->rateControlPreset = 1
    N:Video P:1 #:01562 T:0000000912c1680d M:xdc.runtime.Main S:videnc2Params->maxHeight = 720
    N:Video P:1 #:01563 T:0000000912c1c44b M:xdc.runtime.Main S:videnc2Params->maxWidth = 1280
    N:Video P:1 #:01564 T:0000000912c2212b M:xdc.runtime.Main S:videnc2Params->dataEndianness = 1
    N:Video P:1 #:01565 T:0000000912c2783b M:xdc.runtime.Main S:videnc2Params->maxInterFrameInterval = 1
    N:Video P:1 #:01566 T:0000000912c2d101 M:xdc.runtime.Main S:videnc2Params->maxBitRate = -1
    N:Video P:1 #:01567 T:0000000912c32a79 M:xdc.runtime.Main S:videnc2Params->minBitRate = 0
    N:Video P:1 #:01568 T:0000000912c38521 M:xdc.runtime.Main S:videnc2Params->inputChromaFormat = 9
    N:Video P:1 #:01569 T:0000000912c3df3b M:xdc.runtime.Main S:videnc2Params->inputContentType = 0
    N:Video P:1 #:01570 T:0000000912c438ab M:xdc.runtime.Main S:videnc2Params->operatingMode = 1
    N:Video P:1 #:01571 T:0000000912c49385 M:xdc.runtime.Main S:videnc2Params->profile = 100
    N:Video P:1 #:01572 T:0000000912c4ef9f M:xdc.runtime.Main S:videnc2Params->level = 42
    N:Video P:1 #:01573 T:0000000912c562fd M:xdc.runtime.Main S:videnc2Params->inputDataMode = 3
    N:Video P:1 #:01574 T:0000000912c5bbad M:xdc.runtime.Main S:videnc2Params->outputDataMode = 3
    N:Video P:1 #:01575 T:0000000912c61255 M:xdc.runtime.Main S:videnc2Params->numInputDataUnits = 1
    N:Video P:1 #:01576 T:0000000912c66aad M:xdc.runtime.Main S:videnc2Params->numOutputDataUnits = 1
    N:Video P:1 #:01577 T:0000000912c6c9a1 M:xdc.runtime.Main S:videnc2Params.metadataType[0] = -1
    N:Video P:1 #:01578 T:0000000912c72883 M:xdc.runtime.Main S:videnc2Params.metadataType[1] = -1
    N:Video P:1 #:01579 T:0000000912c7804d M:xdc.runtime.Main S:videnc2Params.metadataType[2] = -1
    N:Video P:1 #:01580 T:0000000912c7da2f M:xdc.runtime.Main S:rateControlParams->rateControlParamsPreset = 0
    N:Video P:1 #:01581 T:0000000912c83467 M:xdc.runtime.Main S:rateControlParams->scalingMatrixPreset = 1
    N:Video P:1 #:01582 T:0000000912c88db1 M:xdc.runtime.Main S:rateControlParams->rcAlgo = 0
    N:Video P:1 #:01583 T:0000000912c8e4c1 M:xdc.runtime.Main S:rateControlParams->qpI = -1
    N:Video P:1 #:01584 T:0000000912c93f75 M:xdc.runtime.Main S:rateControlParams->qpMaxI = 36
    N:Video P:1 #:01585 T:0000000912c99b4d M:xdc.runtime.Main S:rateControlParams->qpMinI = 10
    N:Video P:1 #:01586 T:0000000912c9f3e9 M:xdc.runtime.Main S:rateControlParams->qpP = -1
    N:Video P:1 #:01587 T:0000000912ca4fff M:xdc.runtime.Main S:rateControlParams->qpMaxP = 40
    N:Video P:1 #:01588 T:0000000912caa92d M:xdc.runtime.Main S:rateControlParams->qpMinP = 10
    N:Video P:1 #:01589 T:0000000912cb05f5 M:xdc.runtime.Main S:rateControlParams->qpOffsetB = 4
    N:Video P:1 #:01590 T:0000000912cb5deb M:xdc.runtime.Main S:rateControlParams->qpMaxB = 44
    N:Video P:1 #:01591 T:0000000912cbb803 M:xdc.runtime.Main S:rateControlParams->qpMinB = 10
    N:Video P:1 #:01592 T:0000000912cc1389 M:xdc.runtime.Main S:rateControlParams->allowFrameSkip = 0
    N:Video P:1 #:01593 T:0000000912cc6a75 M:xdc.runtime.Main S:rateControlParams->removeExpensiveCoeff = 0
    N:Video P:1 #:01594 T:0000000912ccc371 M:xdc.runtime.Main S:rateControlParams->chromaQPIndexOffset = 0
    N:Video P:1 #:01595 T:0000000912cd19fb M:xdc.runtime.Main S:rateControlParams->IPQualityFactor = 0
    N:Video P:1 #:01596 T:0000000912cd7209 M:xdc.runtime.Main S:rateControlParams->initialBufferLevel = 750000
    N:Video P:1 #:01597 T:0000000912cdcc35 M:xdc.runtime.Main S:rateControlParams->HRDBufferSize = 750000
    N:Video P:1 #:01598 T:0000000912ce43af M:xdc.runtime.Main S:rateControlParams->minPicSizeRatioI = 0
    N:Video P:1 #:01599 T:0000000912ce9d0f M:xdc.runtime.Main S:rateControlParams->maxPicSizeRatioI = 640
    N:Video P:1 #:01600 T:0000000912cef685 M:xdc.runtime.Main S:rateControlParams->minPicSizeRatioP = 0
    N:Video P:1 #:01601 T:0000000912cf4d7b M:xdc.runtime.Main S:rateControlParams->maxPicSizeRatioP = 0
    N:Video P:1 #:01602 T:0000000912cfa947 M:xdc.runtime.Main S:rateControlParams->minPicSizeRatioB = 0
    N:Video P:1 #:01603 T:0000000912cfffbb M:xdc.runtime.Main S:rateControlParams->maxPicSizeRatioB = 0
    N:Video P:1 #:01604 T:0000000912d05905 M:xdc.runtime.Main S:rateControlParams->enablePRC = 1
    N:Video P:1 #:01605 T:0000000912d0b141 M:xdc.runtime.Main S:rateControlParams->enablePartialFrameSkip = 0
    N:Video P:1 #:01606 T:0000000912d10959 M:xdc.runtime.Main S:rateControlParams->discardSavedBits = 0
    N:Video P:1 #:01607 T:0000000912d1619d M:xdc.runtime.Main S:rateControlParams->reserved = 0
    N:Video P:1 #:01608 T:0000000912d1ba75 M:xdc.runtime.Main S:rateControlParams->VBRDuration = 8
    N:Video P:1 #:01609 T:0000000912d21195 M:xdc.runtime.Main S:rateControlParams->VBRsensitivity = 0
    N:Video P:1 #:01610 T:0000000912d26a97 M:xdc.runtime.Main S:rateControlParams->skipDistributionWindowLength = 5
    N:Video P:1 #:01611 T:0000000912d2c1b3 M:xdc.runtime.Main S:rateControlParams->numSkipInDistributionWindow = 1
    N:Video P:1 #:01612 T:0000000912d31a81 M:xdc.runtime.Main S:rateControlParams->enableHRDComplianceMode = 1
    N:Video P:1 #:01613 T:0000000912d371ab M:xdc.runtime.Main S:rateControlParams->frameSkipThMulQ5 = 0
    N:Video P:1 #:01614 T:0000000912d3c929 M:xdc.runtime.Main S:rateControlParams->vbvUseLevelThQ5 = 0
    N:Video P:1 #:01615 T:0000000912d42227 M:xdc.runtime.Main S:rateControlParams.reservedRC[0] = 0
    N:Video P:1 #:01616 T:0000000912d47c65 M:xdc.runtime.Main S:rateControlParams.reservedRC[1] = 0
    N:Video P:1 #:01617 T:0000000912d4d7f3 M:xdc.runtime.Main S:rateControlParams.reservedRC[2] = 0
    N:Video P:1 #:01618 T:0000000912d52f71 M:xdc.runtime.Main S:interCodingParams->interCodingPreset = 0
    N:Video P:1 #:01619 T:0000000912d58991 M:xdc.runtime.Main S:interCodingParams->searchRangeHorP = 144
    N:Video P:1 #:01620 T:0000000912d5e505 M:xdc.runtime.Main S:interCodingParams->searchRangeVerP = 32
    N:Video P:1 #:01621 T:0000000912d640ef M:xdc.runtime.Main S:interCodingParams->searchRangeHorB = 144
    N:Video P:1 #:01622 T:0000000912d6b067 M:xdc.runtime.Main S:interCodingParams->searchRangeVerB = 16
    N:Video P:1 #:01623 T:0000000912d70ac9 M:xdc.runtime.Main S:interCodingParams->interCodingBias = 1
    N:Video P:1 #:01624 T:0000000912d76615 M:xdc.runtime.Main S:interCodingParams->skipMVCodingBias = 1
    N:Video P:1 #:01625 T:0000000912d7c0bd M:xdc.runtime.Main S:interCodingParams->minBlockSizeP = 0
    N:Video P:1 #:01626 T:0000000912d81df3 M:xdc.runtime.Main S:interCodingParams->minBlockSizeB = 0
    N:Video P:1 #:01627 T:0000000912d87933 M:xdc.runtime.Main S:interCodingParams->meAlgoMode = 0
    N:Video P:1 #:01628 T:0000000912d8d29f M:xdc.runtime.Main S:intraCodingParams->intraCodingPreset = 0
    N:Video P:1 #:01629 T:0000000912d92d81 M:xdc.runtime.Main S:intraCodingParams->lumaIntra4x4Enable = 0
    N:Video P:1 #:01630 T:0000000912d988e3 M:xdc.runtime.Main S:intraCodingParams->lumaIntra8x8Enable = 255
    N:Video P:1 #:01631 T:0000000912d9e617 M:xdc.runtime.Main S:intraCodingParams->lumaIntra16x16Enable = 15
    N:Video P:1 #:01632 T:0000000912da4197 M:xdc.runtime.Main S:intraCodingParams->chromaIntra8x8Enable = 15
    N:Video P:1 #:01633 T:0000000912da9b79 M:xdc.runtime.Main S:intraCodingParams->chromaComponentEnable = 1
    N:Video P:1 #:01634 T:0000000912daf72f M:xdc.runtime.Main S:intraCodingParams->intraRefreshMethod = 0
    N:Video P:1 #:01635 T:0000000912db5209 M:xdc.runtime.Main S:intraCodingParams->intraRefreshRate = 0
    N:Video P:1 #:01636 T:0000000912dbad6b M:xdc.runtime.Main S:intraCodingParams->gdrOverlapRowsBtwFrames = 0
    N:Video P:1 #:01637 T:0000000912dc08c7 M:xdc.runtime.Main S:intraCodingParams->constrainedIntraPredEnable = 0
    N:Video P:1 #:01638 T:0000000912dc63a3 M:xdc.runtime.Main S:intraCodingParams->intraCodingBias = 0
    N:Video P:1 #:01639 T:0000000912dcbeb7 M:xdc.runtime.Main S:nalUnitControlParams->naluControlPreset = 0
    N:Video P:1 #:01640 T:0000000912dd196f M:xdc.runtime.Main S:nalUnitControlParams->naluPresentMaskStartOfSequence = 416
    N:Video P:1 #:01641 T:0000000912dd7675 M:xdc.runtime.Main S:nalUnitControlParams->naluPresentMaskIDRPicture = 416
    N:Video P:1 #:01642 T:0000000912ddd29b M:xdc.runtime.Main S:nalUnitControlParams->naluPresentMaskIntraPicture = 2
    N:Video P:1 #:01643 T:0000000912de2ecb M:xdc.runtime.Main S:nalUnitControlParams->naluPresentMaskNonIntraPicture = 2
    N:Video P:1 #:01644 T:0000000912de8aef M:xdc.runtime.Main S:nalUnitControlParams->naluPresentMaskEndOfSequence = 3072
    N:Video P:1 #:01645 T:0000000912dee70b M:xdc.runtime.Main S:sliceCodingParams->sliceCodingPreset = 0
    N:Video P:1 #:01646 T:0000000912df5737 M:xdc.runtime.Main S:sliceCodingParams->sliceMode = 0
    N:Video P:1 #:01647 T:0000000912dfaf4f M:xdc.runtime.Main S:sliceCodingParams->sliceUnitSize = 0
    N:Video P:1 #:01648 T:0000000912e00757 M:xdc.runtime.Main S:sliceCodingParams->sliceStartOffset[0] = 0
    N:Video P:1 #:01649 T:0000000912e06197 M:xdc.runtime.Main S:sliceCodingParams->sliceStartOffset[1] = 0
    N:Video P:1 #:01650 T:0000000912e0c019 M:xdc.runtime.Main S:sliceCodingParams->sliceStartOffset[2] = 0
    N:Video P:1 #:01651 T:0000000912e118d9 M:xdc.runtime.Main S:sliceCodingParams->streamFormat = 0
    N:Video P:1 #:01652 T:0000000912e17589 M:xdc.runtime.Main S:loopFilterParams->loopfilterPreset = 0
    N:Video P:1 #:01653 T:0000000912e1d0e3 M:xdc.runtime.Main S:loopFilterParams->loopfilterDisableIDC = 0
    N:Video P:1 #:01654 T:0000000912e22c43 M:xdc.runtime.Main S:loopFilterParams->filterOffsetA = 0
    N:Video P:1 #:01655 T:0000000912e28753 M:xdc.runtime.Main S:loopFilterParams->filterOffsetB = 0
    N:Video P:1 #:01656 T:0000000912e2e2af M:xdc.runtime.Main S:fmoCodingParams->fmoCodingPreset = 0
    N:Video P:1 #:01657 T:0000000912e33d7b M:xdc.runtime.Main S:fmoCodingParams->numSliceGroups = 1
    N:Video P:1 #:01658 T:0000000912e397a5 M:xdc.runtime.Main S:fmoCodingParams->sliceGroupMapType = 4
    N:Video P:1 #:01659 T:0000000912e3f259 M:xdc.runtime.Main S:fmoCodingParams->sliceGroupChangeDirectionFlag = 0
    N:Video P:1 #:01660 T:0000000912e44d15 M:xdc.runtime.Main S:fmoCodingParams->sliceGroupChangeRate = 0
    N:Video P:1 #:01661 T:0000000912e4a693 M:xdc.runtime.Main S:fmoCodingParams->sliceGroupChangeCycle = 0
    N:Video P:1 #:01662 T:0000000912e5024f M:xdc.runtime.Main S:fmoCodingParams->sliceGroupParams[0] = 0
    N:Video P:1 #:01663 T:0000000912e55e83 M:xdc.runtime.Main S:fmoCodingParams->sliceGroupParams[1] = 0
    N:Video P:1 #:01664 T:0000000912e5b61b M:xdc.runtime.Main S:vuiCodingParams->vuiCodingPreset = 0
    N:Video P:1 #:01665 T:0000000912e610f1 M:xdc.runtime.Main S:vuiCodingParams->aspectRatioInfoPresentFlag = 0
    N:Video P:1 #:01666 T:0000000912e66c05 M:xdc.runtime.Main S:vuiCodingParams->aspectRatioIdc = 0
    N:Video P:1 #:01667 T:0000000912e6c6db M:xdc.runtime.Main S:vuiCodingParams->videoSignalTypePresentFlag = 0
    N:Video P:1 #:01668 T:0000000912e7226d M:xdc.runtime.Main S:vuiCodingParams->videoFormat = 2
    N:Video P:1 #:01669 T:0000000912e7bdd7 M:xdc.runtime.Main S:vuiCodingParams->videoFullRangeFlag = 0
    N:Video P:1 #:01670 T:0000000912e81ce5 M:xdc.runtime.Main S:vuiCodingParams->timingInfoPresentFlag = 0
    N:Video P:1 #:01671 T:0000000912e8790d M:xdc.runtime.Main S:vuiCodingParams->hrdParamsPresentFlag = 0
    N:Video P:1 #:01672 T:0000000912e8d3d1 M:xdc.runtime.Main S:vuiCodingParams->numUnitsInTicks = 1000
    N:Video P:1 #:01673 T:0000000912e934ad M:xdc.runtime.Main S:stereoInfoParams->stereoInfoPreset = 0
    N:Video P:1 #:01674 T:0000000912e98ff9 M:xdc.runtime.Main S:stereoInfoParams->topFieldIsLeftViewFlag = 0
    N:Video P:1 #:01675 T:0000000912e9e64b M:xdc.runtime.Main S:stereoInfoParams->viewSelfContainedFlag = 0
    N:Video P:1 #:01676 T:0000000912ea3f03 M:xdc.runtime.Main S:framePackingSEIParams->framePackingPreset = 0
    N:Video P:1 #:01677 T:0000000912ea9615 M:xdc.runtime.Main S:framePackingSEIParams->framePackingType = 0
    N:Video P:1 #:01678 T:0000000912eaefa3 M:xdc.runtime.Main S:framePackingSEIParams->frame0PositionX = 0
    N:Video P:1 #:01679 T:0000000912eb480d M:xdc.runtime.Main S:framePackingSEIParams->frame0PositionY = 0
    N:Video P:1 #:01680 T:0000000912eba0d5 M:xdc.runtime.Main S:framePackingSEIParams->frame1PositionX = 0
    N:Video P:1 #:01681 T:0000000912ebf831 M:xdc.runtime.Main S:framePackingSEIParams->frame1PositionY = 0
    N:Video P:1 #:01682 T:0000000912ec5039 M:xdc.runtime.Main S:framePackingSEIParams->reservedByte = 0
    N:Video P:1 #:01683 T:0000000912eca69d M:xdc.runtime.Main S:svcCodingParams->svcExtensionFlag = 0
    N:Video P:1 #:01684 T:0000000912ecff81 M:xdc.runtime.Main S:svcCodingParams->dependencyID = 0
    N:Video P:1 #:01685 T:0000000912ed572d M:xdc.runtime.Main S:svcCodingParams->qualityID = 0
    N:Video P:1 #:01686 T:0000000912edb075 M:xdc.runtime.Main S:svcCodingParams->enhancementProfileID = 0
    N:Video P:1 #:01687 T:0000000912ee0795 M:xdc.runtime.Main S:svcCodingParams->layerIndex = 0
    N:Video P:1 #:01688 T:0000000912ee5f03 M:xdc.runtime.Main S:svcCodingParams->refLayerDQId = 0
    N:Video P:1 #:01689 T:0000000912eeb623 M:xdc.runtime.Main S:interlaceCodingType = 3
    N:Video P:1 #:01690 T:0000000912ef0f47 M:xdc.runtime.Main S:bottomFieldIntra = 0
    N:Video P:1 #:01691 T:0000000912ef662d M:xdc.runtime.Main S:gopStructure = 0
    N:Video P:1 #:01692 T:0000000912efbf0b M:xdc.runtime.Main S:entropyCodingMode = 1
    N:Video P:1 #:01693 T:0000000912f033e3 M:xdc.runtime.Main S:transformBlockSize = 1
    N:Video P:1 #:01694 T:0000000912f08cb7 M:xdc.runtime.Main S:log2MaxFNumMinus4 = 12
    N:Video P:1 #:01695 T:0000000912f0e5c5 M:xdc.runtime.Main S:picOrderCountType = 0
    N:Video P:1 #:01696 T:0000000912f140d5 M:xdc.runtime.Main S:mbMetaDataEnable = 0
    N:Video P:1 #:01697 T:0000000912f19c63 M:xdc.runtime.Main S:enableWatermark = 0
    N:Video P:1 #:01698 T:0000000912f1f939 M:xdc.runtime.Main S:IDRFrameInterval = 0
    N:Video P:1 #:01699 T:0000000912f2540b M:xdc.runtime.Main S:pConstantMemory = 32767
    N:Video P:1 #:01700 T:0000000912f2b225 M:xdc.runtime.Main S:maxIntraFrameInterval = 0
    N:Video P:1 #:01701 T:0000000912f30ef1 M:xdc.runtime.Main S:debugTraceLevel = 0
    N:Video P:1 #:01702 T:0000000912f369cf M:xdc.runtime.Main S:lastNFramesToLog = 1
    N:Video P:1 #:01703 T:0000000912f3c499 M:xdc.runtime.Main S:enableAnalyticinfo = 0
    N:Video P:1 #:01704 T:0000000912f41f49 M:xdc.runtime.Main S:enableGMVSei = 0
    N:Video P:1 #:01705 T:0000000912f47949 M:xdc.runtime.Main S:constraintSetFlags = 0
    N:Video P:1 #:01706 T:0000000912f4d3fb M:xdc.runtime.Main S:enableRCDO = 0
    N:Video P:1 #:01707 T:0000000912f52ecf M:xdc.runtime.Main S:enableLongTermRefFrame = 0
    N:Video P:1 #:01708 T:0000000912f58987 M:xdc.runtime.Main S:LTRPPeriod = 1
    N:Video P:1 #:01709 T:0000000912f5e3a3 M:xdc.runtime.Main S:numTemporalLayer = 0
    N:Video P:1 #:01710 T:0000000912f63eb1 M:xdc.runtime.Main S:reservedParams[0] = 0
    N:Video P:1 #:01711 T:0000000912f69af9 M:xdc.runtime.Main S:reservedParams[1] = 0
    N:Video P:1 #:01712 T:0000000912f6f3e1 M:xdc.runtime.Main S:reservedParams[2] = 0

    Dynamic Params

    ------------------------

    N:Video P:1 #:01213 T:00000006cca65dbb M:xdc.runtime.Main S:videnc2DynamicParams->size = 236
    N:Video P:1 #:01214 T:00000006cca6c025 M:xdc.runtime.Main S:videnc2DynamicParams->inputHeight = 1936
    N:Video P:1 #:01215 T:00000006cca71da7 M:xdc.runtime.Main S:videnc2DynamicParams->inputWidth = 1936
    N:Video P:1 #:01216 T:00000006cca965af M:xdc.runtime.Main S:videnc2DynamicParams->refFrameRate = 60000
    N:Video P:1 #:01217 T:00000006cca9c53f M:xdc.runtime.Main S:videnc2DynamicParams->targetFrameRate = 15000
    N:Video P:1 #:01218 T:00000006ccaa256e M:xdc.runtime.Main S:videnc2DynamicParams->targetBitRate = 3074000
    N:Video P:1 #:01219 T:00000006ccaa8527 M:xdc.runtime.Main S:videnc2DynamicParams->intraFrameInterval = 0
    N:Video P:1 #:01220 T:00000006ccaae245 M:xdc.runtime.Main S:videnc2DynamicParams->generateHeader = 0
    N:Video P:1 #:01221 T:00000006ccab3e33 M:xdc.runtime.Main S:videnc2DynamicParams->captureWidth = 1936
    N:Video P:1 #:01222 T:00000006ccab9ea5 M:xdc.runtime.Main S:videnc2DynamicParams->forceFrame = 3
    N:Video P:1 #:01223 T:00000006ccabfbf7 M:xdc.runtime.Main S:videnc2DynamicParams->interFrameInterval = 1
    N:Video P:1 #:01224 T:00000006ccac57d3 M:xdc.runtime.Main S:videnc2DynamicParams->mvAccuracy = 2
    N:Video P:1 #:01225 T:00000006ccacb59b M:xdc.runtime.Main S:videnc2DynamicParams->sampleAspectRatioHeight = 1
    N:Video P:1 #:01226 T:00000006ccad0f9f M:xdc.runtime.Main S:videnc2DynamicParams->sampleAspectRatioWidth = 1
    N:Video P:1 #:01227 T:00000006ccad6e15 M:xdc.runtime.Main S:videnc2DynamicParams->ignoreOutbufSizeFlag = 0
    N:Video P:1 #:01228 T:00000006ccadcb11 M:xdc.runtime.Main S:rateControlParams->rateControlParamsPreset = 0
    N:Video P:1 #:01229 T:00000006ccae292f M:xdc.runtime.Main S:rateControlParams->scalingMatrixPreset = 1
    N:Video P:1 #:01230 T:00000006ccae85ed M:xdc.runtime.Main S:rateControlParams->rcAlgo = 0
    N:Video P:1 #:01231 T:00000006ccaee495 M:xdc.runtime.Main S:rateControlParams->qpI = -1
    N:Video P:1 #:01232 T:00000006ccaf4019 M:xdc.runtime.Main S:rateControlParams->qpMaxI = 36
    N:Video P:1 #:01233 T:00000006ccafa0d7 M:xdc.runtime.Main S:rateControlParams->qpMinI = 10
    N:Video P:1 #:01234 T:00000006ccaffe83 M:xdc.runtime.Main S:rateControlParams->qpP = -1
    N:Video P:1 #:01235 T:00000006ccb05ee5 M:xdc.runtime.Main S:rateControlParams->qpMaxP = 40
    N:Video P:1 #:01236 T:00000006ccb0bad5 M:xdc.runtime.Main S:rateControlParams->qpMinP = 10
    N:Video P:1 #:01237 T:00000006ccb14305 M:xdc.runtime.Main S:rateControlParams->qpOffsetB = 4
    N:Video P:1 #:01238 T:00000006ccb1a2f9 M:xdc.runtime.Main S:rateControlParams->qpMaxB = 44
    N:Video P:1 #:01239 T:00000006ccb20271 M:xdc.runtime.Main S:rateControlParams->qpMinB = 10
    N:Video P:1 #:01240 T:00000006ccb2615d M:xdc.runtime.Main S:rateControlParams->allowFrameSkip = 0
    N:Video P:1 #:01241 T:00000006ccb2c011 M:xdc.runtime.Main S:rateControlParams->removeExpensiveCoeff = 0
    N:Video P:1 #:01242 T:00000006ccb31d59 M:xdc.runtime.Main S:rateControlParams->chromaQPIndexOffset = 0
    N:Video P:1 #:01243 T:00000006ccb37cc1 M:xdc.runtime.Main S:rateControlParams->IPQualityFactor = 0
    N:Video P:1 #:01244 T:00000006ccb3d743 M:xdc.runtime.Main S:rateControlParams->initialBufferLevel = 6148000
    N:Video P:1 #:01245 T:00000006ccb43b17 M:xdc.runtime.Main S:rateControlParams->HRDBufferSize = 6148000
    N:Video P:1 #:01246 T:00000006ccb49b5f M:xdc.runtime.Main S:rateControlParams->minPicSizeRatioI = 0
    N:Video P:1 #:01247 T:00000006ccb4f97f M:xdc.runtime.Main S:rateControlParams->maxPicSizeRatioI = 640
    N:Video P:1 #:01248 T:00000006ccb557dc M:xdc.runtime.Main S:rateControlParams->minPicSizeRatioP = 0
    N:Video P:1 #:01249 T:00000006ccb5b5f3 M:xdc.runtime.Main S:rateControlParams->maxPicSizeRatioP = 0
    N:Video P:1 #:01250 T:00000006ccb61121 M:xdc.runtime.Main S:rateControlParams->minPicSizeRatioB = 0
    N:Video P:1 #:01251 T:00000006ccb66f3f M:xdc.runtime.Main S:rateControlParams->maxPicSizeRatioB = 0
    N:Video P:1 #:01252 T:00000006ccb6cc09 M:xdc.runtime.Main S:rateControlParams->enablePRC = 1
    N:Video P:1 #:01253 T:00000006ccb72a1f M:xdc.runtime.Main S:rateControlParams->enablePartialFrameSkip = 0
    N:Video P:1 #:01254 T:00000006ccb78521 M:xdc.runtime.Main S:rateControlParams->discardSavedBits = 0
    N:Video P:1 #:01255 T:00000006ccb7e35d M:xdc.runtime.Main S:rateControlParams->reserved = 0
    N:Video P:1 #:01256 T:00000006ccb84017 M:xdc.runtime.Main S:rateControlParams->VBRDuration = 8
    N:Video P:1 #:01257 T:00000006ccb89ec9 M:xdc.runtime.Main S:rateControlParams->VBRsensitivity = 0
    N:Video P:1 #:01258 T:00000006ccb8f94f M:xdc.runtime.Main S:rateControlParams->skipDistributionWindowLength = 5
    N:Video P:1 #:01259 T:00000006ccb95787 M:xdc.runtime.Main S:rateControlParams->numSkipInDistributionWindow = 1
    N:Video P:1 #:01260 T:00000006ccb9d0b7 M:xdc.runtime.Main S:rateControlParams->enableHRDComplianceMode = 1
    N:Video P:1 #:01261 T:00000006ccba3085 M:xdc.runtime.Main S:rateControlParams->frameSkipThMulQ5 = 0
    N:Video P:1 #:01262 T:00000006ccba8ba6 M:xdc.runtime.Main S:rateControlParams->vbvUseLevelThQ5 = 0
    N:Video P:1 #:01263 T:00000006ccbaea7d M:xdc.runtime.Main S:rateControlParams->rateControlParamsPreset = 0
    N:Video P:1 #:01264 T:00000006ccbb4613 M:xdc.runtime.Main S:rateControlParams->rateControlParamsPreset = 0
    N:Video P:1 #:01265 T:00000006ccbba397 M:xdc.runtime.Main S:interCodingParams->interCodingPreset = 0
    N:Video P:1 #:01266 T:00000006ccbbf909 M:xdc.runtime.Main S:interCodingParams->searchRangeHorP = 144
    N:Video P:1 #:01267 T:00000006ccbc51d5 M:xdc.runtime.Main S:interCodingParams->searchRangeVerP = 32
    N:Video P:1 #:01268 T:00000006ccbca977 M:xdc.runtime.Main S:interCodingParams->searchRangeHorB = 144
    N:Video P:1 #:01269 T:00000006ccbd0407 M:xdc.runtime.Main S:interCodingParams->searchRangeVerB = 16
    N:Video P:1 #:01270 T:00000006ccbd5d53 M:xdc.runtime.Main S:interCodingParams->interCodingBias = 1
    N:Video P:1 #:01271 T:00000006ccbdb379 M:xdc.runtime.Main S:interCodingParams->skipMVCodingBias = 1
    N:Video P:1 #:01272 T:00000006ccbe0bf1 M:xdc.runtime.Main S:interCodingParams->minBlockSizeP = 0
    N:Video P:1 #:01273 T:00000006ccbe6151 M:xdc.runtime.Main S:interCodingParams->minBlockSizeB = 0
    N:Video P:1 #:01274 T:00000006ccbeba5b M:xdc.runtime.Main S:interCodingParams->meAlgoMode = 0
    N:Video P:1 #:01275 T:00000006ccbf1169 M:xdc.runtime.Main S:interCodingParams->intraCodingParams = 0
    N:Video P:1 #:01276 T:00000006ccbf6d3f M:xdc.runtime.Main S:interCodingParams->lumaIntra4x4Enable = 0
    N:Video P:1 #:01277 T:00000006ccbfcb8e M:xdc.runtime.Main S:interCodingParams->lumaIntra8x8Enable = 0
    N:Video P:1 #:01278 T:00000006ccc0253f M:xdc.runtime.Main S:interCodingParams->lumaIntra16x16Enable = 0
    N:Video P:1 #:01279 T:00000006ccc084ad M:xdc.runtime.Main S:interCodingParams->chromaIntra8x8Enable = 0
    N:Video P:1 #:01280 T:00000006ccc0e1a1 M:xdc.runtime.Main S:interCodingParams->chromaComponentEnable = 0
    N:Video P:1 #:01281 T:00000006ccc13f97 M:xdc.runtime.Main S:interCodingParams->intraRefreshMethod = 0
    N:Video P:1 #:01282 T:00000006ccc19b7f M:xdc.runtime.Main S:interCodingParams->intraRefreshRate = 0
    N:Video P:1 #:01283 T:00000006ccc200f7 M:xdc.runtime.Main S:interCodingParams->gdrOverlapRowsBtwFrames = 0
    N:Video P:1 #:01284 T:00000006ccc290a3 M:xdc.runtime.Main S:interCodingParams->constrainedIntraPredEnable = 0
    N:Video P:1 #:01285 T:00000006ccc2f12f M:xdc.runtime.Main S:interCodingParams->intraCodingBias = 0
    N:Video P:1 #:01286 T:00000006ccc34ae1 M:xdc.runtime.Main S:sliceCodingParams->sliceCodingPreset = 0
    N:Video P:1 #:01287 T:00000006ccc3a77d M:xdc.runtime.Main S:sliceCodingParams->sliceMode = 0
    N:Video P:1 #:01288 T:00000006ccc404c5 M:xdc.runtime.Main S:sliceCodingParams->sliceUnitSize = 0
    N:Video P:1 #:01289 T:00000006ccc4662f M:xdc.runtime.Main S:sliceCodingParams->sliceStartOffset[0] = 0
    N:Video P:1 #:01290 T:00000006ccc4c56d M:xdc.runtime.Main S:sliceCodingParams->sliceStartOffset[1] = 0
    N:Video P:1 #:01291 T:00000006ccc51f1d M:xdc.runtime.Main S:sliceCodingParams->sliceStartOffset[2] = 0
    N:Video P:1 #:01292 T:00000006ccc57ae9 M:xdc.runtime.Main S:sliceCodingParams->streamFormat = 0
    N:Video P:1 #:01293 T:00000006ccc5d4bd M:xdc.runtime.Main S:sliceGroupChangeCycle = 0
    N:Video P:1 #:01294 T:00000006ccc62a51 M:xdc.runtime.Main S:searchCenter = x=32767,y=32767
    N:Video P:1 #:01295 T:00000006ccc68a9d M:xdc.runtime.Main S:intraRefreshRateGDRDynamic = 0
    N:Video P:1 #:01296 T:00000006ccc6de35 M:xdc.runtime.Main S:enableStaticMBCount = 0
    N:Video P:1 #:01297 T:00000006ccc73331 M:xdc.runtime.Main S:gdrOverlapRowsBtwFramesDynamic = 0
    N:Video P:1 #:01298 T:00000006ccc785f3 M:xdc.runtime.Main S:enableROI = 1

    If we read the encoder status back after applying the dynamic params, then enableROI is still set to 0.

    I will get the further information concerning  the ROI definition that we are using an append it to this thread.

    Thanks,

    Regards,

    Terry

  • Hi Modh,


    Here are the ROI areas that we are trying to define.  We are using the face detect ROI type just for testing at the moment:

    Test 1 

    pVidEncComPvt->tVidEncInArgsPtr                                                         = &(pVidEncComPvt->tVidEncInArgs[pVidEncComPvt->tVedEncInBufsIdx]);

                    pVidEncComPvt->tVidEncInArgsPtr->videnc2InArgs.size               = sizeof(IVIDENC2_InArgs);

                    pVidEncComPvt->tVidEncInArgsPtr->videnc2InArgs.inputID        = (XDAS_Int32) pInBufHeader;

                    pVidEncComPvt->tVidEncInArgsPtr->videnc2InArgs.control        = IVIDENC2_CTRL_NONE;

     

                    pVidEncComPvt->tVidEncInArgsPtr->videnc2InArgs.size                                                               = sizeof(IH264ENC_InArgs);

                    pVidEncComPvt->tVidEncInArgsPtr->roiInputParams.numOfROI                                              = 1;

                    pVidEncComPvt->tVidEncInArgsPtr->roiInputParams.roiPriority[0]                                          = 4;

                    pVidEncComPvt->tVidEncInArgsPtr->roiInputParams.roiType[0]                                               = IH264_FACE_OBJECT;

                     pVidEncComPvt->tVidEncInArgsPtr->roiInputParams.listROI[0].topLeft.x                            = 50;

                    pVidEncComPvt->tVidEncInArgsPtr->roiInputParams.listROI[0].topLeft.y                             = 50;

                     pVidEncComPvt->tVidEncInArgsPtr->roiInputParams.listROI[0].bottomRight.x                  = 700;

                    pVidEncComPvt->tVidEncInArgsPtr->roiInputParams.listROI[0].bottomRight.y                   = 400;

     

    Test 2

     

           pVidEncComPvt->tVidEncInArgs[pVidEncComPvt->tVedEncInBufsIdx].roiInputParams.numOfROI                                    = 1;

           pVidEncComPvt->tVidEncInArgs[pVidEncComPvt->tVedEncInBufsIdx].roiInputParams.roiPriority[0]                                = 4;

           pVidEncComPvt->tVidEncInArgs[pVidEncComPvt->tVedEncInBufsIdx].roiInputParams.roiType[0]                                     = IH264_FACE_OBJECT;

           pVidEncComPvt->tVidEncInArgs[pVidEncComPvt->tVedEncInBufsIdx].roiInputParams.listROI[0].topLeft.x                   = 800;

           pVidEncComPvt->tVidEncInArgs[pVidEncComPvt->tVedEncInBufsIdx].roiInputParams.listROI[0].topLeft.y                   = 500;

           pVidEncComPvt->tVidEncInArgs[pVidEncComPvt->tVedEncInBufsIdx].roiInputParams.listROI[0].bottomRight.x        = 1200;

           pVidEncComPvt->tVidEncInArgs[pVidEncComPvt->tVedEncInBufsIdx].roiInputParams.listROI[0].bottomRight.y        = 800;

    Regards,

     

    Terry

  • Hi Modh,

    Have you had a chance to look at these parameters yet?

    Thanks,

    Regards,

    Terry

  • Terry, 

    We are looking into this. I have a doubt regarding the parameter setting. How could you give your input width and height more than maxWidth and maxHeight ?

  • Terry,

    You are setting the size of videnc2InArgs as the base class.

    pVidEncComPvt->tVidEncInArgsPtr->videnc2InArgs.size               = sizeof(IVIDENC2_InArgs);

     

    Please change this to extended class 

    pVidEncComPvt->tVidEncInArgsPtr->videnc2InArgs.size               = sizeof(H264ENC_InArgs);

  • Hi Modh,

    Excellent! Thanks for this, this fixed our problem!

    Thanks again,

    Regards,

    Terry

  • Hi   . the version of REL.500.V.H264AVC.E.IVAHD.02.00.04.00 contain ROI?

    How should I set ROI  parameters?

    I set 

    pChAlgDynPrm->roiNumOfRegion = 1;
    pChAlgDynPrm->roiStartX[0] = 0;
    pChAlgDynPrm->roiStartY[0] = 8;
    pChAlgDynPrm->roiWidth[0] = 2464;
    pChAlgDynPrm->roiHeight[0] = 2048;
    pChAlgDynPrm->roiType[0] = 3;

    at 

    enclink_codec_set_ch_alg_default_dynamic_params(EncLink_Obj * pObj,
    UInt32 chId) when H264 Alg Create.

    But its does not work!

     

  • Dear Ant Zhao,

    Please set the encoder's dynamic parameter enableROI  to 1. This will enable the ROI algorithm.