summaryrefslogtreecommitdiffstats
path: root/media/libstagefright/OMXClient.cpp
diff options
context:
space:
mode:
authorLajos Molnar <lajos@google.com>2013-05-02 16:30:48 -0700
committerLajos Molnar <lajos@google.com>2013-10-03 16:12:45 +0000
commit56ce726019f700a95ce5b45beebceadae4836e30 (patch)
tree4ad17b9ec996277e80861895fb1b20f2dc408b9d /media/libstagefright/OMXClient.cpp
parenta306ee6bc1aef463f8984be26b8a4214490b6c55 (diff)
downloadframeworks_av-56ce726019f700a95ce5b45beebceadae4836e30.zip
frameworks_av-56ce726019f700a95ce5b45beebceadae4836e30.tar.gz
frameworks_av-56ce726019f700a95ce5b45beebceadae4836e30.tar.bz2
IOMX: Add prepareForAdaptivePlayback method
prepareForAdaptivePlayback is the fallback mechanism to support seamless resolution change for devices that do not support dynamic output buffers. It is up to the codecs to handle this appropriately, but codecs that do not handle dynamic output buffers would request enough buffers up to the requested size in this method to avoid port reconfiguration on resolution changes. Change-Id: I58d4aa8ef1359ea3472735bbe9140c3132039b3d Signed-off-by: Lajos Molnar <lajos@google.com> Bug: 10192531 Related-to-bug: 7093648
Diffstat (limited to 'media/libstagefright/OMXClient.cpp')
-rw-r--r--media/libstagefright/OMXClient.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/media/libstagefright/OMXClient.cpp b/media/libstagefright/OMXClient.cpp
index 9820ef5..9f9352d 100644
--- a/media/libstagefright/OMXClient.cpp
+++ b/media/libstagefright/OMXClient.cpp
@@ -69,6 +69,10 @@ struct MuxOMX : public IOMX {
virtual status_t storeMetaDataInBuffers(
node_id node, OMX_U32 port_index, OMX_BOOL enable);
+ virtual status_t prepareForAdaptivePlayback(
+ node_id node, OMX_U32 port_index, OMX_BOOL enable,
+ OMX_U32 maxFrameWidth, OMX_U32 maxFrameHeight);
+
virtual status_t enableGraphicBuffers(
node_id node, OMX_U32 port_index, OMX_BOOL enable);
@@ -268,6 +272,13 @@ status_t MuxOMX::storeMetaDataInBuffers(
return getOMX(node)->storeMetaDataInBuffers(node, port_index, enable);
}
+status_t MuxOMX::prepareForAdaptivePlayback(
+ node_id node, OMX_U32 port_index, OMX_BOOL enable,
+ OMX_U32 maxFrameWidth, OMX_U32 maxFrameHeight) {
+ return getOMX(node)->prepareForAdaptivePlayback(
+ node, port_index, enable, maxFrameWidth, maxFrameHeight);
+}
+
status_t MuxOMX::enableGraphicBuffers(
node_id node, OMX_U32 port_index, OMX_BOOL enable) {
return getOMX(node)->enableGraphicBuffers(node, port_index, enable);