Class Cue
- java.lang.Object
-
- com.google.android.exoplayer2.text.Cue
-
- All Implemented Interfaces:
Bundleable
public final class Cue extends Object implements Bundleable
Contains information about a specific cue, including textual content and formatting data.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interface
Cue.AnchorType
The type of anchor, which may be unset.static class
Cue.Builder
A builder forCue
objects.static interface
Cue.LineType
The type of line, which may be unset.static interface
Cue.TextSizeType
The type of default text size for this cue, which may be unset.static interface
Cue.VerticalType
The type of vertical layout for this cue, which may be unset (i.e.-
Nested classes/interfaces inherited from interface com.google.android.exoplayer2.Bundleable
Bundleable.Creator<T extends Bundleable>
-
-
Field Summary
Fields Modifier and Type Field Description static int
ANCHOR_TYPE_END
Anchors the right (for horizontal positions) or bottom (for vertical positions) edge of the cue box.static int
ANCHOR_TYPE_MIDDLE
Anchors the middle of the cue box.static int
ANCHOR_TYPE_START
Anchors the left (for horizontal positions) or top (for vertical positions) edge of the cue box.Bitmap
bitmap
The cue image, or null if this is a text cue.float
bitmapHeight
The bitmap height as a fraction of the of the viewport size, orDIMEN_UNSET
if the bitmap should be displayed at its natural height given the bitmap dimensions and the specifiedsize
.static Bundleable.Creator<Cue>
CREATOR
static float
DIMEN_UNSET
An unset position, width or size.static Cue
EMPTY
The empty cue.float
line
The position of the cue box within the viewport in the direction orthogonal to the writing direction (determined byverticalType
), orDIMEN_UNSET
.static int
LINE_TYPE_FRACTION
static int
LINE_TYPE_NUMBER
@com.google.android.exoplayer2.text.Cue.AnchorType int
lineAnchor
@com.google.android.exoplayer2.text.Cue.LineType int
lineType
The type of theline
value.Layout.Alignment
multiRowAlignment
The alignment of multiple lines of text relative to the longest line, or null if the alignment is undefined.float
position
The fractional position of thepositionAnchor
of the cue box within the viewport in the direction orthogonal toline
, orDIMEN_UNSET
.@com.google.android.exoplayer2.text.Cue.AnchorType int
positionAnchor
The cue box anchor positioned byposition
.float
shearDegrees
The shear angle in degrees to be applied to this Cue, expressed in graphics coordinates.float
size
The size of the cue box in the writing direction specified as a fraction of the viewport size in that direction, orDIMEN_UNSET
.CharSequence
text
The cue text, or null if this is an image cue.static int
TEXT_SIZE_TYPE_ABSOLUTE
Text size is measured in number of pixels.static int
TEXT_SIZE_TYPE_FRACTIONAL
Text size is measured as a fraction of the viewport size minus the view padding.static int
TEXT_SIZE_TYPE_FRACTIONAL_IGNORE_PADDING
Text size is measured as a fraction of the viewport size, ignoring the view paddingLayout.Alignment
textAlignment
The alignment of the cue text within the cue box, or null if the alignment is undefined.float
textSize
The default text size for this cue's text, orDIMEN_UNSET
if this cue has no default text size.@com.google.android.exoplayer2.text.Cue.TextSizeType int
textSizeType
The default text size type for this cue's text, orTYPE_UNSET
if this cue has no default text size.static int
TYPE_UNSET
An unset anchor, line, text size or vertical type value.static int
VERTICAL_TYPE_LR
Vertical left-to-right (e.g.static int
VERTICAL_TYPE_RL
Vertical right-to-left (e.g.@com.google.android.exoplayer2.text.Cue.VerticalType int
verticalType
The vertical formatting of this Cue, orTYPE_UNSET
if the cue has no vertical setting (and so should be horizontal).int
windowColor
The fill color of the window.boolean
windowColorSet
Specifies whether or not thewindowColor
property is set.
-
Constructor Summary
Constructors Constructor Description Cue(CharSequence text)
Deprecated.UseCue.Builder
.Cue(CharSequence text, Layout.Alignment textAlignment, float line, @com.google.android.exoplayer2.text.Cue.LineType int lineType, @com.google.android.exoplayer2.text.Cue.AnchorType int lineAnchor, float position, @com.google.android.exoplayer2.text.Cue.AnchorType int positionAnchor, float size)
Deprecated.UseCue.Builder
.Cue(CharSequence text, Layout.Alignment textAlignment, float line, @com.google.android.exoplayer2.text.Cue.LineType int lineType, @com.google.android.exoplayer2.text.Cue.AnchorType int lineAnchor, float position, @com.google.android.exoplayer2.text.Cue.AnchorType int positionAnchor, float size, @com.google.android.exoplayer2.text.Cue.TextSizeType int textSizeType, float textSize)
Deprecated.UseCue.Builder
.Cue(CharSequence text, Layout.Alignment textAlignment, float line, @com.google.android.exoplayer2.text.Cue.LineType int lineType, @com.google.android.exoplayer2.text.Cue.AnchorType int lineAnchor, float position, @com.google.android.exoplayer2.text.Cue.AnchorType int positionAnchor, float size, boolean windowColorSet, int windowColor)
Deprecated.UseCue.Builder
.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Cue.Builder
buildUpon()
Returns a newCue.Builder
initialized with the same values as this Cue.boolean
equals(Object obj)
int
hashCode()
Bundle
toBundle()
Returns aBundle
representing the information stored in this object.
-
-
-
Field Detail
-
EMPTY
public static final Cue EMPTY
The empty cue.
-
DIMEN_UNSET
public static final float DIMEN_UNSET
An unset position, width or size.- See Also:
- Constant Field Values
-
TYPE_UNSET
public static final int TYPE_UNSET
An unset anchor, line, text size or vertical type value.- See Also:
- Constant Field Values
-
ANCHOR_TYPE_START
public static final int ANCHOR_TYPE_START
Anchors the left (for horizontal positions) or top (for vertical positions) edge of the cue box.- See Also:
- Constant Field Values
-
ANCHOR_TYPE_MIDDLE
public static final int ANCHOR_TYPE_MIDDLE
Anchors the middle of the cue box.- See Also:
- Constant Field Values
-
ANCHOR_TYPE_END
public static final int ANCHOR_TYPE_END
Anchors the right (for horizontal positions) or bottom (for vertical positions) edge of the cue box.- See Also:
- Constant Field Values
-
LINE_TYPE_FRACTION
public static final int LINE_TYPE_FRACTION
- See Also:
- Constant Field Values
-
LINE_TYPE_NUMBER
public static final int LINE_TYPE_NUMBER
- See Also:
- Constant Field Values
-
TEXT_SIZE_TYPE_FRACTIONAL
public static final int TEXT_SIZE_TYPE_FRACTIONAL
Text size is measured as a fraction of the viewport size minus the view padding.- See Also:
- Constant Field Values
-
TEXT_SIZE_TYPE_FRACTIONAL_IGNORE_PADDING
public static final int TEXT_SIZE_TYPE_FRACTIONAL_IGNORE_PADDING
Text size is measured as a fraction of the viewport size, ignoring the view padding- See Also:
- Constant Field Values
-
TEXT_SIZE_TYPE_ABSOLUTE
public static final int TEXT_SIZE_TYPE_ABSOLUTE
Text size is measured in number of pixels.- See Also:
- Constant Field Values
-
VERTICAL_TYPE_RL
public static final int VERTICAL_TYPE_RL
Vertical right-to-left (e.g. for Japanese).- See Also:
- Constant Field Values
-
VERTICAL_TYPE_LR
public static final int VERTICAL_TYPE_LR
Vertical left-to-right (e.g. for Mongolian).- See Also:
- Constant Field Values
-
text
@Nullable public final CharSequence text
The cue text, or null if this is an image cue. Note theCharSequence
may be decorated with styling spans.
-
textAlignment
@Nullable public final Layout.Alignment textAlignment
The alignment of the cue text within the cue box, or null if the alignment is undefined.
-
multiRowAlignment
@Nullable public final Layout.Alignment multiRowAlignment
The alignment of multiple lines of text relative to the longest line, or null if the alignment is undefined.
-
bitmap
@Nullable public final Bitmap bitmap
The cue image, or null if this is a text cue.
-
line
public final float line
The position of the cue box within the viewport in the direction orthogonal to the writing direction (determined byverticalType
), orDIMEN_UNSET
. When set, the interpretation of the value depends on the value oflineType
.The measurement direction depends on
verticalType
:- For
TYPE_UNSET
(i.e. horizontal), this is the vertical position relative to the top of the viewport. - For
VERTICAL_TYPE_LR
this is the horizontal position relative to the left of the viewport. - For
VERTICAL_TYPE_RL
this is the horizontal position relative to the right of the viewport.
- For
-
lineType
@LineType public final @com.google.android.exoplayer2.text.Cue.LineType int lineType
The type of theline
value.LINE_TYPE_FRACTION
indicates thatline
is a fractional position within the viewport (measured to the part of the cue box determined bylineAnchor
).LINE_TYPE_NUMBER
indicates thatline
is a viewport line number. The viewport is divided into lines (each equal in size to the first line of the cue box). The cue box is positioned to align with the viewport lines as follows:lineAnchor
) is ignored.- When
line
is greater than or equal to 0 the first line in the cue box is aligned with a viewport line, with 0 meaning the first line of the viewport. - When
line
is negative the last line in the cue box is aligned with a viewport line, with -1 meaning the last line of the viewport. - For horizontal text the start and end of the viewport are the top and bottom respectively.
-
lineAnchor
@AnchorType public final @com.google.android.exoplayer2.text.Cue.AnchorType int lineAnchor
The cue box anchor positioned byline
whenlineType
isLINE_TYPE_FRACTION
.One of:
For the normal case of horizontal text,
ANCHOR_TYPE_START
,ANCHOR_TYPE_MIDDLE
andANCHOR_TYPE_END
correspond to the top, middle and bottom of the cue box respectively.
-
position
public final float position
The fractional position of thepositionAnchor
of the cue box within the viewport in the direction orthogonal toline
, orDIMEN_UNSET
.The measurement direction depends on
verticalType
.- For
TYPE_UNSET
(i.e. horizontal), this is the horizontal position relative to the left of the viewport. Note that positioning is relative to the left of the viewport even in the case of right-to-left text. - For
VERTICAL_TYPE_LR
andVERTICAL_TYPE_RL
(i.e. vertical), this is the vertical position relative to the top of the viewport.
- For
-
positionAnchor
@AnchorType public final @com.google.android.exoplayer2.text.Cue.AnchorType int positionAnchor
The cue box anchor positioned byposition
. One ofANCHOR_TYPE_START
,ANCHOR_TYPE_MIDDLE
,ANCHOR_TYPE_END
andTYPE_UNSET
.For the normal case of horizontal text,
ANCHOR_TYPE_START
,ANCHOR_TYPE_MIDDLE
andANCHOR_TYPE_END
correspond to the left, middle and right of the cue box respectively.
-
size
public final float size
The size of the cue box in the writing direction specified as a fraction of the viewport size in that direction, orDIMEN_UNSET
.
-
bitmapHeight
public final float bitmapHeight
The bitmap height as a fraction of the of the viewport size, orDIMEN_UNSET
if the bitmap should be displayed at its natural height given the bitmap dimensions and the specifiedsize
.
-
windowColorSet
public final boolean windowColorSet
Specifies whether or not thewindowColor
property is set.
-
windowColor
public final int windowColor
The fill color of the window.
-
textSizeType
@TextSizeType public final @com.google.android.exoplayer2.text.Cue.TextSizeType int textSizeType
The default text size type for this cue's text, orTYPE_UNSET
if this cue has no default text size.
-
textSize
public final float textSize
The default text size for this cue's text, orDIMEN_UNSET
if this cue has no default text size.
-
verticalType
@VerticalType public final @com.google.android.exoplayer2.text.Cue.VerticalType int verticalType
The vertical formatting of this Cue, orTYPE_UNSET
if the cue has no vertical setting (and so should be horizontal).
-
shearDegrees
public final float shearDegrees
The shear angle in degrees to be applied to this Cue, expressed in graphics coordinates. This results in a skew transform for the block along the inline progression axis.
-
CREATOR
public static final Bundleable.Creator<Cue> CREATOR
-
-
Constructor Detail
-
Cue
@Deprecated public Cue(CharSequence text)
Deprecated.UseCue.Builder
.Creates a text cue whosetextAlignment
is null, whose type parameters are set toTYPE_UNSET
and whose dimension parameters are set toDIMEN_UNSET
.- Parameters:
text
- Seetext
.
-
Cue
@Deprecated public Cue(CharSequence text, @Nullable Layout.Alignment textAlignment, float line, @LineType @com.google.android.exoplayer2.text.Cue.LineType int lineType, @AnchorType @com.google.android.exoplayer2.text.Cue.AnchorType int lineAnchor, float position, @AnchorType @com.google.android.exoplayer2.text.Cue.AnchorType int positionAnchor, float size)
Deprecated.UseCue.Builder
.Creates a text cue.- Parameters:
text
- Seetext
.textAlignment
- SeetextAlignment
.line
- Seeline
.lineType
- SeelineType
.lineAnchor
- SeelineAnchor
.position
- Seeposition
.positionAnchor
- SeepositionAnchor
.size
- Seesize
.
-
Cue
@Deprecated public Cue(CharSequence text, @Nullable Layout.Alignment textAlignment, float line, @LineType @com.google.android.exoplayer2.text.Cue.LineType int lineType, @AnchorType @com.google.android.exoplayer2.text.Cue.AnchorType int lineAnchor, float position, @AnchorType @com.google.android.exoplayer2.text.Cue.AnchorType int positionAnchor, float size, @TextSizeType @com.google.android.exoplayer2.text.Cue.TextSizeType int textSizeType, float textSize)
Deprecated.UseCue.Builder
.Creates a text cue.- Parameters:
text
- Seetext
.textAlignment
- SeetextAlignment
.line
- Seeline
.lineType
- SeelineType
.lineAnchor
- SeelineAnchor
.position
- Seeposition
.positionAnchor
- SeepositionAnchor
.size
- Seesize
.textSizeType
- SeetextSizeType
.textSize
- SeetextSize
.
-
Cue
@Deprecated public Cue(CharSequence text, @Nullable Layout.Alignment textAlignment, float line, @LineType @com.google.android.exoplayer2.text.Cue.LineType int lineType, @AnchorType @com.google.android.exoplayer2.text.Cue.AnchorType int lineAnchor, float position, @AnchorType @com.google.android.exoplayer2.text.Cue.AnchorType int positionAnchor, float size, boolean windowColorSet, int windowColor)
Deprecated.UseCue.Builder
.Creates a text cue.- Parameters:
text
- Seetext
.textAlignment
- SeetextAlignment
.line
- Seeline
.lineType
- SeelineType
.lineAnchor
- SeelineAnchor
.position
- Seeposition
.positionAnchor
- SeepositionAnchor
.size
- Seesize
.windowColorSet
- SeewindowColorSet
.windowColor
- SeewindowColor
.
-
-
Method Detail
-
buildUpon
public Cue.Builder buildUpon()
Returns a newCue.Builder
initialized with the same values as this Cue.
-
toBundle
public Bundle toBundle()
Description copied from interface:Bundleable
Returns aBundle
representing the information stored in this object.- Specified by:
toBundle
in interfaceBundleable
-
-