Added in API level 31

PlaybackMetrics

class PlaybackMetrics : Parcelable
kotlin.Any
   ↳ android.media.metrics.PlaybackMetrics

This class is used to store playback data.

Summary

Nested classes

A builder for PlaybackMetrics

Constants
static Int

Advertisement contents.

static Int

Main contents.

static Int

Other contents.

static Int

Unknown content type.

static Int

Clear key DRM type.

static Int

DRM is not used.

static Int

Other DRM type.

static Int

Play ready DRM type.

static Int

Widevine L1 DRM type.

static Int

Widevine L3 DRM type.

static Int

Widevine L3 fallback DRM type.

static Int

Live playback type.

static Int

Other playback type.

static Int

Unknown playback type.

static Int

VOD (Video on Demand) playback type.

static Int

Stream from device.

static Int

Stream from more than one sources.

static Int

Stream from network.

static Int

Unknown stream source.

static Int

DASH (Dynamic Adaptive Streaming over HTTP) stream type.

static Int

HLS (HTTP Live Streaming) stream type.

static Int

Other stream type.

static Int

Progressive stream type.

static Int

SS (HTTP Smooth Streaming) stream type.

static Int

Unknown stream type.

Inherited constants
Public methods
Int

Boolean
equals(other: Any?)

Indicates whether some other object is "equal to" this one.

Int

Gets audio underrun count.

Int

Gets content type.

ByteArray

Gets DRM session ID.

Int

Gets DRM type.

LongArray

Gets experiment IDs.

Long

Gets number of local bytes read.

Long

Gets the media duration in milliseconds.

Bundle

Gets metrics-related information that is not supported by dedicated methods.

Long

Gets number of network bytes read.

Long

Gets network transfer duration in milliseconds.

Int

Gets playback type.

String?

Gets player name.

String?

Gets player version.

Int

Gets stream source type.

Int

Gets stream type.

Int

Gets video frames dropped.

Int

Gets video frames played.

Int

String

Unit
writeToParcel(dest: Parcel, flags: Int)

Flatten this object in to a Parcel.

Properties
static Parcelable.Creator<PlaybackMetrics!>

Constants

CONTENT_TYPE_AD

Added in API level 31
static val CONTENT_TYPE_AD: Int

Advertisement contents.

Value: 2

CONTENT_TYPE_MAIN

Added in API level 31
static val CONTENT_TYPE_MAIN: Int

Main contents.

Value: 1

CONTENT_TYPE_OTHER

Added in API level 31
static val CONTENT_TYPE_OTHER: Int

Other contents.

Value: 3

CONTENT_TYPE_UNKNOWN

Added in API level 31
static val CONTENT_TYPE_UNKNOWN: Int

Unknown content type.

Value: 0

DRM_TYPE_CLEARKEY

Added in API level 31
static val DRM_TYPE_CLEARKEY: Int

Clear key DRM type.

Value: 6

DRM_TYPE_NONE

Added in API level 31
static val DRM_TYPE_NONE: Int

DRM is not used.

Value: 0

DRM_TYPE_OTHER

Added in API level 31
static val DRM_TYPE_OTHER: Int

Other DRM type.

Value: 1

DRM_TYPE_PLAY_READY

Added in API level 31
static val DRM_TYPE_PLAY_READY: Int

Play ready DRM type.

Value: 2

DRM_TYPE_WIDEVINE_L1

Added in API level 31
static val DRM_TYPE_WIDEVINE_L1: Int

Widevine L1 DRM type.

Value: 3

DRM_TYPE_WIDEVINE_L3

Added in API level 31
static val DRM_TYPE_WIDEVINE_L3: Int

Widevine L3 DRM type.

Value: 4

DRM_TYPE_WV_L3_FALLBACK

Added in API level 31
static val DRM_TYPE_WV_L3_FALLBACK: Int

Widevine L3 fallback DRM type.

Value: 5

PLAYBACK_TYPE_LIVE

Added in API level 31
static val PLAYBACK_TYPE_LIVE: Int

Live playback type.

Value: 2

PLAYBACK_TYPE_OTHER

Added in API level 31
static val PLAYBACK_TYPE_OTHER: Int

Other playback type.

Value: 3

PLAYBACK_TYPE_UNKNOWN

Added in API level 31
static val PLAYBACK_TYPE_UNKNOWN: Int

Unknown playback type.

Value: 0

PLAYBACK_TYPE_VOD

Added in API level 31
static val PLAYBACK_TYPE_VOD: Int

VOD (Video on Demand) playback type.

Value: 1

STREAM_SOURCE_DEVICE

Added in API level 31
static val STREAM_SOURCE_DEVICE: Int

Stream from device.

Value: 2

STREAM_SOURCE_MIXED

Added in API level 31
static val STREAM_SOURCE_MIXED: Int

Stream from more than one sources.

Value: 3

STREAM_SOURCE_NETWORK

Added in API level 31
static val STREAM_SOURCE_NETWORK: Int

Stream from network.

Value: 1

STREAM_SOURCE_UNKNOWN

Added in API level 31
static val STREAM_SOURCE_UNKNOWN: Int

Unknown stream source.

Value: 0

STREAM_TYPE_DASH

Added in API level 31
static val STREAM_TYPE_DASH: Int

DASH (Dynamic Adaptive Streaming over HTTP) stream type.

Value: 3

