diff options
author | Andreas Huber <andih@google.com> | 2010-04-02 12:49:54 -0700 |
---|---|---|
committer | Andreas Huber <andih@google.com> | 2010-04-02 12:55:31 -0700 |
commit | a4357addf609c4a88867c93db135d531b2c40352 (patch) | |
tree | 98c7ac87bf0ce88999a044ffcbfd848690733471 /include | |
parent | d9c16c37ea28933973f32cb434f770226266b675 (diff) | |
download | frameworks_base-a4357addf609c4a88867c93db135d531b2c40352.zip frameworks_base-a4357addf609c4a88867c93db135d531b2c40352.tar.gz frameworks_base-a4357addf609c4a88867c93db135d531b2c40352.tar.bz2 |
Coalesce multiple encoded AAC frames into a single input buffer on this particular OMX codec to increase throughput significantly.
Change-Id: I90c7db6656a53339c5d454336548c4f00d0d9064
related-to-bug: 2548426
Diffstat (limited to 'include')
-rw-r--r-- | include/media/stagefright/OMXCodec.h | 23 |
1 files changed, 13 insertions, 10 deletions
diff --git a/include/media/stagefright/OMXCodec.h b/include/media/stagefright/OMXCodec.h index d58c711..1d76a1a 100644 --- a/include/media/stagefright/OMXCodec.h +++ b/include/media/stagefright/OMXCodec.h @@ -87,16 +87,17 @@ private: }; enum Quirks { - kNeedsFlushBeforeDisable = 1, - kWantsNALFragments = 2, - kRequiresLoadedToIdleAfterAllocation = 4, - kRequiresAllocateBufferOnInputPorts = 8, - kRequiresFlushCompleteEmulation = 16, - kRequiresAllocateBufferOnOutputPorts = 32, - kRequiresFlushBeforeShutdown = 64, - kDefersOutputBufferAllocation = 128, - kDecoderLiesAboutNumberOfChannels = 256, - kInputBufferSizesAreBogus = 512, + kNeedsFlushBeforeDisable = 1, + kWantsNALFragments = 2, + kRequiresLoadedToIdleAfterAllocation = 4, + kRequiresAllocateBufferOnInputPorts = 8, + kRequiresFlushCompleteEmulation = 16, + kRequiresAllocateBufferOnOutputPorts = 32, + kRequiresFlushBeforeShutdown = 64, + kDefersOutputBufferAllocation = 128, + kDecoderLiesAboutNumberOfChannels = 256, + kInputBufferSizesAreBogus = 512, + kSupportsMultipleFramesPerInputBuffer = 1024, }; struct BufferInfo { @@ -137,6 +138,8 @@ private: bool mOutputPortSettingsHaveChanged; int64_t mSeekTimeUs; + MediaBuffer *mLeftOverBuffer; + Mutex mLock; Condition mAsyncCompletion; |