diff options
| author | jiguoliang <guoliang.ji@intel.com> | 2013-04-09 17:07:19 -0400 |
|---|---|---|
| committer | Patrick Tjin <pattjin@google.com> | 2014-07-21 22:02:51 -0700 |
| commit | 828a2823300f3e2c8b95a3d00957145942572288 (patch) | |
| tree | c61687b9cdbc73ddae317ae2ff0815a1f3cba180 /videocodec/OMXVideoEncoderAVC.cpp | |
| parent | 885507c31cd3158276157b6f82ef08d165af63db (diff) | |
| download | android_hardware_intel_common_omx-components-828a2823300f3e2c8b95a3d00957145942572288.tar.gz android_hardware_intel_common_omx-components-828a2823300f3e2c8b95a3d00957145942572288.tar.bz2 android_hardware_intel_common_omx-components-828a2823300f3e2c8b95a3d00957145942572288.zip | |
high profile feature enable
BZ:101039
Make the OMX SetParamVideoAvc/GetParamVideoAvc be effect for passing the High profile
param such as cabac and so on.
Signed-off-by: jiguoliang <guoliang.ji@intel.com>
Change-Id: I7b5f3b32daf5d90e48902152c9912f82e4ed9cc6
Reviewed-on: http://android.intel.com:8080/100639
Reviewed-by: cactus <cactus@intel.com>
Reviewed-by: Ji, Guoliang <guoliang.ji@intel.com>
Reviewed-by: Yuan, Shengquan <shengquan.yuan@intel.com>
Reviewed-by: Shi, PingX <pingx.shi@intel.com>
Tested-by: Shi, PingX <pingx.shi@intel.com>
Reviewed-by: buildbot <buildbot@intel.com>
Tested-by: buildbot <buildbot@intel.com>
Diffstat (limited to 'videocodec/OMXVideoEncoderAVC.cpp')
| -rwxr-xr-x | videocodec/OMXVideoEncoderAVC.cpp | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/videocodec/OMXVideoEncoderAVC.cpp b/videocodec/OMXVideoEncoderAVC.cpp index 7d6df97..df96cf1 100755 --- a/videocodec/OMXVideoEncoderAVC.cpp +++ b/videocodec/OMXVideoEncoderAVC.cpp @@ -695,6 +695,17 @@ OMX_ERRORTYPE OMXVideoEncoderAVC::GetParamVideoAvc(OMX_PTR pStructure) { CHECK_TYPE_HEADER(p); CHECK_PORT_INDEX(p, OUTPORT_INDEX); + mVideoEncoder->getParameters(mAVCParams); + mParamAvc.bEntropyCodingCABAC = (OMX_BOOL)mAVCParams->bEntropyCodingCABAC; + mParamAvc.bWeightedPPrediction = (OMX_BOOL)mAVCParams->bWeightedPPrediction; + mParamAvc.nRefIdx10ActiveMinus1 = mAVCParams->refIdx10ActiveMinus1; + mParamAvc.nRefIdx11ActiveMinus1 = mAVCParams->refIdx11ActiveMinus1; + mParamAvc.nWeightedBipredicitonMode = mAVCParams->weightedBipredicitonMode; + mParamAvc.bDirect8x8Inference = (OMX_BOOL)mAVCParams->bDirect8x8Inference; + mParamAvc.bDirectSpatialTemporal = (OMX_BOOL)mAVCParams->bDirectSpatialTemporal; + mParamAvc.nCabacInitIdc = mAVCParams->cabacInitIdc; + mParamAvc.bFrameMBsOnly = (OMX_BOOL)mAVCParams->bFrameMBsOnly; + mParamAvc.bconstIpred = (OMX_BOOL)mAVCParams->bConstIpred; memcpy(p, &mParamAvc, sizeof(*p)); return OMX_ErrorNone; } @@ -745,6 +756,10 @@ OMX_ERRORTYPE OMXVideoEncoderAVC::SetParamVideoAvc(OMX_PTR pStructure) { // TODO: do we need to check if port is enabled? // TODO: see SetPortAvcParam implementation - Can we make simple copy???? memcpy(&mParamAvc, p, sizeof(mParamAvc)); + mVideoEncoder->getParameters(mAVCParams); + mAVCParams->bEntropyCodingCABAC = mParamAvc.bEntropyCodingCABAC; + mVideoEncoder->setParameters(mAVCParams); + return OMX_ErrorNone; } |
