From aaefabb42927db20baba7e55bf7e16e607e581e2 Mon Sep 17 00:00:00 2001 From: "Khanh V. Nguyen" Date: Mon, 1 Jul 2013 16:58:54 -0700 Subject: Retain the requested NaluFormat BZ: 120399 This patch makes sure NaluFormat is set to default base on input only when it was not explicitly requested by the caller Change-Id: Idc8bd5f468761696d7bcf9b4088d33c13bdbef6c Signed-off-by: Khanh V. Nguyen Reviewed-on: http://android.intel.com:8080/116451 Reviewed-by: Zhao, Leo Reviewed-by: Ding, Haitao Reviewed-by: Shi, PingX Tested-by: Shi, PingX Reviewed-by: buildbot Tested-by: buildbot --- videocodec/OMXVideoEncoderAVC.cpp | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/videocodec/OMXVideoEncoderAVC.cpp b/videocodec/OMXVideoEncoderAVC.cpp index df96cf1..128cf56 100755 --- a/videocodec/OMXVideoEncoderAVC.cpp +++ b/videocodec/OMXVideoEncoderAVC.cpp @@ -143,7 +143,6 @@ OMX_ERRORTYPE OMXVideoEncoderAVC::InitOutputPortFormatSpecific(OMX_PARAM_PORTDEF SetTypeHeader(&mNalStreamFormat, sizeof(mNalStreamFormat)); mNalStreamFormat.nPortIndex = OUTPORT_INDEX; // TODO: check if this is desired Nalu Format - mNalStreamFormat.eNaluFormat = OMX_NaluFormatStartCodesSeparateFirstHeader; //mNalStreamFormat.eNaluFormat = OMX_NaluFormatLengthPrefixedSeparateFirstHeader; // OMX_VIDEO_CONFIG_AVCINTRAPERIOD memset(&mConfigAvcIntraPeriod, 0, sizeof(mConfigAvcIntraPeriod)); @@ -399,8 +398,15 @@ OMX_ERRORTYPE OMXVideoEncoderAVC::ProcessDataRetrieve( OMX_NALUFORMATSTYPE NaluFormat = mNalStreamFormat.eNaluFormat; - if (mStoreMetaDataInBuffers) - NaluFormat = OMX_NaluFormatLengthPrefixedSeparateFirstHeader; + // NaluFormat not set, setting default + if (NaluFormat == 0) { + if (mStoreMetaDataInBuffers) { + NaluFormat = OMX_NaluFormatLengthPrefixedSeparateFirstHeader; + } else { + NaluFormat = OMX_NaluFormatStartCodesSeparateFirstHeader; + } + mNalStreamFormat.eNaluFormat = NaluFormat; + } VideoEncOutputBuffer outBuf; outBuf.data = buffers[OUTPORT_INDEX]->pBuffer + buffers[OUTPORT_INDEX]->nOffset; -- cgit v1.2.3