SsManifest.smali
.class public Lcom/google/android/exoplayer2/source/smoothstreaming/manifest/SsManifest;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/google/android/exoplayer2/source/smoothstreaming/manifest/SsManifest$StreamElement;,
Lcom/google/android/exoplayer2/source/smoothstreaming/manifest/SsManifest$ProtectionElement;
}
.end annotation
# static fields
.field public static final UNSET_LOOKAHEAD:I = -0x1
# instance fields
.field public final durationUs:J
.field public final dvrWindowLengthUs:J
.field public final isLive:Z
.field public final lookAheadCount:I
.field public final majorVersion:I
.field public final minorVersion:I
.field public final protectionElement:Lcom/google/android/exoplayer2/source/smoothstreaming/manifest/SsManifest$ProtectionElement;
.field public final streamElements:[Lcom/google/android/exoplayer2/source/smoothstreaming/manifest/SsManifest$StreamElement;
# direct methods
.method private constructor <init>(IIJJIZLcom/google/android/exoplayer2/source/smoothstreaming/manifest/SsManifest$ProtectionElement;[Lcom/google/android/exoplayer2/source/smoothstreaming/manifest/SsManifest$StreamElement;)V
.registers 11
.line 112
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 113
iput p1, p0, Lcom/google/android/exoplayer2/source/smoothstreaming/manifest/SsManifest;->majorVersion:I
.line 114
iput p2, p0, Lcom/google/android/exoplayer2/source/smoothstreaming/manifest/SsManifest;->minorVersion:I
.line 115
iput-wide p3, p0, Lcom/google/android/exoplayer2/source/smoothstreaming/manifest/SsManifest;->durationUs:J
.line 116
iput-wide p5, p0, Lcom/google/android/exoplayer2/source/smoothstreaming/manifest/SsManifest;->dvrWindowLengthUs:J
.line 117
iput p7, p0, Lcom/google/android/exoplayer2/source/smoothstreaming/manifest/SsManifest;->lookAheadCount:I
.line 118
iput-boolean p8, p0, Lcom/google/android/exoplayer2/source/smoothstreaming/manifest/SsManifest;->isLive:Z
.line 119
iput-object p9, p0, Lcom/google/android/exoplayer2/source/smoothstreaming/manifest/SsManifest;->protectionElement:Lcom/google/android/exoplayer2/source/smoothstreaming/manifest/SsManifest$ProtectionElement;
.line 120
iput-object p10, p0, Lcom/google/android/exoplayer2/source/smoothstreaming/manifest/SsManifest;->streamElements:[Lcom/google/android/exoplayer2/source/smoothstreaming/manifest/SsManifest$StreamElement;
return-void
.end method
.method public constructor <init>(IIJJJIZLcom/google/android/exoplayer2/source/smoothstreaming/manifest/SsManifest$ProtectionElement;[Lcom/google/android/exoplayer2/source/smoothstreaming/manifest/SsManifest$StreamElement;)V
.registers 30
const-wide v0, -0x7fffffffffffffffL # -4.9E-324
const-wide/16 v2, 0x0
cmp-long v4, p5, v2
if-nez v4, :cond_d
move-wide v9, v0
goto :goto_19
:cond_d
const-wide/32 v6, 0xf4240
move-wide/from16 v4, p5
move-wide/from16 v8, p3
.line 104
invoke-static/range {v4 .. v9}, Lcom/google/android/exoplayer2/util/Util;->scaleLargeTimestamp(JJJ)J
move-result-wide v4
move-wide v9, v4
:goto_19
cmp-long v4, p7, v2
if-nez v4, :cond_1e
goto :goto_29
:cond_1e
const-wide/32 v13, 0xf4240
move-wide/from16 v11, p7
move-wide/from16 v15, p3
.line 106
invoke-static/range {v11 .. v16}, Lcom/google/android/exoplayer2/util/Util;->scaleLargeTimestamp(JJJ)J
move-result-wide v0
:goto_29
move-wide v11, v0
move-object/from16 v6, p0
move/from16 v7, p1
move/from16 v8, p2
move/from16 v13, p9
move/from16 v14, p10
move-object/from16 v15, p11
move-object/from16 v16, p12
.line 102
invoke-direct/range {v6 .. v16}, Lcom/google/android/exoplayer2/source/smoothstreaming/manifest/SsManifest;-><init>(IIJJIZLcom/google/android/exoplayer2/source/smoothstreaming/manifest/SsManifest$ProtectionElement;[Lcom/google/android/exoplayer2/source/smoothstreaming/manifest/SsManifest$StreamElement;)V
return-void
.end method
# virtual methods
.method public final copy(Ljava/util/List;)Lcom/google/android/exoplayer2/source/smoothstreaming/manifest/SsManifest;
.registers 13
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/util/List<",
"Lcom/google/android/exoplayer2/source/smoothstreaming/manifest/TrackKey;",
">;)",
"Lcom/google/android/exoplayer2/source/smoothstreaming/manifest/SsManifest;"
}
.end annotation
.line 131
new-instance v0, Ljava/util/LinkedList;
invoke-direct {v0, p1}, Ljava/util/LinkedList;-><init>(Ljava/util/Collection;)V
.line 132
invoke-static {v0}, Ljava/util/Collections;->sort(Ljava/util/List;)V
.line 135
new-instance p1, Ljava/util/ArrayList;
invoke-direct {p1}, Ljava/util/ArrayList;-><init>()V
.line 136
new-instance v1, Ljava/util/ArrayList;
invoke-direct {v1}, Ljava/util/ArrayList;-><init>()V
const/4 v2, 0x0
const/4 v3, 0x0
const/4 v4, 0x0
.line 137
:goto_15
invoke-virtual {v0}, Ljava/util/LinkedList;->size()I
move-result v5
if-ge v4, v5, :cond_4a
.line 138
invoke-virtual {v0, v4}, Ljava/util/LinkedList;->get(I)Ljava/lang/Object;
move-result-object v5
check-cast v5, Lcom/google/android/exoplayer2/source/smoothstreaming/manifest/TrackKey;
.line 139
iget-object v6, p0, Lcom/google/android/exoplayer2/source/smoothstreaming/manifest/SsManifest;->streamElements:[Lcom/google/android/exoplayer2/source/smoothstreaming/manifest/SsManifest$StreamElement;
iget v7, v5, Lcom/google/android/exoplayer2/source/smoothstreaming/manifest/TrackKey;->streamElementIndex:I
aget-object v6, v6, v7
if-eq v6, v3, :cond_3d
if-eqz v3, :cond_3d
new-array v7, v2, [Lcom/google/android/exoplayer2/Format;
.line 142
invoke-interface {v1, v7}, Ljava/util/List;->toArray([Ljava/lang/Object;)[Ljava/lang/Object;
move-result-object v7
check-cast v7, [Lcom/google/android/exoplayer2/Format;
invoke-virtual {v3, v7}, Lcom/google/android/exoplayer2/source/smoothstreaming/manifest/SsManifest$StreamElement;->copy([Lcom/google/android/exoplayer2/Format;)Lcom/google/android/exoplayer2/source/smoothstreaming/manifest/SsManifest$StreamElement;
move-result-object v3
invoke-interface {p1, v3}, Ljava/util/List;->add(Ljava/lang/Object;)Z
.line 143
invoke-interface {v1}, Ljava/util/List;->clear()V
.line 146
:cond_3d
iget-object v3, v6, Lcom/google/android/exoplayer2/source/smoothstreaming/manifest/SsManifest$StreamElement;->formats:[Lcom/google/android/exoplayer2/Format;
iget v5, v5, Lcom/google/android/exoplayer2/source/smoothstreaming/manifest/TrackKey;->trackIndex:I
aget-object v3, v3, v5
invoke-interface {v1, v3}, Ljava/util/List;->add(Ljava/lang/Object;)Z
add-int/lit8 v4, v4, 0x1
move-object v3, v6
goto :goto_15
:cond_4a
if-eqz v3, :cond_5b
new-array v0, v2, [Lcom/google/android/exoplayer2/Format;
.line 150
invoke-interface {v1, v0}, Ljava/util/List;->toArray([Ljava/lang/Object;)[Ljava/lang/Object;
move-result-object v0
check-cast v0, [Lcom/google/android/exoplayer2/Format;
invoke-virtual {v3, v0}, Lcom/google/android/exoplayer2/source/smoothstreaming/manifest/SsManifest$StreamElement;->copy([Lcom/google/android/exoplayer2/Format;)Lcom/google/android/exoplayer2/source/smoothstreaming/manifest/SsManifest$StreamElement;
move-result-object v0
invoke-interface {p1, v0}, Ljava/util/List;->add(Ljava/lang/Object;)Z
:cond_5b
new-array v0, v2, [Lcom/google/android/exoplayer2/source/smoothstreaming/manifest/SsManifest$StreamElement;
.line 153
invoke-interface {p1, v0}, Ljava/util/List;->toArray([Ljava/lang/Object;)[Ljava/lang/Object;
move-result-object p1
move-object v10, p1
check-cast v10, [Lcom/google/android/exoplayer2/source/smoothstreaming/manifest/SsManifest$StreamElement;
.line 154
new-instance p1, Lcom/google/android/exoplayer2/source/smoothstreaming/manifest/SsManifest;
iget v1, p0, Lcom/google/android/exoplayer2/source/smoothstreaming/manifest/SsManifest;->majorVersion:I
iget v2, p0, Lcom/google/android/exoplayer2/source/smoothstreaming/manifest/SsManifest;->minorVersion:I
iget-wide v3, p0, Lcom/google/android/exoplayer2/source/smoothstreaming/manifest/SsManifest;->durationUs:J
iget-wide v5, p0, Lcom/google/android/exoplayer2/source/smoothstreaming/manifest/SsManifest;->dvrWindowLengthUs:J
iget v7, p0, Lcom/google/android/exoplayer2/source/smoothstreaming/manifest/SsManifest;->lookAheadCount:I
iget-boolean v8, p0, Lcom/google/android/exoplayer2/source/smoothstreaming/manifest/SsManifest;->isLive:Z
iget-object v9, p0, Lcom/google/android/exoplayer2/source/smoothstreaming/manifest/SsManifest;->protectionElement:Lcom/google/android/exoplayer2/source/smoothstreaming/manifest/SsManifest$ProtectionElement;
move-object v0, p1
invoke-direct/range {v0 .. v10}, Lcom/google/android/exoplayer2/source/smoothstreaming/manifest/SsManifest;-><init>(IIJJIZLcom/google/android/exoplayer2/source/smoothstreaming/manifest/SsManifest$ProtectionElement;[Lcom/google/android/exoplayer2/source/smoothstreaming/manifest/SsManifest$StreamElement;)V
return-object p1
.end method