diff --git a/media/libmedia/mediametadataretriever.cpp b/media/libmedia/mediametadataretriever.cpp
index d34a8ed..e2712ba 100644
--- a/media/libmedia/mediametadataretriever.cpp
+++ b/media/libmedia/mediametadataretriever.cpp
@@ -95,6 +95,7 @@
 status_t MediaMetadataRetriever::setDataSource(const char* srcUrl)
 {
     LOGV("setDataSource");
+    Mutex::Autolock _l(mLock);
     if (mRetriever == 0) {
         LOGE("retriever is not initialized");
         return INVALID_OPERATION;
@@ -110,6 +111,7 @@
 status_t MediaMetadataRetriever::setDataSource(int fd, int64_t offset, int64_t length)
 {
     LOGV("setDataSource(%d, %lld, %lld)", fd, offset, length);
+    Mutex::Autolock _l(mLock);
     if (mRetriever == 0) {
         LOGE("retriever is not initialized");
         return INVALID_OPERATION;
@@ -124,6 +126,7 @@
 status_t MediaMetadataRetriever::setMode(int mode)
 {
     LOGV("setMode(%d)", mode);
+    Mutex::Autolock _l(mLock);
     if (mRetriever == 0) {
         LOGE("retriever is not initialized");
         return INVALID_OPERATION;
@@ -134,6 +137,7 @@
 status_t MediaMetadataRetriever::getMode(int* mode)
 {
     LOGV("getMode");
+    Mutex::Autolock _l(mLock);
     if (mRetriever == 0) {
         LOGE("retriever is not initialized");
         return INVALID_OPERATION;
@@ -144,6 +148,7 @@
 sp<IMemory> MediaMetadataRetriever::captureFrame()
 {
     LOGV("captureFrame");
+    Mutex::Autolock _l(mLock);
     if (mRetriever == 0) {
         LOGE("retriever is not initialized");
         return NULL;
@@ -154,6 +159,7 @@
 const char* MediaMetadataRetriever::extractMetadata(int keyCode)
 {
     LOGV("extractMetadata(%d)", keyCode);
+    Mutex::Autolock _l(mLock);
     if (mRetriever == 0) {
         LOGE("retriever is not initialized");
         return NULL;
@@ -164,6 +170,7 @@
 sp<IMemory> MediaMetadataRetriever::extractAlbumArt()
 {
     LOGV("extractAlbumArt");
+    Mutex::Autolock _l(mLock);
     if (mRetriever == 0) {
         LOGE("retriever is not initialized");
         return NULL;
