SegmentBase$SegmentTemplate.smali
.class public Lcom/google/android/exoplayer2/source/dash/manifest/SegmentBase$SegmentTemplate;
.super Lcom/google/android/exoplayer2/source/dash/manifest/SegmentBase$MultiSegmentBase;
.source "SegmentBase.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/google/android/exoplayer2/source/dash/manifest/SegmentBase;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "SegmentTemplate"
.end annotation
# instance fields
.field final initializationTemplate:Lcom/google/android/exoplayer2/source/dash/manifest/UrlTemplate;
.field final mediaTemplate:Lcom/google/android/exoplayer2/source/dash/manifest/UrlTemplate;
# direct methods
.method public constructor <init>(Lcom/google/android/exoplayer2/source/dash/manifest/RangedUri;JJIJLjava/util/List;Lcom/google/android/exoplayer2/source/dash/manifest/UrlTemplate;Lcom/google/android/exoplayer2/source/dash/manifest/UrlTemplate;)V
.registers 12
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/google/android/exoplayer2/source/dash/manifest/RangedUri;",
"JJIJ",
"Ljava/util/List<",
"Lcom/google/android/exoplayer2/source/dash/manifest/SegmentBase$SegmentTimelineElement;",
">;",
"Lcom/google/android/exoplayer2/source/dash/manifest/UrlTemplate;",
"Lcom/google/android/exoplayer2/source/dash/manifest/UrlTemplate;",
")V"
}
.end annotation
.line 294
invoke-direct/range {p0 .. p9}, Lcom/google/android/exoplayer2/source/dash/manifest/SegmentBase$MultiSegmentBase;-><init>(Lcom/google/android/exoplayer2/source/dash/manifest/RangedUri;JJIJLjava/util/List;)V
.line 296
iput-object p10, p0, Lcom/google/android/exoplayer2/source/dash/manifest/SegmentBase$SegmentTemplate;->initializationTemplate:Lcom/google/android/exoplayer2/source/dash/manifest/UrlTemplate;
.line 297
iput-object p11, p0, Lcom/google/android/exoplayer2/source/dash/manifest/SegmentBase$SegmentTemplate;->mediaTemplate:Lcom/google/android/exoplayer2/source/dash/manifest/UrlTemplate;
return-void
.end method
# virtual methods
.method public getInitialization(Lcom/google/android/exoplayer2/source/dash/manifest/Representation;)Lcom/google/android/exoplayer2/source/dash/manifest/RangedUri;
.registers 14
.line 302
iget-object v0, p0, Lcom/google/android/exoplayer2/source/dash/manifest/SegmentBase$SegmentTemplate;->initializationTemplate:Lcom/google/android/exoplayer2/source/dash/manifest/UrlTemplate;
if-eqz v0, :cond_1e
.line 303
iget-object v1, p1, Lcom/google/android/exoplayer2/source/dash/manifest/Representation;->format:Lcom/google/android/exoplayer2/Format;
iget-object v1, v1, Lcom/google/android/exoplayer2/Format;->id:Ljava/lang/String;
const/4 v2, 0x0
iget-object p1, p1, Lcom/google/android/exoplayer2/source/dash/manifest/Representation;->format:Lcom/google/android/exoplayer2/Format;
iget v3, p1, Lcom/google/android/exoplayer2/Format;->bitrate:I
const-wide/16 v4, 0x0
invoke-virtual/range {v0 .. v5}, Lcom/google/android/exoplayer2/source/dash/manifest/UrlTemplate;->buildUri(Ljava/lang/String;IIJ)Ljava/lang/String;
move-result-object v7
.line 305
new-instance p1, Lcom/google/android/exoplayer2/source/dash/manifest/RangedUri;
const-wide/16 v8, 0x0
const-wide/16 v10, -0x1
move-object v6, p1
invoke-direct/range {v6 .. v11}, Lcom/google/android/exoplayer2/source/dash/manifest/RangedUri;-><init>(Ljava/lang/String;JJ)V
return-object p1
.line 307
:cond_1e
invoke-super {p0, p1}, Lcom/google/android/exoplayer2/source/dash/manifest/SegmentBase$MultiSegmentBase;->getInitialization(Lcom/google/android/exoplayer2/source/dash/manifest/Representation;)Lcom/google/android/exoplayer2/source/dash/manifest/RangedUri;
move-result-object p1
return-object p1
.end method
.method public getLastSegmentNum(J)I
.registers 7
.line 326
iget-object v0, p0, Lcom/google/android/exoplayer2/source/dash/manifest/SegmentBase$SegmentTemplate;->segmentTimeline:Ljava/util/List;
if-eqz v0, :cond_10
.line 327
iget-object p1, p0, Lcom/google/android/exoplayer2/source/dash/manifest/SegmentBase$SegmentTemplate;->segmentTimeline:Ljava/util/List;
invoke-interface {p1}, Ljava/util/List;->size()I
move-result p1
iget p2, p0, Lcom/google/android/exoplayer2/source/dash/manifest/SegmentBase$SegmentTemplate;->startNumber:I
add-int/2addr p1, p2
add-int/lit8 p1, p1, -0x1
return p1
:cond_10
const-wide v0, -0x7fffffffffffffffL # -4.9E-324
cmp-long v2, p1, v0
if-nez v2, :cond_1b
const/4 p1, -0x1
return p1
.line 331
:cond_1b
iget-wide v0, p0, Lcom/google/android/exoplayer2/source/dash/manifest/SegmentBase$SegmentTemplate;->duration:J
const-wide/32 v2, 0xf4240
mul-long v0, v0, v2
iget-wide v2, p0, Lcom/google/android/exoplayer2/source/dash/manifest/SegmentBase$SegmentTemplate;->timescale:J
div-long/2addr v0, v2
.line 332
iget v2, p0, Lcom/google/android/exoplayer2/source/dash/manifest/SegmentBase$SegmentTemplate;->startNumber:I
invoke-static {p1, p2, v0, v1}, Lcom/google/android/exoplayer2/util/Util;->ceilDivide(JJ)J
move-result-wide p1
long-to-int p2, p1
add-int/2addr v2, p2
add-int/lit8 v2, v2, -0x1
return v2
.end method
.method public getSegmentUrl(Lcom/google/android/exoplayer2/source/dash/manifest/Representation;I)Lcom/google/android/exoplayer2/source/dash/manifest/RangedUri;
.registers 15
.line 314
iget-object v1, p0, Lcom/google/android/exoplayer2/source/dash/manifest/SegmentBase$SegmentTemplate;->segmentTimeline:Ljava/util/List;
if-eqz v1, :cond_13
.line 315
iget-object v1, p0, Lcom/google/android/exoplayer2/source/dash/manifest/SegmentBase$SegmentTemplate;->segmentTimeline:Ljava/util/List;
iget v2, p0, Lcom/google/android/exoplayer2/source/dash/manifest/SegmentBase$SegmentTemplate;->startNumber:I
sub-int v2, p2, v2
invoke-interface {v1, v2}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v1
check-cast v1, Lcom/google/android/exoplayer2/source/dash/manifest/SegmentBase$SegmentTimelineElement;
iget-wide v1, v1, Lcom/google/android/exoplayer2/source/dash/manifest/SegmentBase$SegmentTimelineElement;->startTime:J
goto :goto_1c
.line 317
:cond_13
iget v1, p0, Lcom/google/android/exoplayer2/source/dash/manifest/SegmentBase$SegmentTemplate;->startNumber:I
sub-int v1, p2, v1
int-to-long v1, v1
iget-wide v3, p0, Lcom/google/android/exoplayer2/source/dash/manifest/SegmentBase$SegmentTemplate;->duration:J
mul-long v1, v1, v3
:goto_1c
move-wide v4, v1
.line 319
iget-object v1, p0, Lcom/google/android/exoplayer2/source/dash/manifest/SegmentBase$SegmentTemplate;->mediaTemplate:Lcom/google/android/exoplayer2/source/dash/manifest/UrlTemplate;
iget-object v2, p1, Lcom/google/android/exoplayer2/source/dash/manifest/Representation;->format:Lcom/google/android/exoplayer2/Format;
iget-object v2, v2, Lcom/google/android/exoplayer2/Format;->id:Ljava/lang/String;
iget-object v0, p1, Lcom/google/android/exoplayer2/source/dash/manifest/Representation;->format:Lcom/google/android/exoplayer2/Format;
iget v3, v0, Lcom/google/android/exoplayer2/Format;->bitrate:I
move-object v0, v1
move-object v1, v2
move v2, p2
invoke-virtual/range {v0 .. v5}, Lcom/google/android/exoplayer2/source/dash/manifest/UrlTemplate;->buildUri(Ljava/lang/String;IIJ)Ljava/lang/String;
move-result-object v7
.line 321
new-instance v0, Lcom/google/android/exoplayer2/source/dash/manifest/RangedUri;
const-wide/16 v8, 0x0
const-wide/16 v10, -0x1
move-object v6, v0
invoke-direct/range {v6 .. v11}, Lcom/google/android/exoplayer2/source/dash/manifest/RangedUri;-><init>(Ljava/lang/String;JJ)V
return-object v0
.end method