summaryrefslogtreecommitdiffstats
path: root/media
diff options
context:
space:
mode:
authorRonghua Wu <ronghuawu@google.com>2015-04-23 15:24:25 -0700
committerRonghua Wu <ronghuawu@google.com>2015-04-23 18:03:30 -0700
commit8f9dd872366f54b6260506c75c3d0cc3f9f73f81 (patch)
tree6b20eb7ca59c4c40936e27806f5d76bce005b146 /media
parent1ac91ed2c67245ea5052182212463d3f0afe8b5a (diff)
downloadframeworks_av-8f9dd872366f54b6260506c75c3d0cc3f9f73f81.zip
frameworks_av-8f9dd872366f54b6260506c75c3d0cc3f9f73f81.tar.gz
frameworks_av-8f9dd872366f54b6260506c75c3d0cc3f9f73f81.tar.bz2
mediaresourcemanager: add dumpsys support.
Bug: 20233206 Change-Id: Ic253985e408b05b488e87cd5c50c0d619ac568ef
Diffstat (limited to 'media')
-rw-r--r--media/libmedia/IResourceManagerClient.cpp20
-rw-r--r--media/libstagefright/MediaCodec.cpp15
2 files changed, 35 insertions, 0 deletions
diff --git a/media/libmedia/IResourceManagerClient.cpp b/media/libmedia/IResourceManagerClient.cpp
index 6fa56fc..b3f56e8 100644
--- a/media/libmedia/IResourceManagerClient.cpp
+++ b/media/libmedia/IResourceManagerClient.cpp
@@ -25,6 +25,7 @@ namespace android {
enum {
RECLAIM_RESOURCE = IBinder::FIRST_CALL_TRANSACTION,
+ GET_NAME,
};
class BpResourceManagerClient: public BpInterface<IResourceManagerClient>
@@ -46,6 +47,19 @@ public:
}
return ret;
}
+
+ virtual String8 getName() {
+ Parcel data, reply;
+ data.writeInterfaceToken(IResourceManagerClient::getInterfaceDescriptor());
+
+ String8 ret;
+ status_t status = remote()->transact(GET_NAME, data, &reply);
+ if (status == NO_ERROR) {
+ ret = reply.readString8();
+ }
+ return ret;
+ }
+
};
IMPLEMENT_META_INTERFACE(ResourceManagerClient, "android.media.IResourceManagerClient");
@@ -62,6 +76,12 @@ status_t BnResourceManagerClient::onTransact(
reply->writeInt32(ret);
return NO_ERROR;
} break;
+ case GET_NAME: {
+ CHECK_INTERFACE(IResourceManagerClient, data, reply);
+ String8 ret = getName();
+ reply->writeString8(ret);
+ return NO_ERROR;
+ } break;
default:
return BBinder::onTransact(code, data, reply, flags);
}
diff --git a/media/libstagefright/MediaCodec.cpp b/media/libstagefright/MediaCodec.cpp
index 93864e4..be3d219 100644
--- a/media/libstagefright/MediaCodec.cpp
+++ b/media/libstagefright/MediaCodec.cpp
@@ -79,6 +79,21 @@ struct ResourceManagerClient : public BnResourceManagerClient {
return (err == OK);
}
+ virtual String8 getName() {
+ String8 ret;
+ sp<MediaCodec> codec = mMediaCodec.promote();
+ if (codec == NULL) {
+ // codec is already gone.
+ return ret;
+ }
+
+ AString name;
+ if (codec->getName(&name) == OK) {
+ ret.setTo(name.c_str());
+ }
+ return ret;
+ }
+
protected:
virtual ~ResourceManagerClient() {}