diff options
author | Nicolas Catania <niko@google.com> | 2009-07-09 09:21:33 -0700 |
---|---|---|
committer | Nicolas Catania <niko@google.com> | 2009-07-10 11:00:42 -0700 |
commit | 5d55c7119820ee9bb06fc072e416fe98ba77cd28 (patch) | |
tree | 4f461a51f26fc221f4e9c7c660c6b6680ff072d7 /media/libmediaplayerservice | |
parent | 2eedb2515b733aaba0a92944def8156ef379e0da (diff) | |
download | frameworks_base-5d55c7119820ee9bb06fc072e416fe98ba77cd28.zip frameworks_base-5d55c7119820ee9bb06fc072e416fe98ba77cd28.tar.gz frameworks_base-5d55c7119820ee9bb06fc072e416fe98ba77cd28.tar.bz2 |
Basic plumbing to retrieve metadata from the native player.
IMediaPlayer.h
Added a getMetadata method that mirrors the on in MediaPlayer.java.
MediaPlayer.java
Added a native method to get the metadata from the native player.
Parse the parcel into a Metadata object.
Metadata.java
Added a stub to parse the Parcel returned by the native player into
a set of metadata.
android_media_MediaPlayer.cpp
JNI call to forward the getMetadata call.
MediaPlayerService.cpp
MediaPlayerService::Client implements the new getMetadata method added in IMediaPlayer.h
Diffstat (limited to 'media/libmediaplayerservice')
-rw-r--r-- | media/libmediaplayerservice/MediaPlayerService.cpp | 10 | ||||
-rw-r--r-- | media/libmediaplayerservice/MediaPlayerService.h | 1 |
2 files changed, 11 insertions, 0 deletions
diff --git a/media/libmediaplayerservice/MediaPlayerService.cpp b/media/libmediaplayerservice/MediaPlayerService.cpp index 3adbfac..04aab81 100644 --- a/media/libmediaplayerservice/MediaPlayerService.cpp +++ b/media/libmediaplayerservice/MediaPlayerService.cpp @@ -846,6 +846,16 @@ status_t MediaPlayerService::Client::setMetadataFilter(const Parcel& filter) return status; } +status_t MediaPlayerService::Client::getMetadata(bool update_only, bool apply_filter, Parcel *metadata) +{ + status_t status; + metadata->writeInt32(-1); // Placeholder for the return code + + // FIXME: Implement, query the native player and do the optional filtering, etc... + status = OK; + return status; +} + status_t MediaPlayerService::Client::prepareAsync() { LOGV("[%d] prepareAsync", mConnId); diff --git a/media/libmediaplayerservice/MediaPlayerService.h b/media/libmediaplayerservice/MediaPlayerService.h index b915e86..7920559 100644 --- a/media/libmediaplayerservice/MediaPlayerService.h +++ b/media/libmediaplayerservice/MediaPlayerService.h @@ -191,6 +191,7 @@ private: virtual status_t setVolume(float leftVolume, float rightVolume); virtual status_t invoke(const Parcel& request, Parcel *reply); virtual status_t setMetadataFilter(const Parcel& filter); + virtual status_t getMetadata(bool update_only, bool apply_filter, Parcel *metadata); sp<MediaPlayerBase> createPlayer(player_type playerType); status_t setDataSource(const char *url); |