PlayerStreamInfo

data class PlayerStreamInfo(val index: Int, val kind: TrackKind, val codec: String, val language: String? = null, val title: String? = null, val isDefault: Boolean = false, val isForced: Boolean = false, val isAccessibility: Boolean = false, val bitrate: Long? = null, val startTime: Pts? = null, val videoSize: VideoSize? = null, val rotationDegrees: Int = 0, val frameRate: Double? = null, val colorSpace: ColorSpaceInfo? = null, val isCoverArt: Boolean = false, val isSparse: Boolean = false, val sampleRate: Int? = null, val channels: Int? = null, val vp9: Vp9CodecConfiguration? = null, val codecExtradata: ByteArray? = null, val metadata: Map<String, String> = emptyMap(), val fieldOrder: FieldOrder = FieldOrder.Unknown, val hdr: HdrStaticMetadata? = null, val mirrored: Boolean = false, val dolbyVision: DolbyVisionInfo? = null, val isCommentary: Boolean = false, val crop: PictureCrop? = null)

What the container declares about one stream.

Constructors

Link copied to clipboard
constructor(index: Int, kind: TrackKind, codec: String, language: String? = null, title: String? = null, isDefault: Boolean = false, isForced: Boolean = false, isAccessibility: Boolean = false, bitrate: Long? = null, startTime: Pts? = null, videoSize: VideoSize? = null, rotationDegrees: Int = 0, frameRate: Double? = null, colorSpace: ColorSpaceInfo? = null, isCoverArt: Boolean = false, isSparse: Boolean = false, sampleRate: Int? = null, channels: Int? = null, vp9: Vp9CodecConfiguration? = null, codecExtradata: ByteArray? = null, metadata: Map<String, String> = emptyMap(), fieldOrder: FieldOrder = FieldOrder.Unknown, hdr: HdrStaticMetadata? = null, mirrored: Boolean = false, dolbyVision: DolbyVisionInfo? = null, isCommentary: Boolean = false, crop: PictureCrop? = null)

Properties

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

An owned copy of the container's codec configuration record, such as avcC or hvcC. Null when the stream has no separate configuration record.

Link copied to clipboard
Link copied to clipboard

The edges of each stored picture that the container says are not part of the image, or null when it says none (#497). videoSize stays the stored size; visibleVideoSize is what is shown. See PictureCrop.

Link copied to clipboard

The Dolby Vision configuration the container declares, or null when the stream is not Dolby Vision. When DolbyVisionInfo.baseLayerPlaysAlone is false, a frame means nothing until it is composed with its RPU, so a decoder whose frames do not carry the RPU cannot play the stream.

Link copied to clipboard

Whether a video stream is interlaced, and which field comes first. FieldOrder.Unknown on most files, because most containers do not say, and never a synonym for progressive.

Link copied to clipboard

The container's declared frame rate. Used to snap measured durations.

Link copied to clipboard

The stream's static HDR metadata, or null when the container and the codec say none.

Link copied to clipboard
val index: Int
Link copied to clipboard
Link copied to clipboard

The container marks this stream as commentary, such as a director talking over the film. Never chosen in place of the main mix for its channel count (#466).

Link copied to clipboard

A single still image, for example album art. Never the sync master.

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

Frames arrive rarely and irregularly, for example a slideshow. Not A/V synced.

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

The stream's own tags, as the container wrote them: language, title, handler_name and whatever else it carried. Reported, never repaired.

Link copied to clipboard

True when the container's display matrix also mirrors the picture. See VideoFrame.mirrored for the order in which a renderer mirrors and turns it.

Link copied to clipboard

Clockwise rotation the container asks a renderer to apply, in degrees.

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

The size of the picture as it is shown: videoSize with crop's edges taken away, or videoSize itself when the crop is absent or does not fit it.

Link copied to clipboard

Typed VP9 sequence metadata. Present only for VP9; unknown declarations remain null inside.

Functions

Link copied to clipboard
open operator override fun equals(other: Any?): Boolean

By CONTENT, including codecExtradata.

Link copied to clipboard
open override fun hashCode(): Int