diff options
author | Andreas Huber <andih@google.com> | 2009-10-08 11:02:27 -0700 |
---|---|---|
committer | Andreas Huber <andih@google.com> | 2009-10-08 14:21:58 -0700 |
commit | 36efa039efaae4526791336cb688032d22b34bec (patch) | |
tree | 8bb2b193530f7c606475e2863be843eb8cce58e6 /media/libstagefright/omx/OMX.cpp | |
parent | 479ededc5b55e63ea9b425cbe465c93bb8b8b3dc (diff) | |
download | frameworks_av-36efa039efaae4526791336cb688032d22b34bec.zip frameworks_av-36efa039efaae4526791336cb688032d22b34bec.tar.gz frameworks_av-36efa039efaae4526791336cb688032d22b34bec.tar.bz2 |
Some decoders will return an error on OMX_EmptyThisBuffer to indicate that they don't support the media format, deal with this.
Diffstat (limited to 'media/libstagefright/omx/OMX.cpp')
-rw-r--r-- | media/libstagefright/omx/OMX.cpp | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/media/libstagefright/omx/OMX.cpp b/media/libstagefright/omx/OMX.cpp index 8b83dd6..bf876af 100644 --- a/media/libstagefright/omx/OMX.cpp +++ b/media/libstagefright/omx/OMX.cpp @@ -529,7 +529,7 @@ status_t OMX::observe_node( return OK; } -void OMX::fill_buffer(node_id node, buffer_id buffer) { +status_t OMX::fill_buffer(node_id node, buffer_id buffer) { OMX_BUFFERHEADERTYPE *header = (OMX_BUFFERHEADERTYPE *)buffer; header->nFilledLen = 0; header->nOffset = 0; @@ -539,10 +539,11 @@ void OMX::fill_buffer(node_id node, buffer_id buffer) { OMX_ERRORTYPE err = OMX_FillThisBuffer(node_meta->handle(), header); - CHECK_EQ(err, OMX_ErrorNone); + + return (err == OMX_ErrorNone) ? OK : UNKNOWN_ERROR; } -void OMX::empty_buffer( +status_t OMX::empty_buffer( node_id node, buffer_id buffer, OMX_U32 range_offset, OMX_U32 range_length, @@ -561,7 +562,8 @@ void OMX::empty_buffer( OMX_ERRORTYPE err = OMX_EmptyThisBuffer(node_meta->handle(), header); - CHECK_EQ(err, OMX_ErrorNone); + + return (err == OMX_ErrorNone) ? OK : UNKNOWN_ERROR; } status_t OMX::get_extension_index( |