diff options
| author | Zhao Liang <leo.zhao@intel.com> | 2013-01-08 13:21:45 +0800 |
|---|---|---|
| committer | Patrick Tjin <pattjin@google.com> | 2014-07-21 22:02:50 -0700 |
| commit | 30736b960fca5337c0e89021f2ff8779475b4ef8 (patch) | |
| tree | 0c6910af137c4818e1d00bc75acf9349f337ef94 /videocodec/OMXVideoEncoderMPEG4.cpp | |
| parent | 4b4fefee98b3224fbd3a88b150db3d253997fdf8 (diff) | |
| download | android_hardware_intel_common_omx-components-30736b960fca5337c0e89021f2ff8779475b4ef8.tar.gz android_hardware_intel_common_omx-components-30736b960fca5337c0e89021f2ff8779475b4ef8.tar.bz2 android_hardware_intel_common_omx-components-30736b960fca5337c0e89021f2ff8779475b4ef8.zip | |
new frame type detection/parameter setting and get default profile by querying
BZ: 87331
use new rule to define IpPeriod/IntraPeriod/IdrInterval, and get default profile by new parameter
Change-Id: Iff842054db50a994638bde527170724a9b933920
Reviewed-on: http://android.intel.com:8080/85483
Reviewed-by: Zhao, Leo <leo.zhao@intel.com>
Reviewed-by: cactus <cactus@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/OMXVideoEncoderMPEG4.cpp')
| -rw-r--r-- | videocodec/OMXVideoEncoderMPEG4.cpp | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/videocodec/OMXVideoEncoderMPEG4.cpp b/videocodec/OMXVideoEncoderMPEG4.cpp index 215e213..e8f6b14 100644 --- a/videocodec/OMXVideoEncoderMPEG4.cpp +++ b/videocodec/OMXVideoEncoderMPEG4.cpp @@ -157,6 +157,13 @@ OMX_ERRORTYPE OMXVideoEncoderMPEG4::ProcessorProcess( outfilledlen = outBuf.dataSize; mFirstFrame = OMX_FALSE; } else { + if (mFrameInputCount == 1) { + retains[INPORT_INDEX] = BUFFER_RETAIN_ACCUMULATE; + retains[OUTPORT_INDEX] = BUFFER_RETAIN_GETAGAIN; + mFrameRetrieved = OMX_TRUE; + goto out; + } + outBuf.format = OUTPUT_EVERYTHING; mVideoEncoder->getOutput(&outBuf); CHECK_ENCODE_STATUS("getOutput"); @@ -245,7 +252,7 @@ out: OMX_ERRORTYPE OMXVideoEncoderMPEG4::BuildHandlerList(void) { OMXVideoEncoderBase::BuildHandlerList(); AddHandler(OMX_IndexParamVideoMpeg4, GetParamVideoMpeg4, SetParamVideoMpeg4); - AddHandler(OMX_IndexParamVideoProfileLevelQuerySupported, GetParamVideoProfileLevelQuerySupported, SetParamVideoProfileLevelQuerySupported); + AddHandler(OMX_IndexParamVideoProfileLevelQuerySupported, GetParamVideoProfileLevelQuerySupported, SetParamVideoProfileLevelQuerySupported); return OMX_ErrorNone; } |
