Hide

MediaStatus

public final class MediaStatus extends Object
java.lang.Object
   ↳ com.google.android.gms.cast.MediaStatus

A class that holds status information about some media or media queue. The current MediaStatus can be obtained from the RemoteMediaPlayer.

Each media session is associated with a media queue on the receiver application. The list of media items in the current queue can be obtained from getQueueItems(). Media items are assigned a unique item ID. Accessors for individual item and values of properties of the queue are also provided here.

getCurrentItemId(), getLoadingItemId() and getPreloadedItemId() tells which item is playing, which item is loading and which item has been preloaded on the receiver.

Constant Summary

long COMMAND_PAUSE A flag (bitmask) indicating that a media item can be paused.
long COMMAND_SEEK A flag (bitmask) indicating that a media item supports seeking.
long COMMAND_SET_VOLUME A flag (bitmask) indicating that a media item's audio volume can be changed.
long COMMAND_SKIP_BACKWARD A flag (bitmask) indicating that a media item supports skipping backward.
long COMMAND_SKIP_FORWARD A flag (bitmask) indicating that a media item supports skipping forward.
long COMMAND_TOGGLE_MUTE A flag (bitmask) indicating that a media item's audio can be muted.
int IDLE_REASON_CANCELED Constant indicating that the player is idle because playback has been canceled in response to a STOP command.
int IDLE_REASON_ERROR Constant indicating that the player is idle because a playback error has occurred.
int IDLE_REASON_FINISHED Constant indicating that the player is idle because playback has finished.
int IDLE_REASON_INTERRUPTED Constant indicating that the player is idle because playback has been interrupted by a LOAD command.
int IDLE_REASON_NONE Constant indicating that the player currently has no idle reason.
int PLAYER_STATE_BUFFERING Constant indicating that the media player is buffering.
int PLAYER_STATE_IDLE Constant indicating that the media player is idle.
int PLAYER_STATE_PAUSED Constant indicating that the media player is paused.
int PLAYER_STATE_PLAYING Constant indicating that the media player is playing.
int PLAYER_STATE_UNKNOWN Constant indicating unknown player state.
int REPEAT_MODE_REPEAT_ALL Constant indicating that the items in the queue will be played indefinitely.
int REPEAT_MODE_REPEAT_ALL_AND_SHUFFLE Constant indicating that the items in the queue will be played indefinitely, and the order of the items will be randomly shuffled once the last item in the queue finishes.
int REPEAT_MODE_REPEAT_OFF Constant indicating that when the queue is completed the media session is terminated.
int REPEAT_MODE_REPEAT_SINGLE Constant indicating that the current item will be repeated indefinitely.

Public Method Summary

long[]
int
JSONObject
int
int
MediaInfo
double
int
int
MediaQueueItem
getQueueItem(int index)
MediaQueueItem
getQueueItemById(int itemId)
int
List<MediaQueueItem>
int
long
double
boolean
isMediaCommandSupported(long mediaCommand)
boolean
isMute()

Constants

public static final long COMMAND_PAUSE

A flag (bitmask) indicating that a media item can be paused.

Constant Value: 1

public static final long COMMAND_SEEK

A flag (bitmask) indicating that a media item supports seeking.

Constant Value: 2

public static final long COMMAND_SET_VOLUME

A flag (bitmask) indicating that a media item's audio volume can be changed.

Constant Value: 4

public static final long COMMAND_SKIP_BACKWARD

A flag (bitmask) indicating that a media item supports skipping backward.

Constant Value: 32

public static final long COMMAND_SKIP_FORWARD

A flag (bitmask) indicating that a media item supports skipping forward.

Constant Value: 16

public static final long COMMAND_TOGGLE_MUTE

A flag (bitmask) indicating that a media item's audio can be muted.

Constant Value: 8

public static final int IDLE_REASON_CANCELED

Constant indicating that the player is idle because playback has been canceled in response to a STOP command.

