MediaItemInfo


public final class MediaItemInfo
extends Object implements Parcelable

java.lang.Object
   ↳ android.media.metrics.MediaItemInfo


Represents information about a piece of media (for example, an audio or video file).

Summary

Nested classes

class MediaItemInfo.Builder

Builder for MediaItemInfo

Constants

long DATA_TYPE_AUDIO

The media item includes audio data.

long DATA_TYPE_DEPTH

The media item includes depth (z-distance) information.

long DATA_TYPE_GAIN_MAP

The media item includes gain map information (for example, an Ultra HDR gain map).

long DATA_TYPE_GAPLESS

The media item includes gapless audio metadata.

long DATA_TYPE_HIGH_DYNAMIC_RANGE_VIDEO

The media item includes high dynamic range (HDR) video.

long DATA_TYPE_HIGH_FRAME_RATE

The media item includes high frame rate video data.

long DATA_TYPE_IMAGE

The media item includes image data.

long DATA_TYPE_METADATA

The media item includes static media container metadata (for example, capture frame rate or location information).

long DATA_TYPE_SPATIAL_AUDIO

The media item includes spatial audio data.

long DATA_TYPE_SPEED_SETTING_CUE_POINTS

The media item includes time-dependent speed information (for example, slow motion cue points).

long DATA_TYPE_VIDEO

The media item includes video data.

int SOURCE_TYPE_CAMERA

The media item came directly from camera capture.

int SOURCE_TYPE_EDITING_SESSION

The media item was output by a previous editing session.

int SOURCE_TYPE_GALLERY

The media item came from the device gallery.

int SOURCE_TYPE_GENERATED

The media item was generated by another system.

int SOURCE_TYPE_LOCAL_FILE

The media item is stored on the local device's file system.

int SOURCE_TYPE_REMOTE_FILE

