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 /media/libmediaplayerservice | |
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 'media/libmediaplayerservice')
-rw-r--r-- | media/libmediaplayerservice/StagefrightMetadataRetriever.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/media/libmediaplayerservice/StagefrightMetadataRetriever.cpp b/media/libmediaplayerservice/StagefrightMetadataRetriever.cpp index 64e9f2f..0e92162 100644 --- a/media/libmediaplayerservice/StagefrightMetadataRetriever.cpp +++ b/media/libmediaplayerservice/StagefrightMetadataRetriever.cpp @@ -130,7 +130,10 @@ VideoFrame *StagefrightMetadataRetriever::captureFrame() { decoder->start(); MediaBuffer *buffer; - status_t err = decoder->read(&buffer); + status_t err; + do { + err = decoder->read(&buffer); + } while (err == INFO_FORMAT_CHANGED); if (err != OK) { CHECK_EQ(buffer, NULL); |