summaryrefslogtreecommitdiffstats
path: root/media/libstagefright/MediaCodec.cpp
diff options
context:
space:
mode:
authorAndreas Huber <andih@google.com>2012-09-13 16:43:51 -0700
committerAndreas Huber <andih@google.com>2012-09-13 16:43:51 -0700
commit496238cc7551d414067dcbbb4fe3bd801f205f95 (patch)
tree90e4402e792c22804bf42f6f773c97e57d06e5dc /media/libstagefright/MediaCodec.cpp
parentf4bca03d996b584030a80268f58cdb29dc7b7cde (diff)
downloadframeworks_av-496238cc7551d414067dcbbb4fe3bd801f205f95.zip
frameworks_av-496238cc7551d414067dcbbb4fe3bd801f205f95.tar.gz
frameworks_av-496238cc7551d414067dcbbb4fe3bd801f205f95.tar.bz2
Support IDR requests in wifi display, MediaCodec and ACodec.
Change-Id: I596cf8dd61b63465437f78413186fad2be287244
Diffstat (limited to 'media/libstagefright/MediaCodec.cpp')
-rw-r--r--media/libstagefright/MediaCodec.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/media/libstagefright/MediaCodec.cpp b/media/libstagefright/MediaCodec.cpp
index 2060699..7f97430 100644
--- a/media/libstagefright/MediaCodec.cpp
+++ b/media/libstagefright/MediaCodec.cpp
@@ -327,6 +327,12 @@ status_t MediaCodec::flush() {
return PostAndAwaitResponse(msg, &response);
}
+status_t MediaCodec::requestIDRFrame() {
+ (new AMessage(kWhatRequestIDRFrame, id()))->post();
+
+ return OK;
+}
+
////////////////////////////////////////////////////////////////////////////////
void MediaCodec::cancelPendingDequeueOperations() {
@@ -1133,6 +1139,12 @@ void MediaCodec::onMessageReceived(const sp<AMessage> &msg) {
break;
}
+ case kWhatRequestIDRFrame:
+ {
+ mCodec->signalRequestIDRFrame();
+ break;
+ }
+
default:
TRESPASS();
}