aboutsummaryrefslogtreecommitdiffstats
path: root/videocodec/OMXVideoEncoderAVC.cpp
diff options
context:
space:
mode:
authorwfeng6 <wei.feng@intel.com>2012-02-03 20:03:55 +0800
committerPatrick Tjin <pattjin@google.com>2014-07-21 22:02:45 -0700
commit6bc8d027bb46c0638d26b3f755350b84f6325de3 (patch)
treeaedecdc48206518c3076d5e0828140bb77a9f48e /videocodec/OMXVideoEncoderAVC.cpp
parent09780b7386587d6116b9bdf7e627f3c5037a9008 (diff)
downloadandroid_hardware_intel_common_omx-components-6bc8d027bb46c0638d26b3f755350b84f6325de3.tar.gz
android_hardware_intel_common_omx-components-6bc8d027bb46c0638d26b3f755350b84f6325de3.tar.bz2
android_hardware_intel_common_omx-components-6bc8d027bb46c0638d26b3f755350b84f6325de3.zip
Video editor enabling (Part 4)
BZ: 21677 22177 Add handlers to query the video decoder and encoder profiles and levels to support video editor. Change-Id: I39a7482cdd4327ed75464e14604399b999199119 Signed-off-by: wfeng6 <wei.feng@intel.com> Reviewed-on: http://android.intel.com:8080/33365 Reviewed-by: Ding, Haitao <haitao.ding@intel.com> Tested-by: Ding, Haitao <haitao.ding@intel.com> Reviewed-by: buildbot <buildbot@intel.com> Tested-by: buildbot <buildbot@intel.com>
Diffstat (limited to 'videocodec/OMXVideoEncoderAVC.cpp')
-rw-r--r--videocodec/OMXVideoEncoderAVC.cpp12
1 files changed, 9 insertions, 3 deletions
diff --git a/videocodec/OMXVideoEncoderAVC.cpp b/videocodec/OMXVideoEncoderAVC.cpp
index 2981d1f..b17bb58 100644
--- a/videocodec/OMXVideoEncoderAVC.cpp
+++ b/videocodec/OMXVideoEncoderAVC.cpp
@@ -23,6 +23,7 @@
static const char *AVC_MIME_TYPE = "video/h264";
OMXVideoEncoderAVC::OMXVideoEncoderAVC() {
+ LOGV("OMXVideoEncoderAVC::OMXVideoEncoderAVC");
BuildHandlerList();
mVideoEncoder = createVideoEncoder(AVC_MIME_TYPE);
if (!mVideoEncoder) LOGE("OMX_ErrorInsufficientResources");
@@ -32,6 +33,7 @@ OMXVideoEncoderAVC::OMXVideoEncoderAVC() {
}
OMXVideoEncoderAVC::~OMXVideoEncoderAVC() {
+ LOGV("OMXVideoEncoderAVC::~OMXVideoEncoderAVC");
if(mAVCParams) {
delete mAVCParams;
mAVCParams = NULL;
@@ -44,14 +46,14 @@ OMX_ERRORTYPE OMXVideoEncoderAVC::InitOutputPortFormatSpecific(OMX_PARAM_PORTDEF
SetTypeHeader(&mParamAvc, sizeof(mParamAvc));
mParamAvc.nPortIndex = OUTPORT_INDEX;
mParamAvc.eProfile = OMX_VIDEO_AVCProfileBaseline;
- mParamAvc.eLevel = OMX_VIDEO_AVCLevel1;
+ mParamAvc.eLevel = OMX_VIDEO_AVCLevel41;
// OMX_NALSTREAMFORMATTYPE
memset(&mNalStreamFormat, 0, sizeof(mNalStreamFormat));
SetTypeHeader(&mNalStreamFormat, sizeof(mNalStreamFormat));
mNalStreamFormat.nPortIndex = OUTPORT_INDEX;
// TODO: check if this is desired Nalu Format
- // mNalStreamFormat.eNaluFormat = OMX_NaluFormatStartCodesSeparateFirstHeader;
+ //mNalStreamFormat.eNaluFormat = OMX_NaluFormatStartCodesSeparateFirstHeader;
mNalStreamFormat.eNaluFormat = OMX_NaluFormatLengthPrefixedSeparateFirstHeader;
// OMX_VIDEO_CONFIG_AVCINTRAPERIOD
memset(&mConfigAvcIntraPeriod, 0, sizeof(mConfigAvcIntraPeriod));
@@ -461,12 +463,14 @@ OMX_ERRORTYPE OMXVideoEncoderAVC::GetParamNalStreamFormat(OMX_PTR pStructure) {
}
OMX_ERRORTYPE OMXVideoEncoderAVC::SetParamNalStreamFormat(OMX_PTR pStructure) {
+
+ LOGV("SetParamNalStreamFormat start");
OMX_ERRORTYPE ret;
OMX_NALSTREAMFORMATTYPE *p = (OMX_NALSTREAMFORMATTYPE *)pStructure;
CHECK_TYPE_HEADER(p);
CHECK_PORT_INDEX(p, OUTPORT_INDEX);
-
+ LOGV("Current eNaluFormat is %d\n", mNalStreamFormat.eNaluFormat);
LOGV("p->eNaluFormat =%d\n",p->eNaluFormat);
if(p->eNaluFormat != OMX_NaluFormatStartCodes &&
p->eNaluFormat != OMX_NaluFormatStartCodesSeparateFirstHeader &&
@@ -476,6 +480,8 @@ OMX_ERRORTYPE OMXVideoEncoderAVC::SetParamNalStreamFormat(OMX_PTR pStructure) {
return OMX_ErrorUnsupportedSetting;
}
mNalStreamFormat.eNaluFormat = p->eNaluFormat;
+ LOGV("Set eNaluFormat to %d\n", mNalStreamFormat.eNaluFormat);
+ LOGV("SetParamNalStreamFormat end");
return OMX_ErrorNone;
}