From 6155085b781a81af66d42d907c9f4d1063999594 Mon Sep 17 00:00:00 2001 From: Marco Nelissen Date: Fri, 12 Jun 2015 15:31:23 -0700 Subject: Serialize calls to getFrameAtTime in the mediaserver to avoid running out of memory. Bug: 21277449 Change-Id: I7210806a24958f38d86aadab0310fc263e4c0edf --- media/libmediaplayerservice/MetadataRetrieverClient.cpp | 3 +++ 1 file changed, 3 insertions(+) (limited to 'media/libmediaplayerservice/MetadataRetrieverClient.cpp') diff --git a/media/libmediaplayerservice/MetadataRetrieverClient.cpp b/media/libmediaplayerservice/MetadataRetrieverClient.cpp index 9a37302..a5a1fa5 100644 --- a/media/libmediaplayerservice/MetadataRetrieverClient.cpp +++ b/media/libmediaplayerservice/MetadataRetrieverClient.cpp @@ -191,10 +191,13 @@ status_t MetadataRetrieverClient::setDataSource( return ret; } +Mutex MetadataRetrieverClient::sLock; + sp MetadataRetrieverClient::getFrameAtTime(int64_t timeUs, int option) { ALOGV("getFrameAtTime: time(%lld us) option(%d)", timeUs, option); Mutex::Autolock lock(mLock); + Mutex::Autolock glock(sLock); mThumbnail.clear(); if (mRetriever == NULL) { ALOGE("retriever is not initialized"); -- cgit v1.1