I$a.smali
.class final Lcom/google/android/exoplayer2/source/I$a;
.super Ljava/lang/Object;
.source "ProgressiveMediaPeriod.java"
# interfaces
.implements Lcom/google/android/exoplayer2/upstream/Loader$d;
.implements Lcom/google/android/exoplayer2/source/u$a;
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/google/android/exoplayer2/source/I;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x10
name = "a"
.end annotation
# instance fields
.field private final a:J
.field private final b:Landroid/net/Uri;
.field private final c:Lcom/google/android/exoplayer2/upstream/C;
.field private final d:Lcom/google/android/exoplayer2/source/H;
.field private final e:Lcom/google/android/exoplayer2/extractor/m;
.field private final f:Lcom/google/android/exoplayer2/util/h;
.field private final g:Lcom/google/android/exoplayer2/extractor/w;
.field private volatile h:Z
.field private i:Z
.field private j:J
.field private k:Lcom/google/android/exoplayer2/upstream/n;
.field private l:J
.field private m:Lcom/google/android/exoplayer2/extractor/A;
.field private n:Z
.field final synthetic o:Lcom/google/android/exoplayer2/source/I;
# direct methods
.method public constructor <init>(Lcom/google/android/exoplayer2/source/I;Landroid/net/Uri;Lcom/google/android/exoplayer2/upstream/k;Lcom/google/android/exoplayer2/source/H;Lcom/google/android/exoplayer2/extractor/m;Lcom/google/android/exoplayer2/util/h;)V
.registers 7
.line 1
iput-object p1, p0, Lcom/google/android/exoplayer2/source/I$a;->o:Lcom/google/android/exoplayer2/source/I;
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 2
iput-object p2, p0, Lcom/google/android/exoplayer2/source/I$a;->b:Landroid/net/Uri;
.line 3
new-instance p1, Lcom/google/android/exoplayer2/upstream/C;
invoke-direct {p1, p3}, Lcom/google/android/exoplayer2/upstream/C;-><init>(Lcom/google/android/exoplayer2/upstream/k;)V
iput-object p1, p0, Lcom/google/android/exoplayer2/source/I$a;->c:Lcom/google/android/exoplayer2/upstream/C;
.line 4
iput-object p4, p0, Lcom/google/android/exoplayer2/source/I$a;->d:Lcom/google/android/exoplayer2/source/H;
.line 5
iput-object p5, p0, Lcom/google/android/exoplayer2/source/I$a;->e:Lcom/google/android/exoplayer2/extractor/m;
.line 6
iput-object p6, p0, Lcom/google/android/exoplayer2/source/I$a;->f:Lcom/google/android/exoplayer2/util/h;
.line 7
new-instance p1, Lcom/google/android/exoplayer2/extractor/w;
invoke-direct {p1}, Lcom/google/android/exoplayer2/extractor/w;-><init>()V
iput-object p1, p0, Lcom/google/android/exoplayer2/source/I$a;->g:Lcom/google/android/exoplayer2/extractor/w;
const/4 p1, 0x1
.line 8
iput-boolean p1, p0, Lcom/google/android/exoplayer2/source/I$a;->i:Z
const-wide/16 p1, -0x1
.line 9
iput-wide p1, p0, Lcom/google/android/exoplayer2/source/I$a;->l:J
.line 10
invoke-static {}, Lcom/google/android/exoplayer2/source/v;->a()J
move-result-wide p1
iput-wide p1, p0, Lcom/google/android/exoplayer2/source/I$a;->a:J
const-wide/16 p1, 0x0
.line 11
invoke-direct {p0, p1, p2}, Lcom/google/android/exoplayer2/source/I$a;->a(J)Lcom/google/android/exoplayer2/upstream/n;
move-result-object p1
iput-object p1, p0, Lcom/google/android/exoplayer2/source/I$a;->k:Lcom/google/android/exoplayer2/upstream/n;
return-void
.end method
.method static synthetic a(Lcom/google/android/exoplayer2/source/I$a;)Lcom/google/android/exoplayer2/upstream/C;
.registers 1
.line 1
iget-object p0, p0, Lcom/google/android/exoplayer2/source/I$a;->c:Lcom/google/android/exoplayer2/upstream/C;
return-object p0
.end method
.method private a(J)Lcom/google/android/exoplayer2/upstream/n;
.registers 5
.line 9
new-instance v0, Lcom/google/android/exoplayer2/upstream/n$a;
invoke-direct {v0}, Lcom/google/android/exoplayer2/upstream/n$a;-><init>()V
iget-object v1, p0, Lcom/google/android/exoplayer2/source/I$a;->b:Landroid/net/Uri;
.line 10
invoke-virtual {v0, v1}, Lcom/google/android/exoplayer2/upstream/n$a;->a(Landroid/net/Uri;)Lcom/google/android/exoplayer2/upstream/n$a;
.line 11
invoke-virtual {v0, p1, p2}, Lcom/google/android/exoplayer2/upstream/n$a;->b(J)Lcom/google/android/exoplayer2/upstream/n$a;
iget-object p1, p0, Lcom/google/android/exoplayer2/source/I$a;->o:Lcom/google/android/exoplayer2/source/I;
.line 12
invoke-static {p1}, Lcom/google/android/exoplayer2/source/I;->d(Lcom/google/android/exoplayer2/source/I;)Ljava/lang/String;
move-result-object p1
invoke-virtual {v0, p1}, Lcom/google/android/exoplayer2/upstream/n$a;->a(Ljava/lang/String;)Lcom/google/android/exoplayer2/upstream/n$a;
const/4 p1, 0x6
.line 13
invoke-virtual {v0, p1}, Lcom/google/android/exoplayer2/upstream/n$a;->a(I)Lcom/google/android/exoplayer2/upstream/n$a;
.line 14
invoke-static {}, Lcom/google/android/exoplayer2/source/I;->h()Ljava/util/Map;
move-result-object p1
invoke-virtual {v0, p1}, Lcom/google/android/exoplayer2/upstream/n$a;->a(Ljava/util/Map;)Lcom/google/android/exoplayer2/upstream/n$a;
.line 15
invoke-virtual {v0}, Lcom/google/android/exoplayer2/upstream/n$a;->a()Lcom/google/android/exoplayer2/upstream/n;
move-result-object p1
return-object p1
.end method
.method private a(JJ)V
.registers 6
.line 16
iget-object v0, p0, Lcom/google/android/exoplayer2/source/I$a;->g:Lcom/google/android/exoplayer2/extractor/w;
iput-wide p1, v0, Lcom/google/android/exoplayer2/extractor/w;->a:J
.line 17
iput-wide p3, p0, Lcom/google/android/exoplayer2/source/I$a;->j:J
const/4 p1, 0x1
.line 18
iput-boolean p1, p0, Lcom/google/android/exoplayer2/source/I$a;->i:Z
const/4 p1, 0x0
.line 19
iput-boolean p1, p0, Lcom/google/android/exoplayer2/source/I$a;->n:Z
return-void
.end method
.method static synthetic a(Lcom/google/android/exoplayer2/source/I$a;JJ)V
.registers 5
.line 2
invoke-direct {p0, p1, p2, p3, p4}, Lcom/google/android/exoplayer2/source/I$a;->a(JJ)V
return-void
.end method
.method static synthetic b(Lcom/google/android/exoplayer2/source/I$a;)J
.registers 3
.line 1
iget-wide v0, p0, Lcom/google/android/exoplayer2/source/I$a;->a:J
return-wide v0
.end method
.method static synthetic c(Lcom/google/android/exoplayer2/source/I$a;)Lcom/google/android/exoplayer2/upstream/n;
.registers 1
.line 1
iget-object p0, p0, Lcom/google/android/exoplayer2/source/I$a;->k:Lcom/google/android/exoplayer2/upstream/n;
return-object p0
.end method
.method static synthetic d(Lcom/google/android/exoplayer2/source/I$a;)J
.registers 3
.line 1
iget-wide v0, p0, Lcom/google/android/exoplayer2/source/I$a;->j:J
return-wide v0
.end method
.method static synthetic e(Lcom/google/android/exoplayer2/source/I$a;)J
.registers 3
.line 1
iget-wide v0, p0, Lcom/google/android/exoplayer2/source/I$a;->l:J
return-wide v0
.end method
# virtual methods
.method public a(Lcom/google/android/exoplayer2/util/x;)V
.registers 11
.line 3
iget-boolean v0, p0, Lcom/google/android/exoplayer2/source/I$a;->n:Z
if-nez v0, :cond_7
iget-wide v0, p0, Lcom/google/android/exoplayer2/source/I$a;->j:J
goto :goto_13
:cond_7
iget-object v0, p0, Lcom/google/android/exoplayer2/source/I$a;->o:Lcom/google/android/exoplayer2/source/I;
invoke-static {v0}, Lcom/google/android/exoplayer2/source/I;->c(Lcom/google/android/exoplayer2/source/I;)J
move-result-wide v0
iget-wide v2, p0, Lcom/google/android/exoplayer2/source/I$a;->j:J
invoke-static {v0, v1, v2, v3}, Ljava/lang/Math;->max(JJ)J
move-result-wide v0
:goto_13
move-wide v3, v0
.line 4
invoke-virtual {p1}, Lcom/google/android/exoplayer2/util/x;->a()I
move-result v6
.line 5
iget-object v0, p0, Lcom/google/android/exoplayer2/source/I$a;->m:Lcom/google/android/exoplayer2/extractor/A;
invoke-static {v0}, Lcom/google/android/exoplayer2/util/d;->a(Ljava/lang/Object;)Ljava/lang/Object;
move-object v2, v0
check-cast v2, Lcom/google/android/exoplayer2/extractor/A;
.line 6
invoke-interface {v2, p1, v6}, Lcom/google/android/exoplayer2/extractor/A;->a(Lcom/google/android/exoplayer2/util/x;I)V
const/4 v5, 0x1
const/4 v7, 0x0
const/4 v8, 0x0
.line 7
invoke-interface/range {v2 .. v8}, Lcom/google/android/exoplayer2/extractor/A;->a(JIIILcom/google/android/exoplayer2/extractor/A$a;)V
const/4 p1, 0x1
.line 8
iput-boolean p1, p0, Lcom/google/android/exoplayer2/source/I$a;->n:Z
return-void
.end method
.method public cancelLoad()V
.registers 2
const/4 v0, 0x1
.line 1
iput-boolean v0, p0, Lcom/google/android/exoplayer2/source/I$a;->h:Z
return-void
.end method
.method public load()V
.registers 19
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/IOException;
}
.end annotation
move-object/from16 v1, p0
const/4 v0, 0x0
const/4 v2, 0x0
:goto_4
if-nez v2, :cond_122
.line 1
iget-boolean v3, v1, Lcom/google/android/exoplayer2/source/I$a;->h:Z
if-nez v3, :cond_122
const/4 v3, 0x1
const-wide/16 v4, -0x1
.line 2
:try_start_d
iget-object v6, v1, Lcom/google/android/exoplayer2/source/I$a;->g:Lcom/google/android/exoplayer2/extractor/w;
iget-wide v13, v6, Lcom/google/android/exoplayer2/extractor/w;->a:J
.line 3
invoke-direct {v1, v13, v14}, Lcom/google/android/exoplayer2/source/I$a;->a(J)Lcom/google/android/exoplayer2/upstream/n;
move-result-object v6
iput-object v6, v1, Lcom/google/android/exoplayer2/source/I$a;->k:Lcom/google/android/exoplayer2/upstream/n;
.line 4
iget-object v6, v1, Lcom/google/android/exoplayer2/source/I$a;->c:Lcom/google/android/exoplayer2/upstream/C;
iget-object v7, v1, Lcom/google/android/exoplayer2/source/I$a;->k:Lcom/google/android/exoplayer2/upstream/n;
invoke-virtual {v6, v7}, Lcom/google/android/exoplayer2/upstream/C;->a(Lcom/google/android/exoplayer2/upstream/n;)J
move-result-wide v6
iput-wide v6, v1, Lcom/google/android/exoplayer2/source/I$a;->l:J
.line 5
iget-wide v6, v1, Lcom/google/android/exoplayer2/source/I$a;->l:J
cmp-long v8, v6, v4
if-eqz v8, :cond_2c
.line 6
iget-wide v6, v1, Lcom/google/android/exoplayer2/source/I$a;->l:J
add-long/2addr v6, v13
iput-wide v6, v1, Lcom/google/android/exoplayer2/source/I$a;->l:J
.line 7
:cond_2c
iget-object v6, v1, Lcom/google/android/exoplayer2/source/I$a;->o:Lcom/google/android/exoplayer2/source/I;
iget-object v7, v1, Lcom/google/android/exoplayer2/source/I$a;->c:Lcom/google/android/exoplayer2/upstream/C;
invoke-virtual {v7}, Lcom/google/android/exoplayer2/upstream/C;->getResponseHeaders()Ljava/util/Map;
move-result-object v7
invoke-static {v7}, Lcom/google/android/exoplayer2/metadata/icy/IcyHeaders;->a(Ljava/util/Map;)Lcom/google/android/exoplayer2/metadata/icy/IcyHeaders;
move-result-object v7
invoke-static {v6, v7}, Lcom/google/android/exoplayer2/source/I;->a(Lcom/google/android/exoplayer2/source/I;Lcom/google/android/exoplayer2/metadata/icy/IcyHeaders;)Lcom/google/android/exoplayer2/metadata/icy/IcyHeaders;
.line 8
iget-object v6, v1, Lcom/google/android/exoplayer2/source/I$a;->c:Lcom/google/android/exoplayer2/upstream/C;
.line 9
iget-object v7, v1, Lcom/google/android/exoplayer2/source/I$a;->o:Lcom/google/android/exoplayer2/source/I;
invoke-static {v7}, Lcom/google/android/exoplayer2/source/I;->e(Lcom/google/android/exoplayer2/source/I;)Lcom/google/android/exoplayer2/metadata/icy/IcyHeaders;
move-result-object v7
if-eqz v7, :cond_70
iget-object v7, v1, Lcom/google/android/exoplayer2/source/I$a;->o:Lcom/google/android/exoplayer2/source/I;
invoke-static {v7}, Lcom/google/android/exoplayer2/source/I;->e(Lcom/google/android/exoplayer2/source/I;)Lcom/google/android/exoplayer2/metadata/icy/IcyHeaders;
move-result-object v7
iget v7, v7, Lcom/google/android/exoplayer2/metadata/icy/IcyHeaders;->f:I
const/4 v8, -0x1
if-eq v7, v8, :cond_70
.line 10
new-instance v6, Lcom/google/android/exoplayer2/source/u;
iget-object v7, v1, Lcom/google/android/exoplayer2/source/I$a;->c:Lcom/google/android/exoplayer2/upstream/C;
iget-object v8, v1, Lcom/google/android/exoplayer2/source/I$a;->o:Lcom/google/android/exoplayer2/source/I;
invoke-static {v8}, Lcom/google/android/exoplayer2/source/I;->e(Lcom/google/android/exoplayer2/source/I;)Lcom/google/android/exoplayer2/metadata/icy/IcyHeaders;
move-result-object v8
iget v8, v8, Lcom/google/android/exoplayer2/metadata/icy/IcyHeaders;->f:I
invoke-direct {v6, v7, v8, v1}, Lcom/google/android/exoplayer2/source/u;-><init>(Lcom/google/android/exoplayer2/upstream/k;ILcom/google/android/exoplayer2/source/u$a;)V
.line 11
iget-object v7, v1, Lcom/google/android/exoplayer2/source/I$a;->o:Lcom/google/android/exoplayer2/source/I;
invoke-virtual {v7}, Lcom/google/android/exoplayer2/source/I;->j()Lcom/google/android/exoplayer2/extractor/A;
move-result-object v7
iput-object v7, v1, Lcom/google/android/exoplayer2/source/I$a;->m:Lcom/google/android/exoplayer2/extractor/A;
.line 12
iget-object v7, v1, Lcom/google/android/exoplayer2/source/I$a;->m:Lcom/google/android/exoplayer2/extractor/A;
invoke-static {}, Lcom/google/android/exoplayer2/source/I;->i()Lcom/google/android/exoplayer2/Format;
move-result-object v8
invoke-interface {v7, v8}, Lcom/google/android/exoplayer2/extractor/A;->a(Lcom/google/android/exoplayer2/Format;)V
:cond_70
move-object v8, v6
.line 13
iget-object v7, v1, Lcom/google/android/exoplayer2/source/I$a;->d:Lcom/google/android/exoplayer2/source/H;
iget-object v9, v1, Lcom/google/android/exoplayer2/source/I$a;->b:Landroid/net/Uri;
iget-object v6, v1, Lcom/google/android/exoplayer2/source/I$a;->c:Lcom/google/android/exoplayer2/upstream/C;
.line 14
invoke-virtual {v6}, Lcom/google/android/exoplayer2/upstream/C;->getResponseHeaders()Ljava/util/Map;
move-result-object v10
iget-wide v11, v1, Lcom/google/android/exoplayer2/source/I$a;->l:J
iget-object v15, v1, Lcom/google/android/exoplayer2/source/I$a;->e:Lcom/google/android/exoplayer2/extractor/m;
move-wide/from16 v16, v11
move-wide v11, v13
move-wide v4, v13
move-wide/from16 v13, v16
.line 15
invoke-interface/range {v7 .. v15}, Lcom/google/android/exoplayer2/source/H;->a(Lcom/google/android/exoplayer2/upstream/h;Landroid/net/Uri;Ljava/util/Map;JJLcom/google/android/exoplayer2/extractor/m;)V
.line 16
iget-object v6, v1, Lcom/google/android/exoplayer2/source/I$a;->o:Lcom/google/android/exoplayer2/source/I;
invoke-static {v6}, Lcom/google/android/exoplayer2/source/I;->e(Lcom/google/android/exoplayer2/source/I;)Lcom/google/android/exoplayer2/metadata/icy/IcyHeaders;
move-result-object v6
if-eqz v6, :cond_95
.line 17
iget-object v6, v1, Lcom/google/android/exoplayer2/source/I$a;->d:Lcom/google/android/exoplayer2/source/H;
invoke-interface {v6}, Lcom/google/android/exoplayer2/source/H;->a()V
.line 18
:cond_95
iget-boolean v6, v1, Lcom/google/android/exoplayer2/source/I$a;->i:Z
if-eqz v6, :cond_a2
.line 19
iget-object v6, v1, Lcom/google/android/exoplayer2/source/I$a;->d:Lcom/google/android/exoplayer2/source/H;
iget-wide v7, v1, Lcom/google/android/exoplayer2/source/I$a;->j:J
invoke-interface {v6, v4, v5, v7, v8}, Lcom/google/android/exoplayer2/source/H;->a(JJ)V
.line 20
iput-boolean v0, v1, Lcom/google/android/exoplayer2/source/I$a;->i:Z
:cond_a2
:goto_a2
if-nez v2, :cond_e2
.line 21
iget-boolean v6, v1, Lcom/google/android/exoplayer2/source/I$a;->h:Z
:try_end_a6
.catchall {:try_start_d .. :try_end_a6} :catchall_103
if-nez v6, :cond_e2
.line 22
:try_start_a8
iget-object v6, v1, Lcom/google/android/exoplayer2/source/I$a;->f:Lcom/google/android/exoplayer2/util/h;
invoke-virtual {v6}, Lcom/google/android/exoplayer2/util/h;->a()V
:try_end_ad
.catch Ljava/lang/InterruptedException; {:try_start_a8 .. :try_end_ad} :catch_dc
.catchall {:try_start_a8 .. :try_end_ad} :catchall_103
.line 23
:try_start_ad
iget-object v6, v1, Lcom/google/android/exoplayer2/source/I$a;->d:Lcom/google/android/exoplayer2/source/H;
iget-object v7, v1, Lcom/google/android/exoplayer2/source/I$a;->g:Lcom/google/android/exoplayer2/extractor/w;
invoke-interface {v6, v7}, Lcom/google/android/exoplayer2/source/H;->a(Lcom/google/android/exoplayer2/extractor/w;)I
move-result v2
.line 24
iget-object v6, v1, Lcom/google/android/exoplayer2/source/I$a;->d:Lcom/google/android/exoplayer2/source/H;
invoke-interface {v6}, Lcom/google/android/exoplayer2/source/H;->b()J
move-result-wide v6
.line 25
iget-object v8, v1, Lcom/google/android/exoplayer2/source/I$a;->o:Lcom/google/android/exoplayer2/source/I;
invoke-static {v8}, Lcom/google/android/exoplayer2/source/I;->f(Lcom/google/android/exoplayer2/source/I;)J
move-result-wide v8
add-long/2addr v8, v4
cmp-long v10, v6, v8
if-lez v10, :cond_a2
.line 26
iget-object v4, v1, Lcom/google/android/exoplayer2/source/I$a;->f:Lcom/google/android/exoplayer2/util/h;
invoke-virtual {v4}, Lcom/google/android/exoplayer2/util/h;->b()Z
.line 27
iget-object v4, v1, Lcom/google/android/exoplayer2/source/I$a;->o:Lcom/google/android/exoplayer2/source/I;
invoke-static {v4}, Lcom/google/android/exoplayer2/source/I;->b(Lcom/google/android/exoplayer2/source/I;)Landroid/os/Handler;
move-result-object v4
iget-object v5, v1, Lcom/google/android/exoplayer2/source/I$a;->o:Lcom/google/android/exoplayer2/source/I;
invoke-static {v5}, Lcom/google/android/exoplayer2/source/I;->a(Lcom/google/android/exoplayer2/source/I;)Ljava/lang/Runnable;
move-result-object v5
invoke-virtual {v4, v5}, Landroid/os/Handler;->post(Ljava/lang/Runnable;)Z
move-wide v4, v6
goto :goto_a2
.line 28
:catch_dc
new-instance v0, Ljava/io/InterruptedIOException;
invoke-direct {v0}, Ljava/io/InterruptedIOException;-><init>()V
throw v0
:try_end_e2
.catchall {:try_start_ad .. :try_end_e2} :catchall_103
:cond_e2
if-ne v2, v3, :cond_e6
const/4 v2, 0x0
goto :goto_fc
.line 29
:cond_e6
iget-object v3, v1, Lcom/google/android/exoplayer2/source/I$a;->d:Lcom/google/android/exoplayer2/source/H;
invoke-interface {v3}, Lcom/google/android/exoplayer2/source/H;->b()J
move-result-wide v3
const-wide/16 v5, -0x1
cmp-long v7, v3, v5
if-eqz v7, :cond_fc
.line 30
iget-object v3, v1, Lcom/google/android/exoplayer2/source/I$a;->g:Lcom/google/android/exoplayer2/extractor/w;
iget-object v4, v1, Lcom/google/android/exoplayer2/source/I$a;->d:Lcom/google/android/exoplayer2/source/H;
invoke-interface {v4}, Lcom/google/android/exoplayer2/source/H;->b()J
move-result-wide v4
iput-wide v4, v3, Lcom/google/android/exoplayer2/extractor/w;->a:J
.line 31
:cond_fc
:goto_fc
iget-object v3, v1, Lcom/google/android/exoplayer2/source/I$a;->c:Lcom/google/android/exoplayer2/upstream/C;
invoke-static {v3}, Lcom/google/android/exoplayer2/util/L;->a(Lcom/google/android/exoplayer2/upstream/k;)V
goto/16 :goto_4
:catchall_103
move-exception v0
if-eq v2, v3, :cond_11c
.line 32
iget-object v2, v1, Lcom/google/android/exoplayer2/source/I$a;->d:Lcom/google/android/exoplayer2/source/H;
invoke-interface {v2}, Lcom/google/android/exoplayer2/source/H;->b()J
move-result-wide v2
const-wide/16 v4, -0x1
cmp-long v6, v2, v4
if-eqz v6, :cond_11c
.line 33
iget-object v2, v1, Lcom/google/android/exoplayer2/source/I$a;->g:Lcom/google/android/exoplayer2/extractor/w;
iget-object v3, v1, Lcom/google/android/exoplayer2/source/I$a;->d:Lcom/google/android/exoplayer2/source/H;
invoke-interface {v3}, Lcom/google/android/exoplayer2/source/H;->b()J
move-result-wide v3
iput-wide v3, v2, Lcom/google/android/exoplayer2/extractor/w;->a:J
.line 34
:cond_11c
iget-object v2, v1, Lcom/google/android/exoplayer2/source/I$a;->c:Lcom/google/android/exoplayer2/upstream/C;
invoke-static {v2}, Lcom/google/android/exoplayer2/util/L;->a(Lcom/google/android/exoplayer2/upstream/k;)V
.line 35
throw v0
:cond_122
return-void
.end method