Constant Value: 2

public static final int IDLE_REASON_ERROR

Constant indicating that the player is idle because a playback error has occurred.

Constant Value: 4

public static final int IDLE_REASON_FINISHED

Constant indicating that the player is idle because playback has finished.

Constant Value: 1

public static final int IDLE_REASON_INTERRUPTED

Constant indicating that the player is idle because playback has been interrupted by a LOAD command.

Constant Value: 3

public static final int IDLE_REASON_NONE

Constant indicating that the player currently has no idle reason.

Constant Value: 0

public static final int PLAYER_STATE_BUFFERING

Constant indicating that the media player is buffering.

Constant Value: 4

public static final int PLAYER_STATE_IDLE

Constant indicating that the media player is idle.

Constant Value: 1

public static final int PLAYER_STATE_PAUSED

Constant indicating that the media player is paused.

Constant Value: 3

public static final int PLAYER_STATE_PLAYING

Constant indicating that the media player is playing.

Constant Value: 2

public static final int PLAYER_STATE_UNKNOWN

Constant indicating unknown player state.

Constant Value: 0

public static final int REPEAT_MODE_REPEAT_ALL

Constant indicating that the items in the queue will be played indefinitely.

Constant Value: 1

public static final int REPEAT_MODE_REPEAT_ALL_AND_SHUFFLE

Constant indicating that the items in the queue will be played indefinitely, and the order of the items will be randomly shuffled once the last item in the queue finishes. The queue will continue to play starting from the first item of the shuffled items.

Constant Value: 3

public static final int REPEAT_MODE_REPEAT_OFF

Constant indicating that when the queue is completed the media session is terminated.

Constant Value: 0

public static final int REPEAT_MODE_REPEAT_SINGLE

Constant indicating that the current item will be repeated indefinitely.

Constant Value: 2

Public Methods

public long[] getActiveTrackIds ()

Returns the list of active track IDs set by the cast receiver, if any, otherwise null.

public int getCurrentItemId ()

Returns the item ID of the item that that was active in the queue (it may not be playing) at the time the media status change happened.

public JSONObject getCustomData ()

Returns any custom data that is associated with the media item.

public int getIdleReason ()

Gets the player state idle reason. This value is only meaningful if the player state is in fact PLAYER_STATE_IDLE.

public int getLoadingItemId ()

Returns the item ID of the item that is currently loading (but isn't active in the queue) on the receiver. Returns INVALID_ITEM_ID if no item is currently loading.

public MediaInfo getMediaInfo ()

Returns the MediaInfo for this item.

public double getPlaybackRate ()

Gets the current stream playback rate. This will be negative if the stream is seeking backwards, 0 if the stream is paused, 1 if the stream is playing normally, and some other postive value if the stream is seeking forwards.

public int getPlayerState ()

Gets the current media player state.

public int getPreloadedItemId ()

If the next item has been preloaded this returns the preloaded item ID. Otherwise returns INVALID_ITEM_ID.

public MediaQueueItem getQueueItem (int index)

Returns the MediaQueueItem at index, or null if index out of bounds.

public MediaQueueItem getQueueItemById (int itemId)

Returns the MediaQueueItem of the give item ID. Returns null if not found.

public int getQueueItemCount ()

Returns the number of items in the media queue.

public List<MediaQueueItem> getQueueItems ()

Returns the list of MediaQueueItem as an unmodifiable list.

public int getQueueRepeatMode ()

Returns the repeat mode of the media queue.

public long getStreamPosition ()

Returns the current stream position, in milliseconds.

public double getStreamVolume ()

Returns the stream's volume.

public boolean isMediaCommandSupported (long mediaCommand)

Tests if the stream supports a given control command.

Parameters
mediaCommand The media command.
Returns
  • true if the command is supported, false otherwise.

public boolean isMute ()

Returns the stream's mute state.