summaryrefslogtreecommitdiffstats
path: root/include/media/stagefright/ACodec.h
diff options
context:
space:
mode:
authorLajos Molnar <lajos@google.com>2015-05-02 02:23:06 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2015-05-02 02:23:07 +0000
commit8651c6f5069cca40ef805b800a9730617ff7f9b8 (patch)
tree129d2b9634ed11d920253265e86b171033887b39 /include/media/stagefright/ACodec.h
parente2a2dfcbf0c9d6bb7139263ecf0d8e53b4ca1049 (diff)
parent1dcdfead2971c1fa7c02f24ba86f706890c9f99e (diff)
downloadframeworks_av-8651c6f5069cca40ef805b800a9730617ff7f9b8.zip
frameworks_av-8651c6f5069cca40ef805b800a9730617ff7f9b8.tar.gz
frameworks_av-8651c6f5069cca40ef805b800a9730617ff7f9b8.tar.bz2
Merge "stagefright: add support for dynamically setting MediaCodec output surface" into mnc-dev
Diffstat (limited to 'include/media/stagefright/ACodec.h')
-rw-r--r--include/media/stagefright/ACodec.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/include/media/stagefright/ACodec.h b/include/media/stagefright/ACodec.h
index f941512..cdb923d 100644
--- a/include/media/stagefright/ACodec.h
+++ b/include/media/stagefright/ACodec.h
@@ -49,6 +49,8 @@ struct ACodec : public AHierarchicalStateMachine, public CodecBase {
virtual void initiateStart();
virtual void initiateShutdown(bool keepComponentAllocated = false);
+ virtual status_t setSurface(const sp<Surface> &surface);
+
virtual void signalFlush();
virtual void signalResume();
@@ -115,6 +117,7 @@ private:
kWhatDrainDeferredMessages = 'drai',
kWhatAllocateComponent = 'allo',
kWhatConfigureComponent = 'conf',
+ kWhatSetSurface = 'setS',
kWhatCreateInputSurface = 'cisf',
kWhatUsePersistentInputSurface = 'pisf',
kWhatSignalEndOfInputStream = 'eois',
@@ -232,6 +235,12 @@ private:
status_t freeBuffersOnPort(OMX_U32 portIndex);
status_t freeBuffer(OMX_U32 portIndex, size_t i);
+ status_t handleSetSurface(const sp<Surface> &surface);
+ status_t setNativeWindowSizeFormatAndUsage(
+ ANativeWindow *nativeWindow /* nonnull */,
+ int width, int height, int format, int rotation, int usage);
+ status_t setupNativeWindowSizeFormatAndUsage(ANativeWindow *nativeWindow /* nonnull */);
+
status_t configureOutputBuffersFromNativeWindow(
OMX_U32 *nBufferCount, OMX_U32 *nBufferSize,
OMX_U32 *nMinUndequeuedBuffers);