TvTrackInfo.Builder

public static final class TvTrackInfo.Builder
extends Object

java.lang.Object
   ↳ android.media.tv.TvTrackInfo.Builder


A builder class for creating TvTrackInfo objects.

Summary

Public constructors

Builder(int type, String id)

Create a Builder.

Public methods

TvTrackInfo build()

Creates a TvTrackInfo instance with the specified fields.

TvTrackInfo.Builder setAudioChannelCount(int audioChannelCount)

Sets the audio channel count.

TvTrackInfo.Builder setAudioDescription(boolean audioDescription)

Sets the audio description attribute of the audio.

TvTrackInfo.Builder setAudioSampleRate(int audioSampleRate)

Sets the audio sample rate, in the unit of Hz.

TvTrackInfo.Builder setDescription(CharSequence description)

Sets a user readable description for the current track.

TvTrackInfo.Builder setEncoding(String encoding)

Sets the encoding of the track.

TvTrackInfo.Builder setEncrypted(boolean encrypted)

Sets the encryption status of the track.

TvTrackInfo.Builder setExtra(Bundle extra)

Sets the extra information about the current track.

TvTrackInfo.Builder setHardOfHearing(boolean hardOfHearing)

Sets the hard of hearing attribute of the track.

TvTrackInfo.Builder setLanguage(String language)

Sets the language information of the current track.

TvTrackInfo.Builder setSpokenSubtitle(boolean spokenSubtitle)

Sets the spoken subtitle attribute of the audio.

TvTrackInfo.Builder setVideoActiveFormatDescription(byte videoActiveFormatDescription)

Sets the Active Format Description (AFD) code of the video.

TvTrackInfo.Builder setVideoFrameRate(float videoFrameRate)

Sets the frame rate of the video, in the unit fps (frames per rate).

TvTrackInfo.Builder setVideoHeight(int videoHeight)

Sets the height of the video, in the unit of pixels.

TvTrackInfo.Builder setVideoPixelAspectRatio(float videoPixelAspectRatio)

