diff options
author | Andreas Huber <andih@google.com> | 2009-10-09 14:11:28 -0700 |
---|---|---|
committer | Andreas Huber <andih@google.com> | 2009-10-13 09:46:46 -0700 |
commit | 7f281f87670c63775ea1ae8b24af31822d5ad416 (patch) | |
tree | c04964f9bc176627df0eec3688b00bc17479bc06 /include | |
parent | 0bf3921522461b1c7d321d0c667c1020ab3110bc (diff) | |
download | frameworks_av-7f281f87670c63775ea1ae8b24af31822d5ad416.zip frameworks_av-7f281f87670c63775ea1ae8b24af31822d5ad416.tar.gz frameworks_av-7f281f87670c63775ea1ae8b24af31822d5ad416.tar.bz2 |
OMXCodec now notifies the reader of changes in the output format by returning a special result/error code.
Diffstat (limited to 'include')
-rw-r--r-- | include/media/stagefright/MediaErrors.h | 3 | ||||
-rw-r--r-- | include/media/stagefright/MediaSource.h | 3 | ||||
-rw-r--r-- | include/media/stagefright/OMXCodec.h | 1 |
3 files changed, 7 insertions, 0 deletions
diff --git a/include/media/stagefright/MediaErrors.h b/include/media/stagefright/MediaErrors.h index 2bb0ed6..73d0f77 100644 --- a/include/media/stagefright/MediaErrors.h +++ b/include/media/stagefright/MediaErrors.h @@ -36,6 +36,9 @@ enum { ERROR_BUFFER_TOO_SMALL = MEDIA_ERROR_BASE - 9, ERROR_UNSUPPORTED = MEDIA_ERROR_BASE - 10, ERROR_END_OF_STREAM = MEDIA_ERROR_BASE - 11, + + // Not technically an error. + INFO_FORMAT_CHANGED = MEDIA_ERROR_BASE - 12, }; } // namespace android diff --git a/include/media/stagefright/MediaSource.h b/include/media/stagefright/MediaSource.h index d1fa114..96d57e7 100644 --- a/include/media/stagefright/MediaSource.h +++ b/include/media/stagefright/MediaSource.h @@ -51,6 +51,9 @@ struct MediaSource : public RefBase { // buffer is available, an error is encountered of the end of the stream // is reached. // End of stream is signalled by a result of ERROR_END_OF_STREAM. + // A result of INFO_FORMAT_CHANGED indicates that the format of this + // MediaSource has changed mid-stream, the client can continue reading + // but should be prepared for buffers of the new configuration. virtual status_t read( MediaBuffer **buffer, const ReadOptions *options = NULL) = 0; diff --git a/include/media/stagefright/OMXCodec.h b/include/media/stagefright/OMXCodec.h index ff7e34a..ec043a9 100644 --- a/include/media/stagefright/OMXCodec.h +++ b/include/media/stagefright/OMXCodec.h @@ -124,6 +124,7 @@ private: bool mInitialBufferSubmit; bool mSignalledEOS; bool mNoMoreOutputData; + bool mOutputPortSettingsHaveChanged; int64_t mSeekTimeUs; Mutex mLock; |