diff options
| -rw-r--r-- | media/jni/android_media_MediaCodec.cpp | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/media/jni/android_media_MediaCodec.cpp b/media/jni/android_media_MediaCodec.cpp index 4492c858c084..001653b08f0c 100644 --- a/media/jni/android_media_MediaCodec.cpp +++ b/media/jni/android_media_MediaCodec.cpp @@ -1461,6 +1461,21 @@ void JMediaCodec::handleCallback(const sp<AMessage> &msg) { break; } + case MediaCodec::CB_METRICS_FLUSHED: + { + sp<WrapperObject<std::unique_ptr<mediametrics::Item>>> metrics; + CHECK(msg->findObject("metrics", (sp<RefBase>*)&metrics)); + + // metrics should never be null. Not sure if checking it here adds any value. + if (metrics == nullptr) { + return; + } + + mediametrics::Item *item = metrics->value.get(); + obj = MediaMetricsJNI::writeMetricsToBundle(env, item, NULL); + break; + } + default: TRESPASS(); } |