The media item is a remote file (for example, it's loaded from an HTTP server).

int SOURCE_TYPE_REMOTE_LIVE_STREAM

The media item is a remotely-served live stream.

int SOURCE_TYPE_UNSPECIFIED

The media item's source is not known.

int VALUE_UNSPECIFIED

Special value for numerical fields where the value was not specified.

Inherited constants

Fields

public static final Creator<MediaItemInfo> CREATOR

Public methods

int describeContents()

Describe the kinds of special objects contained in this Parcelable instance's marshaled representation.

boolean equals(Object o)

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

int getAudioChannelCount()

Returns the number of audio channels, or VALUE_UNSPECIFIED if not specified.

long getAudioSampleCount()

Returns the number of audio frames in the item, after clipping (if applicable), or VALUE_UNSPECIFIED if not specified.

int getAudioSampleRateHz()

Returns the sample rate of audio, in Hertz, or VALUE_UNSPECIFIED if not specified.

long getClipDurationMillis()

Returns the duration of the clip taken from the media item, in milliseconds, or VALUE_UNSPECIFIED if not specified.

List<String> getCodecNames()

Returns the media codec names for codecs that were used as part of encoding/decoding this media item, or an empty list if not known or not applicable.

String getContainerMimeType()

Returns the MIME type of the media container, or null if unspecified.

long getDataTypes()

Returns the data types that are present in the media item.

long getDurationMillis()

Returns the duration of the media item, in milliseconds, or VALUE_UNSPECIFIED if not specified.

List<String> getSampleMimeTypes()

Returns the MIME types of samples stored in the media container, or an empty list if not known.

int getSourceType()

Returns where the media item came from, or SOURCE_TYPE_UNSPECIFIED if not specified.

int getVideoDataSpace()

Returns the data space for video, as a packed integer.

float getVideoFrameRate()

Returns the average video frame rate, in frames per second, or VALUE_UNSPECIFIED if not specified.

long getVideoSampleCount()

Returns the number of video frames, aftrer clipping (if applicable), or VALUE_UNSPECIFIED if not specified.

Size getVideoSize()

Returns the video size, in pixels, or a Size with width and height set to VALUE_UNSPECIFIED if not specified.

int hashCode()

Returns a hash code value for the object.

String toString()

Returns a string representation of the object.

void writeToParcel(Parcel dest, int flags)

Flatten this object in to a Parcel.

Inherited methods

Constants

DATA_TYPE_AUDIO

public static final long DATA_TYPE_AUDIO

The media item includes audio data.

Constant Value: 4 (0x0000000000000004)

DATA_TYPE_DEPTH

public static final long DATA_TYPE_DEPTH

The media item includes depth (z-distance) information.

Constant Value: 16 (0x0000000000000010)

DATA_TYPE_GAIN_MAP

public static final long DATA_TYPE_GAIN_MAP

The media item includes gain map information (for example, an Ultra HDR gain map).

Constant Value: 32 (0x0000000000000020)

DATA_TYPE_GAPLESS

public static final long DATA_TYPE_GAPLESS

The media item includes gapless audio metadata.

Constant Value: 256 (0x0000000000000100)

DATA_TYPE_HIGH_DYNAMIC_RANGE_VIDEO

public static final long DATA_TYPE_HIGH_DYNAMIC_RANGE_VIDEO

The media item includes high dynamic range (HDR) video.

Constant Value: 1024 (0x0000000000000400)

DATA_TYPE_HIGH_FRAME_RATE

public static final long DATA_TYPE_HIGH_FRAME_RATE

The media item includes high frame rate video data.

Constant Value: 64 (0x0000000000000040)

DATA_TYPE_IMAGE

public static final long DATA_TYPE_IMAGE

The media item includes image data.

Constant Value: 1 (0x0000000000000001)

DATA_TYPE_METADATA

public static final long DATA_TYPE_METADATA

The media item includes static media container metadata (for example, capture frame rate or location information).

Constant Value: 8 (0x0000000000000008)

DATA_TYPE_SPATIAL_AUDIO

public static final long DATA_TYPE_SPATIAL_AUDIO

The media item includes spatial audio data.

Constant Value: 512 (0x0000000000000200)

DATA_TYPE_SPEED_SETTING_CUE_POINTS

public static final long DATA_TYPE_SPEED_SETTING_CUE_POINTS

The media item includes time-dependent speed information (for example, slow motion cue points).

Constant Value: 128 (0x0000000000000080)

DATA_TYPE_VIDEO

public static final long DATA_TYPE_VIDEO

The media item includes video data.

Constant Value: 2 (0x0000000000000002)

SOURCE_TYPE_CAMERA

public static final int SOURCE_TYPE_CAMERA

The media item came directly from camera capture.

Constant Value: 2 (0x00000002)

SOURCE_TYPE_EDITING_SESSION

public static final int SOURCE_TYPE_EDITING_SESSION

The media item was output by a previous editing session.

Constant Value: 3 (0x00000003)

public static final int SOURCE_TYPE_GALLERY

The media item came from the device gallery.

Constant Value: 1 (0x00000001)

SOURCE_TYPE_GENERATED

public static final int SOURCE_TYPE_GENERATED

The media item was generated by another system.

Constant Value: 7 (0x00000007)

SOURCE_TYPE_LOCAL_FILE

public static final int SOURCE_TYPE_LOCAL_FILE

The media item is stored on the local device's file system.

Constant Value: 4 (0x00000004)

SOURCE_TYPE_REMOTE_FILE

public static final int SOURCE_TYPE_REMOTE_FILE

The media item is a remote file (for example, it's loaded from an HTTP server).

Constant Value: 5 (0x00000005)

SOURCE_TYPE_REMOTE_LIVE_STREAM

public static final int SOURCE_TYPE_REMOTE_LIVE_STREAM

The media item is a remotely-served live stream.

Constant Value: 6 (0x00000006)

SOURCE_TYPE_UNSPECIFIED

public static final int SOURCE_TYPE_UNSPECIFIED

The media item's source is not known.

Constant Value: 0 (0x00000000)

VALUE_UNSPECIFIED

public static final int VALUE_UNSPECIFIED

Special value for numerical fields where the value was not specified.

Constant Value: -1 (0xffffffff)

Fields

CREATOR

public static final Creator<MediaItemInfo> CREATOR

Public methods

describeContents

public int describeContents ()

Describe the kinds of special objects contained in this Parcelable instance's marshaled representation. For example, if the object will include a file descriptor in the output of writeToParcel(android.os.Parcel, int), the return value of this method must include the CONTENTS_FILE_DESCRIPTOR bit.

Returns
int a bitmask indicating the set of special object types marshaled by this Parcelable object instance. Value is either 0 or CONTENTS_FILE_DESCRIPTOR

equals

public boolean equals (Object o)

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
o Object: This value may be null.

Returns
boolean true if this object is the same as the obj argument; false otherwise.

getAudioChannelCount

public int getAudioChannelCount ()

Returns the number of audio channels, or VALUE_UNSPECIFIED if not specified.

Returns
int

getAudioSampleCount

public long getAudioSampleCount ()

Returns the number of audio frames in the item, after clipping (if applicable), or VALUE_UNSPECIFIED if not specified.

Returns
long

getAudioSampleRateHz

public int getAudioSampleRateHz ()

Returns the sample rate of audio, in Hertz, or VALUE_UNSPECIFIED if not specified.

Returns
int

getClipDurationMillis

public long getClipDurationMillis ()

Returns the duration of the clip taken from the media item, in milliseconds, or VALUE_UNSPECIFIED if not specified.

Returns
long

getCodecNames

public List<String> getCodecNames ()

Returns the media codec names for codecs that were used as part of encoding/decoding this media item, or an empty list if not known or not applicable.

Returns
List<String> This value cannot be null.

getContainerMimeType

public String getContainerMimeType ()

Returns the MIME type of the media container, or null if unspecified.

Returns
String

getDataTypes

public long getDataTypes ()

Returns the data types that are present in the media item.

Returns
long Value is either 0 or a combination of DATA_TYPE_IMAGE, DATA_TYPE_VIDEO, DATA_TYPE_AUDIO, DATA_TYPE_METADATA, DATA_TYPE_DEPTH, DATA_TYPE_GAIN_MAP, DATA_TYPE_HIGH_FRAME_RATE, DATA_TYPE_SPEED_SETTING_CUE_POINTS, DATA_TYPE_GAPLESS, DATA_TYPE_SPATIAL_AUDIO, and DATA_TYPE_HIGH_DYNAMIC_RANGE_VIDEO

getDurationMillis

public long getDurationMillis ()

Returns the duration of the media item, in milliseconds, or VALUE_UNSPECIFIED if not specified.

Returns
long

getSampleMimeTypes

public List<String> getSampleMimeTypes ()

Returns the MIME types of samples stored in the media container, or an empty list if not known.

Returns
List<String> This value cannot be null.

getVideoDataSpace

public int getVideoDataSpace ()

Returns the data space for video, as a packed integer.

Returns
int

getVideoFrameRate

public float getVideoFrameRate ()

Returns the average video frame rate, in frames per second, or VALUE_UNSPECIFIED if not specified.

Returns
float

getVideoSampleCount

public long getVideoSampleCount ()

Returns the number of video frames, aftrer clipping (if applicable), or VALUE_UNSPECIFIED if not specified.

Returns
long

getVideoSize

public Size getVideoSize ()

Returns the video size, in pixels, or a Size with width and height set to VALUE_UNSPECIFIED if not specified.

Returns
Size This value cannot be null.

hashCode

public int hashCode ()

Returns a hash code value for the object. This method is supported for the benefit of hash tables such as those provided by HashMap.

The general contract of hashCode is:

  • Whenever it is invoked on the same object more than once during an execution of a Java application, the hashCode method must consistently return the same integer, provided no information used in equals comparisons on the object is modified. This integer need not remain consistent from one execution of an application to another execution of the same application.
  • If two objects are equal according to the equals method, then calling the hashCode method on each of the two objects must produce the same integer result.
  • It is not required that if two objects are unequal according to the equals method, then calling the hashCode method on each of the two objects must produce distinct integer results. However, the programmer should be aware that producing distinct integer results for unequal objects may improve the performance of hash tables.

Returns
int a hash code value for this object.

toString

public String toString ()

Returns a string representation of the object.

Returns
String This value cannot be null.

writeToParcel

public void writeToParcel (Parcel dest, 
                int flags)

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.PARCELABLE_WRITE_RETURN_VALUE. Value is either 0 or a combination of Parcelable.PARCELABLE_WRITE_RETURN_VALUE, and android.os.Parcelable.PARCELABLE_ELIDE_DUPLICATES