Sets the pixel aspect ratio (the ratio of a pixel's width to its height) of the video.

TvTrackInfo.Builder setVideoWidth(int videoWidth)

Sets the width of the video, in the unit of pixels.

Inherited methods

Public constructors

Builder

Added in API level 21
public Builder (int type, 
                String id)

Create a Builder. Any field that should be included in the TvTrackInfo must be added.

Parameters
type int: The type of the track. Value is TvTrackInfo.TYPE_AUDIO, TvTrackInfo.TYPE_VIDEO, or TvTrackInfo.TYPE_SUBTITLE

id String: The ID of the track that uniquely identifies the current track among all the other tracks in the same TV program. This value cannot be null.

Throws
IllegalArgumentException if the type is not any of TvTrackInfo.TYPE_AUDIO, TvTrackInfo.TYPE_VIDEO and TvTrackInfo.TYPE_SUBTITLE

Public methods

build

Added in API level 21
public TvTrackInfo build ()

Creates a TvTrackInfo instance with the specified fields.

Returns
TvTrackInfo The new TvTrackInfo instance This value cannot be null.

setAudioChannelCount

Added in API level 21
public TvTrackInfo.Builder setAudioChannelCount (int audioChannelCount)

Sets the audio channel count. Valid only for TvTrackInfo.TYPE_AUDIO tracks.

Parameters
audioChannelCount int: The audio channel count.

Returns
TvTrackInfo.Builder This value cannot be null.

Throws
IllegalStateException if not called on an audio track

setAudioDescription

Added in API level 30
public TvTrackInfo.Builder setAudioDescription (boolean audioDescription)

Sets the audio description attribute of the audio. Valid only for TvTrackInfo.TYPE_AUDIO tracks.

For example of broadcast, audio description information may be referred to broadcast standard (e.g. ISO 639 Language Descriptor of ISO/IEC 13818-1, Supplementary Audio Language Descriptor, AC-3 Descriptor, Enhanced AC-3 Descriptor, AAC Descriptor of ETSI EN 300 468).

Parameters
audioDescription boolean: The audio description attribute of the audio.

Returns
TvTrackInfo.Builder This value cannot be null.

Throws
IllegalStateException if not called on an audio track

setAudioSampleRate

Added in API level 21
public TvTrackInfo.Builder setAudioSampleRate (int audioSampleRate)

Sets the audio sample rate, in the unit of Hz. Valid only for TvTrackInfo.TYPE_AUDIO tracks.

Parameters
audioSampleRate int: The audio sample rate.

Returns
TvTrackInfo.Builder This value cannot be null.

Throws
IllegalStateException if not called on an audio track

setDescription

Added in API level 23
public TvTrackInfo.Builder setDescription (CharSequence description)

Sets a user readable description for the current track.

Parameters
description CharSequence: The user readable description. This value cannot be null.

Returns
TvTrackInfo.Builder This value cannot be null.

setEncoding

Added in API level 30
public TvTrackInfo.Builder setEncoding (String encoding)

Sets the encoding of the track.

For example of broadcast, codec information may be referred to broadcast standard (e.g. Component Descriptor of ETSI EN 300 468). In the case that track type is subtitle, mime type could be defined in broadcast standard (e.g. "text/dvb.subtitle" or "text/dvb.teletext" in ETSI TS 102 812 V1.3.1 section 7.6).

Parameters
encoding String: The encoding of the track in the form of mime type. This value may be null.

Returns
TvTrackInfo.Builder This value cannot be null.

setEncrypted

Added in API level 30
public TvTrackInfo.Builder setEncrypted (boolean encrypted)

Sets the encryption status of the track.

For example: ISO/IEC 13818-1 defines a CA descriptor that can be used to determine the encryption status of some broadcast streams.

Parameters
encrypted boolean: The encryption status of the track.

Returns
TvTrackInfo.Builder This value cannot be null.

setExtra

Added in API level 21
public TvTrackInfo.Builder setExtra (Bundle extra)

Sets the extra information about the current track.

Parameters
extra Bundle: The extra information. This value cannot be null.

Returns
TvTrackInfo.Builder This value cannot be null.

setHardOfHearing

Added in API level 30
public TvTrackInfo.Builder setHardOfHearing (boolean hardOfHearing)

Sets the hard of hearing attribute of the track. Valid only for TvTrackInfo.TYPE_AUDIO and TvTrackInfo.TYPE_SUBTITLE tracks.

For example of broadcast, hard of hearing information may be referred to broadcast standard (e.g. ISO 639 Language Descriptor of ISO/IEC 13818-1, Supplementary Audio Language Descriptor, AC-3 Descriptor, Enhanced AC-3 Descriptor, AAC Descriptor of ETSI EN 300 468).

Parameters
hardOfHearing boolean: The hard of hearing attribute of the track.

Returns
TvTrackInfo.Builder This value cannot be null.

Throws
IllegalStateException if not called on an audio track or a subtitle track

setLanguage

Added in API level 21
public TvTrackInfo.Builder setLanguage (String language)

Sets the language information of the current track.

Parameters
language String: The language string encoded by either ISO 639-1 or ISO 639-2/T. This value cannot be null.

Returns
TvTrackInfo.Builder This value cannot be null.

setSpokenSubtitle

Added in API level 30
public TvTrackInfo.Builder setSpokenSubtitle (boolean spokenSubtitle)

Sets the spoken subtitle attribute of the audio. Valid only for TvTrackInfo.TYPE_AUDIO tracks.

For example of broadcast, spoken subtitle information may be referred to broadcast standard (e.g. Supplementary Audio Language Descriptor of ETSI EN 300 468).

Parameters
spokenSubtitle boolean: The spoken subtitle attribute of the audio.

Returns
TvTrackInfo.Builder This value cannot be null.

Throws
IllegalStateException if not called on an audio track

setVideoActiveFormatDescription

Added in API level 24
public TvTrackInfo.Builder setVideoActiveFormatDescription (byte videoActiveFormatDescription)

Sets the Active Format Description (AFD) code of the video. Valid only for TvTrackInfo.TYPE_VIDEO tracks.

This is needed for applications to be able to scale the video properly based on the information about where in the coded picture the active video is. The complete list of values are defined in ETSI TS 101 154 V1.7.1 Annex B, ATSC A/53 Part 4 and SMPTE 2016-1-2007.

Parameters
videoActiveFormatDescription byte: The AFD code of the video.

Returns
TvTrackInfo.Builder This value cannot be null.

Throws
IllegalStateException if not called on a video track

setVideoFrameRate

Added in API level 21
public TvTrackInfo.Builder setVideoFrameRate (float videoFrameRate)

Sets the frame rate of the video, in the unit fps (frames per rate). Valid only for TvTrackInfo.TYPE_VIDEO tracks.

Parameters
videoFrameRate float: The frame rate of the video.

Returns
TvTrackInfo.Builder This value cannot be null.

Throws
IllegalStateException if not called on a video track

setVideoHeight

Added in API level 21
public TvTrackInfo.Builder setVideoHeight (int videoHeight)

Sets the height of the video, in the unit of pixels. Valid only for TvTrackInfo.TYPE_VIDEO tracks.

Parameters
videoHeight int: The height of the video.

Returns
TvTrackInfo.Builder This value cannot be null.

Throws
IllegalStateException if not called on a video track

setVideoPixelAspectRatio

Added in API level 23
public TvTrackInfo.Builder setVideoPixelAspectRatio (float videoPixelAspectRatio)

Sets the pixel aspect ratio (the ratio of a pixel's width to its height) of the video. Valid only for TvTrackInfo.TYPE_VIDEO tracks.

This is needed for applications to be able to scale the video properly for some video formats such as 720x576 4:3 and 720x576 16:9 where pixels are not square. By default, applications assume the value of 1.0 (square pixels), so it is not necessary to set the pixel aspect ratio for most video formats.

Parameters
videoPixelAspectRatio float: The pixel aspect ratio of the video.

Returns
TvTrackInfo.Builder This value cannot be null.

Throws
IllegalStateException if not called on a video track

setVideoWidth

Added in API level 21
public TvTrackInfo.Builder setVideoWidth (int videoWidth)

Sets the width of the video, in the unit of pixels. Valid only for TvTrackInfo.TYPE_VIDEO tracks.

Parameters
videoWidth int: The width of the video.

Returns
TvTrackInfo.Builder This value cannot be null.

Throws
IllegalStateException if not called on a video track