STREAM_TYPE_HLS

Added in API level 31
static val STREAM_TYPE_HLS: Int

HLS (HTTP Live Streaming) stream type.

Value: 4

STREAM_TYPE_OTHER

Added in API level 31
static val STREAM_TYPE_OTHER: Int

Other stream type.

Value: 1

STREAM_TYPE_PROGRESSIVE

Added in API level 31
static val STREAM_TYPE_PROGRESSIVE: Int

Progressive stream type.

Value: 2

STREAM_TYPE_SS

Added in API level 31
static val STREAM_TYPE_SS: Int

SS (HTTP Smooth Streaming) stream type.

Value: 5

STREAM_TYPE_UNKNOWN

Added in API level 31
static val STREAM_TYPE_UNKNOWN: Int

Unknown stream type.

Value: 0

Public methods

describeContents

Added in API level 31
fun describeContents(): Int
Return
Int a bitmask indicating the set of special object types marshaled by this Parcelable object instance. Value is either 0 or android.os.Parcelable#CONTENTS_FILE_DESCRIPTOR

equals

Added in API level 31
fun equals(other: Any?): Boolean

Indicates whether some other object is "equal to" this one.

The equals method implements an equivalence relation on non-null object references:

  • It is reflexive: for any non-null reference value x, x.equals(x) should return true.
  • It is symmetric: for any non-null reference values x and y, x.equals(y) should return true if and only if y.equals(x) returns true.
  • It is transitive: for any non-null reference values x, y, and z, if x.equals(y) returns true and y.equals(z) returns true, then x.equals(z) should return true.
  • It is consistent: for any non-null reference values x and y, multiple invocations of x.equals(y) consistently return true or consistently return false, provided no information used in equals comparisons on the objects is modified.
  • For any non-null reference value x, x.equals(null) should return false.

An equivalence relation partitions the elements it operates on into equivalence classes; all the members of an equivalence class are equal to each other. Members of an equivalence class are substitutable for each other, at least for some purposes.

Parameters
obj the reference object with which to compare.
o This value may be null.
Return
Boolean true if this object is the same as the obj argument; false otherwise.

getAudioUnderrunCount

Added in API level 31
fun getAudioUnderrunCount(): Int

Gets audio underrun count.

Return
Int the audio underrun count, or -1 if unknown. Value is between -1 and Integer.MAX_VALUE inclusive

getDrmSessionId

Added in API level 31
fun getDrmSessionId(): ByteArray

Gets DRM session ID.

Return
ByteArray This value cannot be null.

getExperimentIds

Added in API level 31
fun getExperimentIds(): LongArray

Gets experiment IDs.

Return
LongArray This value cannot be null.

getLocalBytesRead

Added in API level 31
fun getLocalBytesRead(): Long

Gets number of local bytes read.

Return
Long Value is -1 or greater

getMediaDurationMillis

Added in API level 31
fun getMediaDurationMillis(): Long

Gets the media duration in milliseconds.

Media duration is the length of the media.

Return
Long the media duration in milliseconds, or -1 if unknown. Value is -1 or greater

getMetricsBundle

Added in API level 31
fun getMetricsBundle(): Bundle

Gets metrics-related information that is not supported by dedicated methods.

It is intended to be used for backwards compatibility by the metrics infrastructure.

Return
Bundle This value cannot be null.

getNetworkBytesRead

Added in API level 31
fun getNetworkBytesRead(): Long

Gets number of network bytes read.

Return
Long the number of network bytes read, or -1 if unknown. Value is -1 or greater

getNetworkTransferDurationMillis

Added in API level 31
fun getNetworkTransferDurationMillis(): Long

Gets network transfer duration in milliseconds.

Total transfer time spent reading from the network in ms. For parallel requests, the overlapping time intervals are counted only once.

Return
Long Value is -1 or greater

getPlayerName

Added in API level 31
fun getPlayerName(): String?

Gets player name.

Return
String? This value may be null.

getPlayerVersion

Added in API level 31
fun getPlayerVersion(): String?

Gets player version.

Return
String? This value may be null.

getVideoFramesDropped

Added in API level 31
fun getVideoFramesDropped(): Int

Gets video frames dropped.

Return
Int the video frames dropped, or -1 if unknown. Value is between -1 and Integer.MAX_VALUE inclusive

getVideoFramesPlayed

Added in API level 31
fun getVideoFramesPlayed(): Int

Gets video frames played.

Return
Int the video frames played, or -1 if unknown. Value is between -1 and Integer.MAX_VALUE inclusive

hashCode

Added in API level 31
fun hashCode(): Int
Return
Int a hash code value for this object.

toString

Added in API level 31
fun toString(): String
Return
String a string representation of the object.

writeToParcel

Added in API level 31
fun writeToParcel(
    dest: Parcel,
    flags: Int
): Unit

Flatten this object in to a Parcel.

Parameters
dest Parcel: This value cannot be null.
flags Int: Additional flags about how the object should be written. May be 0 or PARCELABLE_WRITE_RETURN_VALUE. Value is either 0 or a combination of android.os.Parcelable#PARCELABLE_WRITE_RETURN_VALUE, and android.os.Parcelable.PARCELABLE_ELIDE_DUPLICATES

Properties

CREATOR

Added in API level 31
static val CREATOR: Parcelable.Creator<PlaybackMetrics!>