List of usage examples for android.support.v4.media MediaMetadataCompat METADATA_KEY_ALBUM_ARTIST
String METADATA_KEY_ALBUM_ARTIST
To view the source code for android.support.v4.media MediaMetadataCompat METADATA_KEY_ALBUM_ARTIST.
Click Source Link
From source file:com.scooter1556.sms.lib.android.utils.MediaUtils.java
public static MediaMetadataCompat getMediaMetadata(MediaElement mediaElement, Bitmap artwork) { if (mediaElement == null) { return null; }/* w w w.j a v a2 s . co m*/ // Update session metadata MediaMetadataCompat.Builder metadata = new MediaMetadataCompat.Builder(); metadata.putString(MediaMetadataCompat.METADATA_KEY_MEDIA_ID, mediaElement.getID().toString()); if (mediaElement.getArtist() != null) { metadata.putString(MediaMetadataCompat.METADATA_KEY_ARTIST, mediaElement.getArtist()); metadata.putString(MediaMetadataCompat.METADATA_KEY_DISPLAY_SUBTITLE, mediaElement.getArtist()); } if (mediaElement.getAlbum() != null) { metadata.putString(MediaMetadataCompat.METADATA_KEY_ALBUM, mediaElement.getAlbum()); metadata.putString(MediaMetadataCompat.METADATA_KEY_DISPLAY_DESCRIPTION, mediaElement.getAlbum()); } if (mediaElement.getTitle() != null) { metadata.putString(MediaMetadataCompat.METADATA_KEY_TITLE, mediaElement.getTitle()); metadata.putString(MediaMetadataCompat.METADATA_KEY_DISPLAY_TITLE, mediaElement.getTitle()); } if (mediaElement.getDuration() != null) { metadata.putLong(MediaMetadataCompat.METADATA_KEY_DURATION, mediaElement.getDuration() * 1000); } if (mediaElement.getYear() != null) { metadata.putLong(MediaMetadataCompat.METADATA_KEY_YEAR, mediaElement.getYear()); } if (mediaElement.getGenre() != null) { metadata.putString(MediaMetadataCompat.METADATA_KEY_GENRE, mediaElement.getGenre()); } if (mediaElement.getTrackNumber() != null) { metadata.putLong(MediaMetadataCompat.METADATA_KEY_TRACK_NUMBER, mediaElement.getTrackNumber()); } if (mediaElement.getDiscNumber() != null) { metadata.putLong(MediaMetadataCompat.METADATA_KEY_DISC_NUMBER, mediaElement.getDiscNumber()); } if (mediaElement.getAlbumArtist() != null) { metadata.putString(MediaMetadataCompat.METADATA_KEY_ALBUM_ARTIST, mediaElement.getAlbumArtist()); } if (artwork != null) { metadata.putBitmap(MediaMetadataCompat.METADATA_KEY_ALBUM_ART, artwork); metadata.putBitmap(MediaMetadataCompat.METADATA_KEY_DISPLAY_ICON, artwork); metadata.putBitmap(MediaMetadataCompat.METADATA_KEY_ART, artwork); } return metadata.build(); }
From source file:com.scooter1556.sms.android.utils.MediaUtils.java
public static MediaMetadataCompat getMediaMetadataCompatFromMediaElement(MediaElement mediaElement) { if (mediaElement == null) { return null; }//from w ww . j av a 2 s . co m // Update session metadata MediaMetadataCompat.Builder metadata = new MediaMetadataCompat.Builder(); metadata.putString(MediaMetadataCompat.METADATA_KEY_MEDIA_ID, mediaElement.getID().toString()); if (mediaElement.getArtist() != null) { metadata.putString(MediaMetadataCompat.METADATA_KEY_ARTIST, mediaElement.getArtist()); metadata.putString(MediaMetadataCompat.METADATA_KEY_DISPLAY_SUBTITLE, mediaElement.getArtist()); } if (mediaElement.getAlbum() != null) { metadata.putString(MediaMetadataCompat.METADATA_KEY_ALBUM, mediaElement.getAlbum()); metadata.putString(MediaMetadataCompat.METADATA_KEY_DISPLAY_DESCRIPTION, mediaElement.getAlbum()); } if (mediaElement.getTitle() != null) { metadata.putString(MediaMetadataCompat.METADATA_KEY_TITLE, mediaElement.getTitle()); metadata.putString(MediaMetadataCompat.METADATA_KEY_DISPLAY_TITLE, mediaElement.getTitle()); } if (mediaElement.getDuration() != null) { metadata.putLong(MediaMetadataCompat.METADATA_KEY_DURATION, Double.valueOf(mediaElement.getDuration() * 1000.0).longValue()); } if (mediaElement.getYear() != null) { metadata.putLong(MediaMetadataCompat.METADATA_KEY_YEAR, mediaElement.getYear()); } if (mediaElement.getGenre() != null) { metadata.putString(MediaMetadataCompat.METADATA_KEY_GENRE, mediaElement.getGenre()); } if (mediaElement.getTrackNumber() != null) { metadata.putLong(MediaMetadataCompat.METADATA_KEY_TRACK_NUMBER, mediaElement.getTrackNumber()); } if (mediaElement.getDiscNumber() != null) { metadata.putLong(MediaMetadataCompat.METADATA_KEY_DISC_NUMBER, mediaElement.getDiscNumber()); } if (mediaElement.getAlbumArtist() != null) { metadata.putString(MediaMetadataCompat.METADATA_KEY_ALBUM_ARTIST, mediaElement.getAlbumArtist()); } if (RESTService.getInstance().getAddress() != null) { metadata.putString(MediaMetadataCompat.METADATA_KEY_ALBUM_ART_URI, RESTService.getInstance().getAddress() + "/image/" + mediaElement.getID() + "/cover"); metadata.putString(MediaMetadataCompat.METADATA_KEY_DISPLAY_ICON_URI, RESTService.getInstance().getAddress() + "/image/" + mediaElement.getID() + "/cover"); metadata.putString(MediaMetadataCompat.METADATA_KEY_ART_URI, RESTService.getInstance().getAddress() + "/image/" + mediaElement.getID() + "/fanart"); } return metadata.build(); }
From source file:com.classiqo.nativeandroid_32bitz.playback.CastPlayback.java
private static MediaInfo toCastMediaMetadata(MediaMetadataCompat track, JSONObject customData) { MediaMetadata mediaMetadata = new MediaMetadata(MediaMetadata.MEDIA_TYPE_MUSIC_TRACK); mediaMetadata.putString(MediaMetadata.KEY_TITLE, track.getDescription().getTitle() == null ? "" : track.getDescription().getTitle().toString()); mediaMetadata.putString(MediaMetadata.KEY_SUBTITLE, track.getDescription().getSubtitle() == null ? "" : track.getDescription().getSubtitle().toString()); mediaMetadata.putString(MediaMetadata.KEY_ALBUM_ARTIST, track.getString(MediaMetadataCompat.METADATA_KEY_ALBUM_ARTIST)); mediaMetadata.putString(MediaMetadata.KEY_ALBUM_TITLE, track.getString(MediaMetadataCompat.METADATA_KEY_ALBUM)); WebImage image = new WebImage(new Uri.Builder() .encodedPath(track.getString(MediaMetadataCompat.METADATA_KEY_ALBUM_ART_URI)).build()); mediaMetadata.addImage(image);//from w w w .jav a 2s. c o m mediaMetadata.addImage(image); //noinspection ResourceType return new MediaInfo.Builder(track.getString(MusicProviderSource.CUSTOM_METADATA_TRACK_SOURCE)) .setContentType(MIME_TYPE_AUDIO_MPEG).setStreamType(MediaInfo.STREAM_TYPE_BUFFERED) .setMetadata(mediaMetadata).setCustomData(customData).build(); }
From source file:com.torrenttunes.android.CastPlayback.java
/** * Helper method to convert a {@link MediaMetadataCompat} to a * {@link com.google.android.gms.cast.MediaInfo} used for sending media to the receiver app. * * @param track {@link com.google.android.gms.cast.MediaMetadata} * @param customData custom data specifies the local mediaId used by the player. * @return mediaInfo {@link com.google.android.gms.cast.MediaInfo} *///from www . j ava 2 s.c o m private static MediaInfo toCastMediaMetadata(MediaMetadataCompat track, JSONObject customData) { MediaMetadata mediaMetadata = new MediaMetadata(MediaMetadata.MEDIA_TYPE_MUSIC_TRACK); mediaMetadata.putString(MediaMetadata.KEY_TITLE, track.getDescription().getTitle().toString()); mediaMetadata.putString(MediaMetadata.KEY_SUBTITLE, track.getDescription().getSubtitle().toString()); mediaMetadata.putString(MediaMetadata.KEY_ALBUM_ARTIST, track.getString(MediaMetadataCompat.METADATA_KEY_ALBUM_ARTIST)); mediaMetadata.putString(MediaMetadata.KEY_ALBUM_TITLE, track.getString(MediaMetadataCompat.METADATA_KEY_ALBUM)); WebImage image = new WebImage(new Uri.Builder() .encodedPath(track.getString(MediaMetadataCompat.METADATA_KEY_ALBUM_ART_URI)).build()); // First image is used by the receiver for showing the audio album art. mediaMetadata.addImage(image); // Second image is used by Cast Companion Library on the full screen activity that is shown // when the cast dialog is clicked. mediaMetadata.addImage(image); return new MediaInfo.Builder(track.getString(MusicProvider.CUSTOM_METADATA_TRACK_SOURCE)) .setContentType(MIME_TYPE_AUDIO_MPEG).setStreamType(MediaInfo.STREAM_TYPE_BUFFERED) .setMetadata(mediaMetadata).setCustomData(customData).build(); }
From source file:com.appdevper.mediaplayer.app.CastPlayback.java
/** * Helper method to convert a {@link android.media.MediaMetadata} to a * {@link com.google.android.gms.cast.MediaInfo} used for sending media to the receiver app. * * @param track {@link com.google.android.gms.cast.MediaMetadata} * @param customData custom data specifies the local mediaId used by the player. * @return mediaInfo {@link com.google.android.gms.cast.MediaInfo} *///from w ww. j a va2 s .c o m private static MediaInfo toCastMediaMetadata(MediaMetadataCompat track, JSONObject customData) { MediaMetadata mediaMetadata = new MediaMetadata(MediaMetadata.MEDIA_TYPE_MUSIC_TRACK); mediaMetadata.putString(MediaMetadata.KEY_TITLE, track.getDescription().getTitle() == null ? "" : track.getDescription().getTitle().toString()); mediaMetadata.putString(MediaMetadata.KEY_SUBTITLE, track.getDescription().getSubtitle() == null ? "" : track.getDescription().getSubtitle().toString()); mediaMetadata.putString(MediaMetadata.KEY_ALBUM_ARTIST, track.getString(MediaMetadataCompat.METADATA_KEY_ALBUM_ARTIST)); mediaMetadata.putString(MediaMetadata.KEY_ALBUM_TITLE, track.getString(MediaMetadataCompat.METADATA_KEY_ALBUM)); WebImage image = new WebImage(new Uri.Builder() .encodedPath(track.getString(MediaMetadataCompat.METADATA_KEY_ALBUM_ART_URI)).build()); // First image is used by the receiver for showing the audio album art. mediaMetadata.addImage(image); // Second image is used by Cast Companion Library on the full screen activity that is shown // when the cast dialog is clicked. mediaMetadata.addImage(image); //noinspection ResourceType return new MediaInfo.Builder(track.getString(MusicProviderSource.CUSTOM_METADATA_TRACK_SOURCE)) .setContentType(MIME_TYPE_AUDIO_MPEG).setStreamType(MediaInfo.STREAM_TYPE_BUFFERED) .setMetadata(mediaMetadata).setCustomData(customData).build(); }
From source file:com.example.chu.googleplaylibrary.playback.CastPlayback.java
/** * Helper method to convert a {@link android.media.MediaMetadata} to a * {@link com.google.android.gms.cast.MediaInfo} used for sending media to the receiver app. * * @param track {@link com.google.android.gms.cast.MediaMetadata} * @param customData custom data specifies the local mediaId used by the player. * @return mediaInfo {@link com.google.android.gms.cast.MediaInfo} *//*from w ww . ja v a2s . c om*/ private static MediaInfo toCastMediaMetadata(MediaMetadataCompat track, JSONObject customData) { MediaMetadata mediaMetadata = new MediaMetadata(MediaMetadata.MEDIA_TYPE_MUSIC_TRACK); if (track != null) { mediaMetadata.putString(MediaMetadata.KEY_TITLE, track.getDescription().getTitle() == null ? "" : track.getDescription().getTitle().toString()); mediaMetadata.putString(MediaMetadata.KEY_SUBTITLE, track.getDescription().getSubtitle() == null ? "" : track.getDescription().getSubtitle().toString()); mediaMetadata.putString(MediaMetadata.KEY_ALBUM_ARTIST, track.getString(MediaMetadataCompat.METADATA_KEY_ALBUM_ARTIST)); mediaMetadata.putString(MediaMetadata.KEY_ALBUM_TITLE, track.getString(MediaMetadataCompat.METADATA_KEY_ALBUM)); } WebImage image = new WebImage(new Uri.Builder() .encodedPath(track.getString(MediaMetadataCompat.METADATA_KEY_ALBUM_ART_URI)).build()); // First image is used by the receiver for showing the audio album art. mediaMetadata.addImage(image); // Second image is used by Cast Companion Library on the full screen activity that is shown // when the cast dialog is clicked. mediaMetadata.addImage(image); //noinspection ResourceType return new MediaInfo.Builder(track.getString(MusicProviderSource.CUSTOM_METADATA_TRACK_SOURCE)) .setContentType(MIME_TYPE_AUDIO_MPEG).setStreamType(MediaInfo.STREAM_TYPE_BUFFERED) .setMetadata(mediaMetadata).setCustomData(customData).build(); }
From source file:org.gateshipone.odyssey.playbackservice.managers.PlaybackServiceStatusHelper.java
/** * Updates the Metadata from Androids MediaSession. This sets track/album and stuff * for a lockscreen image for example./*from w w w .j a v a2 s. c o m*/ * * @param track Current track. * @param playbackState State of the PlaybackService. */ private void updateMetadata(TrackModel track, PlaybackService.PLAYSTATE playbackState) { if (track != null) { if (playbackState == PlaybackService.PLAYSTATE.PLAYING) { mMediaSession.setPlaybackState(new PlaybackStateCompat.Builder() .setState(PlaybackStateCompat.STATE_PLAYING, 0, 1.0f) .setActions(PlaybackStateCompat.ACTION_SKIP_TO_NEXT + PlaybackStateCompat.ACTION_PAUSE + PlaybackStateCompat.ACTION_PLAY + PlaybackStateCompat.ACTION_SKIP_TO_PREVIOUS + PlaybackStateCompat.ACTION_STOP + PlaybackStateCompat.ACTION_SEEK_TO) .build()); } else { mMediaSession.setPlaybackState(new PlaybackStateCompat.Builder() .setState(PlaybackStateCompat.STATE_PAUSED, 0, 1.0f) .setActions(PlaybackStateCompat.ACTION_SKIP_TO_NEXT + PlaybackStateCompat.ACTION_PAUSE + PlaybackStateCompat.ACTION_PLAY + PlaybackStateCompat.ACTION_SKIP_TO_PREVIOUS + PlaybackStateCompat.ACTION_STOP + PlaybackStateCompat.ACTION_SEEK_TO) .build()); } // Try to get old metadata to save image retrieval. MediaMetadataCompat oldData = mMediaSession.getController().getMetadata(); MediaMetadataCompat.Builder metaDataBuilder; if (oldData == null) { metaDataBuilder = new MediaMetadataCompat.Builder(); } else { metaDataBuilder = new MediaMetadataCompat.Builder(mMediaSession.getController().getMetadata()); } metaDataBuilder.putString(MediaMetadataCompat.METADATA_KEY_TITLE, track.getTrackName()); metaDataBuilder.putString(MediaMetadataCompat.METADATA_KEY_ALBUM, track.getTrackAlbumName()); metaDataBuilder.putString(MediaMetadataCompat.METADATA_KEY_ARTIST, track.getTrackArtistName()); metaDataBuilder.putString(MediaMetadataCompat.METADATA_KEY_ALBUM_ARTIST, track.getTrackArtistName()); metaDataBuilder.putString(MediaMetadataCompat.METADATA_KEY_DISPLAY_TITLE, track.getTrackName()); metaDataBuilder.putLong(MediaMetadataCompat.METADATA_KEY_TRACK_NUMBER, track.getTrackNumber()); metaDataBuilder.putLong(MediaMetadataCompat.METADATA_KEY_DURATION, track.getTrackDuration()); mMediaSession.setMetadata(metaDataBuilder.build()); } }
From source file:github.popeen.dsub.util.compat.RemoteControlClientLP.java
public void setMetadata(MusicDirectory.Entry currentSong, Bitmap bitmap) { MediaMetadataCompat.Builder builder = new MediaMetadataCompat.Builder(); builder.putString(MediaMetadataCompat.METADATA_KEY_ARTIST, (currentSong == null) ? null : currentSong.getArtist()) .putString(MediaMetadataCompat.METADATA_KEY_ALBUM, (currentSong == null) ? null : currentSong.getAlbum()) .putString(MediaMetadataCompat.METADATA_KEY_ALBUM_ARTIST, (currentSong == null) ? null : currentSong.getArtist()) .putString(MediaMetadataCompat.METADATA_KEY_TITLE, (currentSong) == null ? null : currentSong.getTitle()) .putString(MediaMetadataCompat.METADATA_KEY_GENRE, (currentSong) == null ? null : currentSong.getGenre()) .putLong(MediaMetadataCompat.METADATA_KEY_TRACK_NUMBER, (currentSong == null) ? 0 : ((currentSong.getTrack() == null) ? 0 : currentSong.getTrack())) .putLong(MediaMetadataCompat.METADATA_KEY_DURATION, (currentSong == null) ? 0 : ((currentSong.getDuration() == null) ? 0 : (currentSong.getDuration() * 1000))); if (bitmap != null) { builder.putBitmap(MediaMetadataCompat.METADATA_KEY_ALBUM_ART, bitmap); }/* w ww.j av a 2 s .c o m*/ mediaSession.setMetadata(builder.build()); }
From source file:com.mylovemhz.simplay.MediaControlFragment.java
private void readMetadata(MediaMetadataCompat metadata) { if (metadata != null) { seekBar.setMax((int) metadata.getLong(MediaMetadataCompat.METADATA_KEY_DURATION)); artistText.setText(metadata.getText(MediaMetadataCompat.METADATA_KEY_ALBUM_ARTIST)); titleText.setText(metadata.getText(MediaMetadataCompat.METADATA_KEY_TITLE)); String artUrl = metadata.getText(MediaMetadataCompat.METADATA_KEY_ALBUM_ART_URI).toString(); try {//from www . j a v a 2 s. c o m Picasso.with(getContext().getApplicationContext()).load(artUrl).into(albumImage); } catch (IllegalArgumentException e) { //no artwork albumImage.setImageResource(R.drawable.ic_album); } } }
From source file:nuclei.media.playback.CastPlayback.java
/** * Helper method to convert a {@link android.media.MediaMetadata} to a * {@link MediaInfo} used for sending media to the receiver app. * * @param track {@link MediaMetadata}/*from w w w . j ava 2s. c om*/ * @param customData custom data specifies the local mediaId used by the player. * @return mediaInfo {@link MediaInfo} */ private static MediaInfo toCastMediaMetadata(MediaMetadata track, JSONObject customData) { com.google.android.gms.cast.MediaMetadata mediaMetadata = new com.google.android.gms.cast.MediaMetadata( com.google.android.gms.cast.MediaMetadata.MEDIA_TYPE_MUSIC_TRACK); mediaMetadata.putString(com.google.android.gms.cast.MediaMetadata.KEY_TITLE, track.getDescription().getTitle() == null ? "" : track.getDescription().getTitle().toString()); mediaMetadata.putString(com.google.android.gms.cast.MediaMetadata.KEY_SUBTITLE, track.getDescription().getSubtitle() == null ? "" : track.getDescription().getSubtitle().toString()); mediaMetadata.putString(com.google.android.gms.cast.MediaMetadata.KEY_ALBUM_ARTIST, track.getString(MediaMetadataCompat.METADATA_KEY_ALBUM_ARTIST)); mediaMetadata.putString(com.google.android.gms.cast.MediaMetadata.KEY_ALBUM_TITLE, track.getString(MediaMetadataCompat.METADATA_KEY_ALBUM)); WebImage image = new WebImage(new Uri.Builder() .encodedPath(track.getString(MediaMetadataCompat.METADATA_KEY_ALBUM_ART_URI)).build()); // First image is used by the receiver for showing the audio album art. mediaMetadata.addImage(image); // Second image is used by Cast Companion Library on the full screen activity that is shown // when the cast dialog is clicked. mediaMetadata.addImage(image); MediaId id = MediaProvider.getInstance().getMediaId(track.getDescription().getMediaId()); //noinspection ResourceType return new MediaInfo.Builder(track.getString(MediaProvider.CUSTOM_METADATA_TRACK_SOURCE)) .setContentType(id.type == MediaId.TYPE_AUDIO ? MIME_TYPE_AUDIO_MPEG : MIME_TYPE_VIDEO_MPEG) .setStreamType(MediaInfo.STREAM_TYPE_BUFFERED).setMetadata(mediaMetadata).setCustomData(customData) .build(); }