Cea708Decoder$CueBuilder.smali
.class final Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;
.super Ljava/lang/Object;
.source "Cea708Decoder.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/google/android/exoplayer2/text/cea/Cea708Decoder;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x1a
name = "CueBuilder"
.end annotation
# static fields
.field private static final BORDER_AND_EDGE_TYPE_NONE:I = 0x0
.field private static final BORDER_AND_EDGE_TYPE_UNIFORM:I = 0x3
.field public static final COLOR_SOLID_BLACK:I
.field public static final COLOR_SOLID_WHITE:I
.field public static final COLOR_TRANSPARENT:I
.field private static final DEFAULT_PRIORITY:I = 0x4
.field private static final DIRECTION_BOTTOM_TO_TOP:I = 0x3
.field private static final DIRECTION_LEFT_TO_RIGHT:I = 0x0
.field private static final DIRECTION_RIGHT_TO_LEFT:I = 0x1
.field private static final DIRECTION_TOP_TO_BOTTOM:I = 0x2
.field private static final HORIZONTAL_SIZE:I = 0xd1
.field private static final JUSTIFICATION_CENTER:I = 0x2
.field private static final JUSTIFICATION_FULL:I = 0x3
.field private static final JUSTIFICATION_LEFT:I = 0x0
.field private static final JUSTIFICATION_RIGHT:I = 0x1
.field private static final MAXIMUM_ROW_COUNT:I = 0xf
.field private static final PEN_FONT_STYLE_DEFAULT:I = 0x0
.field private static final PEN_FONT_STYLE_MONOSPACED_WITHOUT_SERIFS:I = 0x3
.field private static final PEN_FONT_STYLE_MONOSPACED_WITH_SERIFS:I = 0x1
.field private static final PEN_FONT_STYLE_PROPORTIONALLY_SPACED_WITHOUT_SERIFS:I = 0x4
.field private static final PEN_FONT_STYLE_PROPORTIONALLY_SPACED_WITH_SERIFS:I = 0x2
.field private static final PEN_OFFSET_NORMAL:I = 0x1
.field private static final PEN_SIZE_STANDARD:I = 0x1
.field private static final PEN_STYLE_BACKGROUND:[I
.field private static final PEN_STYLE_EDGE_TYPE:[I
.field private static final PEN_STYLE_FONT_STYLE:[I
.field private static final RELATIVE_CUE_SIZE:I = 0x63
.field private static final VERTICAL_SIZE:I = 0x4a
.field private static final WINDOW_STYLE_FILL:[I
.field private static final WINDOW_STYLE_JUSTIFICATION:[I
.field private static final WINDOW_STYLE_PRINT_DIRECTION:[I
.field private static final WINDOW_STYLE_SCROLL_DIRECTION:[I
.field private static final WINDOW_STYLE_WORD_WRAP:[Z
# instance fields
.field private anchorId:I
.field private backgroundColor:I
.field private backgroundColorStartPosition:I
.field private final captionStringBuilder:Landroid/text/SpannableStringBuilder;
.field private defined:Z
.field private foregroundColor:I
.field private foregroundColorStartPosition:I
.field private horizontalAnchor:I
.field private italicsStartPosition:I
.field private justification:I
.field private penStyleId:I
.field private priority:I
.field private relativePositioning:Z
.field private final rolledUpCaptions:Ljava/util/List;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/List<",
"Landroid/text/SpannableString;",
">;"
}
.end annotation
.end field
.field private rowCount:I
.field private rowLock:Z
.field private underlineStartPosition:I
.field private verticalAnchor:I
.field private visible:Z
.field private windowFillColor:I
.field private windowStyleId:I
# direct methods
.method static constructor <clinit>()V
.registers 11
const/4 v0, 0x2
const/4 v1, 0x0
.line 784
invoke-static {v0, v0, v0, v1}, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->getArgbColorFromCeaColor(IIII)I
move-result v2
sput v2, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->COLOR_SOLID_WHITE:I
.line 785
invoke-static {v1, v1, v1, v1}, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->getArgbColorFromCeaColor(IIII)I
move-result v2
sput v2, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->COLOR_SOLID_BLACK:I
const/4 v2, 0x3
.line 786
invoke-static {v1, v1, v1, v2}, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->getArgbColorFromCeaColor(IIII)I
move-result v3
sput v3, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->COLOR_TRANSPARENT:I
const/4 v4, 0x7
new-array v5, v4, [I
.line 802
fill-array-data v5, :array_6c
sput-object v5, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->WINDOW_STYLE_JUSTIFICATION:[I
new-array v5, v4, [I
.line 807
fill-array-data v5, :array_7e
sput-object v5, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->WINDOW_STYLE_PRINT_DIRECTION:[I
new-array v5, v4, [I
.line 812
fill-array-data v5, :array_90
sput-object v5, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->WINDOW_STYLE_SCROLL_DIRECTION:[I
new-array v5, v4, [Z
.line 817
fill-array-data v5, :array_a2
sput-object v5, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->WINDOW_STYLE_WORD_WRAP:[Z
new-array v5, v4, [I
.line 820
sget v6, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->COLOR_SOLID_BLACK:I
aput v6, v5, v1
const/4 v7, 0x1
aput v3, v5, v7
aput v6, v5, v0
aput v6, v5, v2
const/4 v8, 0x4
aput v3, v5, v8
const/4 v9, 0x5
aput v6, v5, v9
const/4 v10, 0x6
aput v6, v5, v10
sput-object v5, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->WINDOW_STYLE_FILL:[I
new-array v5, v4, [I
.line 826
fill-array-data v5, :array_aa
sput-object v5, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->PEN_STYLE_FONT_STYLE:[I
new-array v5, v4, [I
.line 833
fill-array-data v5, :array_bc
sput-object v5, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->PEN_STYLE_EDGE_TYPE:[I
new-array v4, v4, [I
aput v6, v4, v1
aput v6, v4, v7
aput v6, v4, v0
aput v6, v4, v2
aput v6, v4, v8
aput v3, v4, v9
aput v3, v4, v10
.line 838
sput-object v4, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->PEN_STYLE_BACKGROUND:[I
return-void
nop
:array_6c
.array-data 4
0x0
0x0
0x0
0x0
0x0
0x2
0x0
.end array-data
:array_7e
.array-data 4
0x0
0x0
0x0
0x0
0x0
0x0
0x2
.end array-data
:array_90
.array-data 4
0x3
0x3
0x3
0x3
0x3
0x3
0x1
.end array-data
:array_a2
.array-data 1
0x0t
0x0t
0x0t
0x1t
0x1t
0x1t
0x0t
.end array-data
:array_aa
.array-data 4
0x0
0x1
0x2
0x3
0x4
0x3
0x4
.end array-data
:array_bc
.array-data 4
0x0
0x0
0x0
0x0
0x0
0x3
0x3
.end array-data
.end method
.method public constructor <init>()V
.registers 2
.line 868
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 869
new-instance v0, Ljava/util/LinkedList;
invoke-direct {v0}, Ljava/util/LinkedList;-><init>()V
iput-object v0, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->rolledUpCaptions:Ljava/util/List;
.line 870
new-instance v0, Landroid/text/SpannableStringBuilder;
invoke-direct {v0}, Landroid/text/SpannableStringBuilder;-><init>()V
iput-object v0, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->captionStringBuilder:Landroid/text/SpannableStringBuilder;
.line 871
invoke-virtual {p0}, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->reset()V
return-void
.end method
.method public static getArgbColorFromCeaColor(III)I
.registers 4
const/4 v0, 0x0
.line 1188
invoke-static {p0, p1, p2, v0}, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->getArgbColorFromCeaColor(IIII)I
move-result p0
return p0
.end method
.method public static getArgbColorFromCeaColor(IIII)I
.registers 8
const/4 v0, 0x0
const/4 v1, 0x4
.line 1192
invoke-static {p0, v0, v1}, Lcom/google/android/exoplayer2/util/Assertions;->checkIndex(III)I
.line 1193
invoke-static {p1, v0, v1}, Lcom/google/android/exoplayer2/util/Assertions;->checkIndex(III)I
.line 1194
invoke-static {p2, v0, v1}, Lcom/google/android/exoplayer2/util/Assertions;->checkIndex(III)I
.line 1195
invoke-static {p3, v0, v1}, Lcom/google/android/exoplayer2/util/Assertions;->checkIndex(III)I
const/4 v1, 0x1
const/16 v2, 0xff
if-eqz p3, :cond_21
if-eq p3, v1, :cond_21
const/4 v3, 0x2
if-eq p3, v3, :cond_1e
const/4 v3, 0x3
if-eq p3, v3, :cond_1c
goto :goto_21
:cond_1c
const/4 p3, 0x0
goto :goto_23
:cond_1e
const/16 p3, 0x7f
goto :goto_23
:cond_21
:goto_21
const/16 p3, 0xff
:goto_23
if-le p0, v1, :cond_28
const/16 p0, 0xff
goto :goto_29
:cond_28
const/4 p0, 0x0
:goto_29
if-le p1, v1, :cond_2e
const/16 p1, 0xff
goto :goto_2f
:cond_2e
const/4 p1, 0x0
:goto_2f
if-le p2, v1, :cond_33
const/16 v0, 0xff
.line 1217
:cond_33
invoke-static {p3, p0, p1, v0}, Landroid/graphics/Color;->argb(IIII)I
move-result p0
return p0
.end method
# virtual methods
.method public append(C)V
.registers 4
const/16 v0, 0xa
if-ne p1, v0, :cond_4a
.line 1052
iget-object p1, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->rolledUpCaptions:Ljava/util/List;
invoke-virtual {p0}, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->buildSpannableString()Landroid/text/SpannableString;
move-result-object v0
invoke-interface {p1, v0}, Ljava/util/List;->add(Ljava/lang/Object;)Z
.line 1053
iget-object p1, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->captionStringBuilder:Landroid/text/SpannableStringBuilder;
invoke-virtual {p1}, Landroid/text/SpannableStringBuilder;->clear()V
.line 1055
iget p1, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->italicsStartPosition:I
const/4 v0, -0x1
const/4 v1, 0x0
if-eq p1, v0, :cond_1a
.line 1056
iput v1, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->italicsStartPosition:I
.line 1058
:cond_1a
iget p1, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->underlineStartPosition:I
if-eq p1, v0, :cond_20
.line 1059
iput v1, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->underlineStartPosition:I
.line 1061
:cond_20
iget p1, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->foregroundColorStartPosition:I
if-eq p1, v0, :cond_26
.line 1062
iput v1, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->foregroundColorStartPosition:I
.line 1064
:cond_26
iget p1, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->backgroundColorStartPosition:I
if-eq p1, v0, :cond_2c
.line 1065
iput v1, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->backgroundColorStartPosition:I
.line 1068
:cond_2c
:goto_2c
iget-boolean p1, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->rowLock:Z
if-eqz p1, :cond_3a
iget-object p1, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->rolledUpCaptions:Ljava/util/List;
invoke-interface {p1}, Ljava/util/List;->size()I
move-result p1
iget v0, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->rowCount:I
if-ge p1, v0, :cond_44
:cond_3a
iget-object p1, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->rolledUpCaptions:Ljava/util/List;
.line 1069
invoke-interface {p1}, Ljava/util/List;->size()I
move-result p1
const/16 v0, 0xf
if-lt p1, v0, :cond_4f
.line 1070
:cond_44
iget-object p1, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->rolledUpCaptions:Ljava/util/List;
invoke-interface {p1, v1}, Ljava/util/List;->remove(I)Ljava/lang/Object;
goto :goto_2c
.line 1073
:cond_4a
iget-object v0, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->captionStringBuilder:Landroid/text/SpannableStringBuilder;
invoke-virtual {v0, p1}, Landroid/text/SpannableStringBuilder;->append(C)Landroid/text/SpannableStringBuilder;
:cond_4f
return-void
.end method
.method public backspace()V
.registers 4
.line 1044
iget-object v0, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->captionStringBuilder:Landroid/text/SpannableStringBuilder;
invoke-virtual {v0}, Landroid/text/SpannableStringBuilder;->length()I
move-result v0
if-lez v0, :cond_f
.line 1046
iget-object v1, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->captionStringBuilder:Landroid/text/SpannableStringBuilder;
add-int/lit8 v2, v0, -0x1
invoke-virtual {v1, v2, v0}, Landroid/text/SpannableStringBuilder;->delete(II)Landroid/text/SpannableStringBuilder;
:cond_f
return-void
.end method
.method public build()Lcom/google/android/exoplayer2/text/cea/Cea708Cue;
.registers 16
.line 1108
invoke-virtual {p0}, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->isEmpty()Z
move-result v0
if-eqz v0, :cond_8
const/4 v0, 0x0
return-object v0
.line 1113
:cond_8
new-instance v2, Landroid/text/SpannableStringBuilder;
invoke-direct {v2}, Landroid/text/SpannableStringBuilder;-><init>()V
const/4 v0, 0x0
const/4 v1, 0x0
.line 1116
:goto_f
iget-object v3, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->rolledUpCaptions:Ljava/util/List;
invoke-interface {v3}, Ljava/util/List;->size()I
move-result v3
if-ge v1, v3, :cond_2a
.line 1117
iget-object v3, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->rolledUpCaptions:Ljava/util/List;
invoke-interface {v3, v1}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v3
check-cast v3, Ljava/lang/CharSequence;
invoke-virtual {v2, v3}, Landroid/text/SpannableStringBuilder;->append(Ljava/lang/CharSequence;)Landroid/text/SpannableStringBuilder;
const/16 v3, 0xa
.line 1118
invoke-virtual {v2, v3}, Landroid/text/SpannableStringBuilder;->append(C)Landroid/text/SpannableStringBuilder;
add-int/lit8 v1, v1, 0x1
goto :goto_f
.line 1121
:cond_2a
invoke-virtual {p0}, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->buildSpannableString()Landroid/text/SpannableString;
move-result-object v1
invoke-virtual {v2, v1}, Landroid/text/SpannableStringBuilder;->append(Ljava/lang/CharSequence;)Landroid/text/SpannableStringBuilder;
.line 1126
iget v1, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->justification:I
const/4 v3, 0x2
const/4 v4, 0x3
const/4 v5, 0x1
if-eqz v1, :cond_5e
if-eq v1, v5, :cond_5b
if-eq v1, v3, :cond_58
if-ne v1, v4, :cond_3f
goto :goto_5e
.line 1139
:cond_3f
new-instance v0, Ljava/lang/IllegalArgumentException;
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "Unexpected justification value: "
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget v2, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->justification:I
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-direct {v0, v1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw v0
.line 1136
:cond_58
sget-object v1, Landroid/text/Layout$Alignment;->ALIGN_CENTER:Landroid/text/Layout$Alignment;
goto :goto_60
.line 1133
:cond_5b
sget-object v1, Landroid/text/Layout$Alignment;->ALIGN_OPPOSITE:Landroid/text/Layout$Alignment;
goto :goto_60
.line 1130
:cond_5e
:goto_5e
sget-object v1, Landroid/text/Layout$Alignment;->ALIGN_NORMAL:Landroid/text/Layout$Alignment;
:goto_60
move-object v6, v1
.line 1144
iget-boolean v1, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->relativePositioning:Z
if-eqz v1, :cond_70
.line 1145
iget v1, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->horizontalAnchor:I
int-to-float v1, v1
const/high16 v7, 0x42c60000 # 99.0f
div-float/2addr v1, v7
.line 1146
iget v8, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->verticalAnchor:I
int-to-float v8, v8
div-float/2addr v8, v7
goto :goto_7d
.line 1148
:cond_70
iget v1, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->horizontalAnchor:I
int-to-float v1, v1
const/high16 v7, 0x43510000 # 209.0f
div-float/2addr v1, v7
.line 1149
iget v7, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->verticalAnchor:I
int-to-float v7, v7
const/high16 v8, 0x42940000 # 74.0f
div-float v8, v7, v8
:goto_7d
const v7, 0x3f666666 # 0.9f
mul-float v1, v1, v7
const v9, 0x3d4ccccd # 0.05f
add-float v10, v1, v9
mul-float v8, v8, v7
add-float v7, v8, v9
.line 1163
iget v1, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->anchorId:I
rem-int/lit8 v8, v1, 0x3
if-nez v8, :cond_93
const/4 v8, 0x0
goto :goto_99
.line 1165
:cond_93
rem-int/2addr v1, v4
if-ne v1, v5, :cond_98
const/4 v8, 0x1
goto :goto_99
:cond_98
const/4 v8, 0x2
.line 1172
:goto_99
iget v1, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->anchorId:I
div-int/lit8 v9, v1, 0x3
if-nez v9, :cond_a1
const/4 v9, 0x0
goto :goto_a7
.line 1174
:cond_a1
div-int/2addr v1, v4
if-ne v1, v5, :cond_a6
const/4 v9, 0x1
goto :goto_a7
:cond_a6
const/4 v9, 0x2
.line 1180
:goto_a7
iget v1, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->windowFillColor:I
sget v3, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->COLOR_SOLID_BLACK:I
if-eq v1, v3, :cond_ae
const/4 v0, 0x1
.line 1182
:cond_ae
new-instance v13, Lcom/google/android/exoplayer2/text/cea/Cea708Cue;
const/4 v5, 0x0
const/4 v11, 0x1
iget v12, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->windowFillColor:I
iget v14, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->priority:I
move-object v1, v13
move-object v3, v6
move v4, v7
move v6, v8
move v7, v10
move v8, v9
move v9, v11
move v10, v0
move v11, v12
move v12, v14
invoke-direct/range {v1 .. v12}, Lcom/google/android/exoplayer2/text/cea/Cea708Cue;-><init>(Ljava/lang/CharSequence;Landroid/text/Layout$Alignment;FIIFIFZII)V
return-object v13
.end method
.method public buildSpannableString()Landroid/text/SpannableString;
.registers 7
.line 1078
new-instance v0, Landroid/text/SpannableStringBuilder;
iget-object v1, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->captionStringBuilder:Landroid/text/SpannableStringBuilder;
invoke-direct {v0, v1}, Landroid/text/SpannableStringBuilder;-><init>(Ljava/lang/CharSequence;)V
.line 1080
invoke-virtual {v0}, Landroid/text/SpannableStringBuilder;->length()I
move-result v1
if-lez v1, :cond_4d
.line 1083
iget v2, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->italicsStartPosition:I
const/16 v3, 0x21
const/4 v4, -0x1
if-eq v2, v4, :cond_1f
.line 1084
new-instance v2, Landroid/text/style/StyleSpan;
const/4 v5, 0x2
invoke-direct {v2, v5}, Landroid/text/style/StyleSpan;-><init>(I)V
iget v5, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->italicsStartPosition:I
invoke-virtual {v0, v2, v5, v1, v3}, Landroid/text/SpannableStringBuilder;->setSpan(Ljava/lang/Object;III)V
.line 1088
:cond_1f
iget v2, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->underlineStartPosition:I
if-eq v2, v4, :cond_2d
.line 1089
new-instance v2, Landroid/text/style/UnderlineSpan;
invoke-direct {v2}, Landroid/text/style/UnderlineSpan;-><init>()V
iget v5, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->underlineStartPosition:I
invoke-virtual {v0, v2, v5, v1, v3}, Landroid/text/SpannableStringBuilder;->setSpan(Ljava/lang/Object;III)V
.line 1093
:cond_2d
iget v2, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->foregroundColorStartPosition:I
if-eq v2, v4, :cond_3d
.line 1094
new-instance v2, Landroid/text/style/ForegroundColorSpan;
iget v5, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->foregroundColor:I
invoke-direct {v2, v5}, Landroid/text/style/ForegroundColorSpan;-><init>(I)V
iget v5, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->foregroundColorStartPosition:I
invoke-virtual {v0, v2, v5, v1, v3}, Landroid/text/SpannableStringBuilder;->setSpan(Ljava/lang/Object;III)V
.line 1098
:cond_3d
iget v2, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->backgroundColorStartPosition:I
if-eq v2, v4, :cond_4d
.line 1099
new-instance v2, Landroid/text/style/BackgroundColorSpan;
iget v4, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->backgroundColor:I
invoke-direct {v2, v4}, Landroid/text/style/BackgroundColorSpan;-><init>(I)V
iget v4, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->backgroundColorStartPosition:I
invoke-virtual {v0, v2, v4, v1, v3}, Landroid/text/SpannableStringBuilder;->setSpan(Ljava/lang/Object;III)V
.line 1104
:cond_4d
new-instance v1, Landroid/text/SpannableString;
invoke-direct {v1, v0}, Landroid/text/SpannableString;-><init>(Ljava/lang/CharSequence;)V
return-object v1
.end method
.method public clear()V
.registers 2
.line 900
iget-object v0, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->rolledUpCaptions:Ljava/util/List;
invoke-interface {v0}, Ljava/util/List;->clear()V
.line 901
iget-object v0, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->captionStringBuilder:Landroid/text/SpannableStringBuilder;
invoke-virtual {v0}, Landroid/text/SpannableStringBuilder;->clear()V
const/4 v0, -0x1
.line 902
iput v0, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->italicsStartPosition:I
.line 903
iput v0, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->underlineStartPosition:I
.line 904
iput v0, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->foregroundColorStartPosition:I
.line 905
iput v0, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->backgroundColorStartPosition:I
return-void
.end method
.method public defineWindow(ZZZIZIIIIIII)V
.registers 24
move-object v0, p0
move v1, p2
move/from16 v2, p11
move/from16 v3, p12
const/4 v4, 0x1
.line 923
iput-boolean v4, v0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->defined:Z
move v5, p1
.line 924
iput-boolean v5, v0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->visible:Z
.line 925
iput-boolean v1, v0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->rowLock:Z
move v5, p4
.line 926
iput v5, v0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->priority:I
move/from16 v5, p5
.line 927
iput-boolean v5, v0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->relativePositioning:Z
move/from16 v5, p6
.line 928
iput v5, v0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->verticalAnchor:I
move/from16 v5, p7
.line 929
iput v5, v0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->horizontalAnchor:I
move/from16 v5, p10
.line 930
iput v5, v0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->anchorId:I
.line 933
iget v5, v0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->rowCount:I
add-int/lit8 v6, p8, 0x1
if-eq v5, v6, :cond_46
.line 934
iput v6, v0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->rowCount:I
:goto_29
if-eqz v1, :cond_35
.line 937
iget-object v5, v0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->rolledUpCaptions:Ljava/util/List;
invoke-interface {v5}, Ljava/util/List;->size()I
move-result v5
iget v6, v0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->rowCount:I
if-ge v5, v6, :cond_3f
:cond_35
iget-object v5, v0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->rolledUpCaptions:Ljava/util/List;
.line 938
invoke-interface {v5}, Ljava/util/List;->size()I
move-result v5
const/16 v6, 0xf
if-lt v5, v6, :cond_46
.line 939
:cond_3f
iget-object v5, v0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->rolledUpCaptions:Ljava/util/List;
const/4 v6, 0x0
invoke-interface {v5, v6}, Ljava/util/List;->remove(I)Ljava/lang/Object;
goto :goto_29
:cond_46
if-eqz v2, :cond_76
.line 945
iget v1, v0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->windowStyleId:I
if-eq v1, v2, :cond_76
.line 946
iput v2, v0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->windowStyleId:I
add-int/lit8 v1, v2, -0x1
.line 950
sget-object v2, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->WINDOW_STYLE_FILL:[I
aget v2, v2, v1
sget v5, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->COLOR_TRANSPARENT:I
sget-object v6, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->WINDOW_STYLE_WORD_WRAP:[Z
aget-boolean v6, v6, v1
const/4 v7, 0x0
sget-object v8, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->WINDOW_STYLE_PRINT_DIRECTION:[I
aget v8, v8, v1
sget-object v9, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->WINDOW_STYLE_SCROLL_DIRECTION:[I
aget v9, v9, v1
sget-object v10, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->WINDOW_STYLE_JUSTIFICATION:[I
aget v1, v10, v1
move-object p1, p0
move p2, v2
move p3, v5
move p4, v6
move/from16 p5, v7
move/from16 p6, v8
move/from16 p7, v9
move/from16 p8, v1
invoke-virtual/range {p1 .. p8}, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->setWindowAttributes(IIZIIII)V
:cond_76
if-eqz v3, :cond_a7
.line 957
iget v1, v0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->penStyleId:I
if-eq v1, v3, :cond_a7
.line 958
iput v3, v0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->penStyleId:I
add-int/lit8 v1, v3, -0x1
const/4 v2, 0x0
const/4 v3, 0x1
const/4 v4, 0x1
const/4 v5, 0x0
const/4 v6, 0x0
.line 963
sget-object v7, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->PEN_STYLE_EDGE_TYPE:[I
aget v7, v7, v1
sget-object v8, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->PEN_STYLE_FONT_STYLE:[I
aget v8, v8, v1
move-object p1, p0
move p2, v2
move p3, v3
move p4, v4
move/from16 p5, v5
move/from16 p6, v6
move/from16 p7, v7
move/from16 p8, v8
invoke-virtual/range {p1 .. p8}, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->setPenAttributes(IIIZZII)V
.line 965
sget v2, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->COLOR_SOLID_WHITE:I
sget-object v3, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->PEN_STYLE_BACKGROUND:[I
aget v1, v3, v1
sget v3, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->COLOR_SOLID_BLACK:I
invoke-virtual {p0, v2, v1, v3}, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->setPenColor(III)V
:cond_a7
return-void
.end method
.method public isDefined()Z
.registers 2
.line 909
iget-boolean v0, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->defined:Z
return v0
.end method
.method public isEmpty()Z
.registers 2
.line 875
invoke-virtual {p0}, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->isDefined()Z
move-result v0
if-eqz v0, :cond_19
iget-object v0, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->rolledUpCaptions:Ljava/util/List;
invoke-interface {v0}, Ljava/util/List;->isEmpty()Z
move-result v0
if-eqz v0, :cond_17
iget-object v0, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->captionStringBuilder:Landroid/text/SpannableStringBuilder;
invoke-virtual {v0}, Landroid/text/SpannableStringBuilder;->length()I
move-result v0
if-nez v0, :cond_17
goto :goto_19
:cond_17
const/4 v0, 0x0
goto :goto_1a
:cond_19
:goto_19
const/4 v0, 0x1
:goto_1a
return v0
.end method
.method public isVisible()Z
.registers 2
.line 917
iget-boolean v0, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->visible:Z
return v0
.end method
.method public reset()V
.registers 3
.line 879
invoke-virtual {p0}, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->clear()V
const/4 v0, 0x0
.line 881
iput-boolean v0, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->defined:Z
.line 882
iput-boolean v0, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->visible:Z
const/4 v1, 0x4
.line 883
iput v1, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->priority:I
.line 884
iput-boolean v0, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->relativePositioning:Z
.line 885
iput v0, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->verticalAnchor:I
.line 886
iput v0, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->horizontalAnchor:I
.line 887
iput v0, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->anchorId:I
const/16 v1, 0xf
.line 888
iput v1, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->rowCount:I
const/4 v1, 0x1
.line 889
iput-boolean v1, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->rowLock:Z
.line 890
iput v0, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->justification:I
.line 891
iput v0, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->windowStyleId:I
.line 892
iput v0, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->penStyleId:I
.line 893
sget v0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->COLOR_SOLID_BLACK:I
iput v0, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->windowFillColor:I
.line 895
sget v1, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->COLOR_SOLID_WHITE:I
iput v1, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->foregroundColor:I
.line 896
iput v0, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->backgroundColor:I
return-void
.end method
.method public setPenAttributes(IIIZZII)V
.registers 8
.line 987
iget p1, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->italicsStartPosition:I
const/16 p2, 0x21
const/4 p3, -0x1
if-eq p1, p3, :cond_1f
if-nez p4, :cond_29
.line 989
iget-object p1, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->captionStringBuilder:Landroid/text/SpannableStringBuilder;
new-instance p4, Landroid/text/style/StyleSpan;
const/4 p6, 0x2
invoke-direct {p4, p6}, Landroid/text/style/StyleSpan;-><init>(I)V
iget p6, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->italicsStartPosition:I
iget-object p7, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->captionStringBuilder:Landroid/text/SpannableStringBuilder;
.line 990
invoke-virtual {p7}, Landroid/text/SpannableStringBuilder;->length()I
move-result p7
.line 989
invoke-virtual {p1, p4, p6, p7, p2}, Landroid/text/SpannableStringBuilder;->setSpan(Ljava/lang/Object;III)V
.line 991
iput p3, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->italicsStartPosition:I
goto :goto_29
:cond_1f
if-eqz p4, :cond_29
.line 994
iget-object p1, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->captionStringBuilder:Landroid/text/SpannableStringBuilder;
invoke-virtual {p1}, Landroid/text/SpannableStringBuilder;->length()I
move-result p1
iput p1, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->italicsStartPosition:I
.line 997
:cond_29
:goto_29
iget p1, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->underlineStartPosition:I
if-eq p1, p3, :cond_44
if-nez p5, :cond_4e
.line 999
iget-object p1, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->captionStringBuilder:Landroid/text/SpannableStringBuilder;
new-instance p4, Landroid/text/style/UnderlineSpan;
invoke-direct {p4}, Landroid/text/style/UnderlineSpan;-><init>()V
iget p5, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->underlineStartPosition:I
iget-object p6, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->captionStringBuilder:Landroid/text/SpannableStringBuilder;
.line 1000
invoke-virtual {p6}, Landroid/text/SpannableStringBuilder;->length()I
move-result p6
.line 999
invoke-virtual {p1, p4, p5, p6, p2}, Landroid/text/SpannableStringBuilder;->setSpan(Ljava/lang/Object;III)V
.line 1001
iput p3, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->underlineStartPosition:I
goto :goto_4e
:cond_44
if-eqz p5, :cond_4e
.line 1004
iget-object p1, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->captionStringBuilder:Landroid/text/SpannableStringBuilder;
invoke-virtual {p1}, Landroid/text/SpannableStringBuilder;->length()I
move-result p1
iput p1, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->underlineStartPosition:I
:cond_4e
:goto_4e
return-void
.end method
.method public setPenColor(III)V
.registers 9
.line 1012
iget p3, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->foregroundColorStartPosition:I
const/16 v0, 0x21
const/4 v1, -0x1
if-eq p3, v1, :cond_1f
.line 1013
iget p3, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->foregroundColor:I
if-eq p3, p1, :cond_1f
.line 1014
iget-object p3, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->captionStringBuilder:Landroid/text/SpannableStringBuilder;
new-instance v2, Landroid/text/style/ForegroundColorSpan;
iget v3, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->foregroundColor:I
invoke-direct {v2, v3}, Landroid/text/style/ForegroundColorSpan;-><init>(I)V
iget v3, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->foregroundColorStartPosition:I
iget-object v4, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->captionStringBuilder:Landroid/text/SpannableStringBuilder;
.line 1015
invoke-virtual {v4}, Landroid/text/SpannableStringBuilder;->length()I
move-result v4
.line 1014
invoke-virtual {p3, v2, v3, v4, v0}, Landroid/text/SpannableStringBuilder;->setSpan(Ljava/lang/Object;III)V
.line 1019
:cond_1f
sget p3, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->COLOR_SOLID_WHITE:I
if-eq p1, p3, :cond_2d
.line 1020
iget-object p3, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->captionStringBuilder:Landroid/text/SpannableStringBuilder;
invoke-virtual {p3}, Landroid/text/SpannableStringBuilder;->length()I
move-result p3
iput p3, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->foregroundColorStartPosition:I
.line 1021
iput p1, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->foregroundColor:I
.line 1024
:cond_2d
iget p1, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->backgroundColorStartPosition:I
if-eq p1, v1, :cond_49
.line 1025
iget p1, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->backgroundColor:I
if-eq p1, p2, :cond_49
.line 1026
iget-object p1, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->captionStringBuilder:Landroid/text/SpannableStringBuilder;
new-instance p3, Landroid/text/style/BackgroundColorSpan;
iget v1, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->backgroundColor:I
invoke-direct {p3, v1}, Landroid/text/style/BackgroundColorSpan;-><init>(I)V
iget v1, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->backgroundColorStartPosition:I
iget-object v2, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->captionStringBuilder:Landroid/text/SpannableStringBuilder;
.line 1027
invoke-virtual {v2}, Landroid/text/SpannableStringBuilder;->length()I
move-result v2
.line 1026
invoke-virtual {p1, p3, v1, v2, v0}, Landroid/text/SpannableStringBuilder;->setSpan(Ljava/lang/Object;III)V
.line 1031
:cond_49
sget p1, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->COLOR_SOLID_BLACK:I
if-eq p2, p1, :cond_57
.line 1032
iget-object p1, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->captionStringBuilder:Landroid/text/SpannableStringBuilder;
invoke-virtual {p1}, Landroid/text/SpannableStringBuilder;->length()I
move-result p1
iput p1, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->backgroundColorStartPosition:I
.line 1033
iput p2, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->backgroundColor:I
:cond_57
return-void
.end method
.method public setPenLocation(II)V
.registers 3
return-void
.end method
.method public setVisibility(Z)V
.registers 2
.line 913
iput-boolean p1, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->visible:Z
return-void
.end method
.method public setWindowAttributes(IIZIIII)V
.registers 8
.line 972
iput p1, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->windowFillColor:I
.line 977
iput p7, p0, Lcom/google/android/exoplayer2/text/cea/Cea708Decoder$CueBuilder;->justification:I
return-void
.end method