e.smali
.class final Lcom/google/android/exoplayer2/extractor/flv/e;
.super Lcom/google/android/exoplayer2/extractor/flv/TagPayloadReader;
.source "VideoTagPayloadReader.java"
# instance fields
.field private final b:Lcom/google/android/exoplayer2/util/x;
.field private final c:Lcom/google/android/exoplayer2/util/x;
.field private d:I
.field private e:Z
.field private f:Z
.field private g:I
# direct methods
.method public constructor <init>(Lcom/google/android/exoplayer2/extractor/A;)V
.registers 3
.line 1
invoke-direct {p0, p1}, Lcom/google/android/exoplayer2/extractor/flv/TagPayloadReader;-><init>(Lcom/google/android/exoplayer2/extractor/A;)V
.line 2
new-instance p1, Lcom/google/android/exoplayer2/util/x;
sget-object v0, Lcom/google/android/exoplayer2/util/u;->a:[B
invoke-direct {p1, v0}, Lcom/google/android/exoplayer2/util/x;-><init>([B)V
iput-object p1, p0, Lcom/google/android/exoplayer2/extractor/flv/e;->b:Lcom/google/android/exoplayer2/util/x;
.line 3
new-instance p1, Lcom/google/android/exoplayer2/util/x;
const/4 v0, 0x4
invoke-direct {p1, v0}, Lcom/google/android/exoplayer2/util/x;-><init>(I)V
iput-object p1, p0, Lcom/google/android/exoplayer2/extractor/flv/e;->c:Lcom/google/android/exoplayer2/util/x;
return-void
.end method
# virtual methods
.method protected a(Lcom/google/android/exoplayer2/util/x;)Z
.registers 5
.annotation system Ldalvik/annotation/Throws;
value = {
Lcom/google/android/exoplayer2/extractor/flv/TagPayloadReader$UnsupportedFormatException;
}
.end annotation
.line 1
invoke-virtual {p1}, Lcom/google/android/exoplayer2/util/x;->w()I
move-result p1
shr-int/lit8 v0, p1, 0x4
and-int/lit8 v0, v0, 0xf
and-int/lit8 p1, p1, 0xf
const/4 v1, 0x7
if-ne p1, v1, :cond_16
.line 2
iput v0, p0, Lcom/google/android/exoplayer2/extractor/flv/e;->g:I
const/4 p1, 0x5
if-eq v0, p1, :cond_14
const/4 p1, 0x1
goto :goto_15
:cond_14
const/4 p1, 0x0
:goto_15
return p1
.line 3
:cond_16
new-instance v0, Lcom/google/android/exoplayer2/extractor/flv/TagPayloadReader$UnsupportedFormatException;
const/16 v1, 0x27
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2, v1}, Ljava/lang/StringBuilder;-><init>(I)V
const-string v1, "Video format not supported: "
invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-direct {v0, p1}, Lcom/google/android/exoplayer2/extractor/flv/TagPayloadReader$UnsupportedFormatException;-><init>(Ljava/lang/String;)V
throw v0
.end method
.method protected b(Lcom/google/android/exoplayer2/util/x;J)Z
.registers 14
.annotation system Ldalvik/annotation/Throws;
value = {
Lcom/google/android/exoplayer2/ParserException;
}
.end annotation
.line 1
invoke-virtual {p1}, Lcom/google/android/exoplayer2/util/x;->w()I
move-result v0
.line 2
invoke-virtual {p1}, Lcom/google/android/exoplayer2/util/x;->k()I
move-result v1
int-to-long v1, v1
const-wide/16 v3, 0x3e8
mul-long v1, v1, v3
add-long v4, p2, v1
const/4 p2, 0x1
const/4 p3, 0x0
if-nez v0, :cond_5f
.line 3
iget-boolean v1, p0, Lcom/google/android/exoplayer2/extractor/flv/e;->e:Z
if-nez v1, :cond_5f
.line 4
new-instance v0, Lcom/google/android/exoplayer2/util/x;
invoke-virtual {p1}, Lcom/google/android/exoplayer2/util/x;->a()I
move-result v1
new-array v1, v1, [B
invoke-direct {v0, v1}, Lcom/google/android/exoplayer2/util/x;-><init>([B)V
.line 5
invoke-virtual {v0}, Lcom/google/android/exoplayer2/util/x;->c()[B
move-result-object v1
invoke-virtual {p1}, Lcom/google/android/exoplayer2/util/x;->a()I
move-result v2
invoke-virtual {p1, v1, p3, v2}, Lcom/google/android/exoplayer2/util/x;->a([BII)V
.line 6
invoke-static {v0}, Lcom/google/android/exoplayer2/video/i;->a(Lcom/google/android/exoplayer2/util/x;)Lcom/google/android/exoplayer2/video/i;
move-result-object p1
.line 7
iget v0, p1, Lcom/google/android/exoplayer2/video/i;->b:I
iput v0, p0, Lcom/google/android/exoplayer2/extractor/flv/e;->d:I
.line 8
new-instance v0, Lcom/google/android/exoplayer2/Format$a;
invoke-direct {v0}, Lcom/google/android/exoplayer2/Format$a;-><init>()V
const-string v1, "video/avc"
.line 9
invoke-virtual {v0, v1}, Lcom/google/android/exoplayer2/Format$a;->f(Ljava/lang/String;)Lcom/google/android/exoplayer2/Format$a;
iget v1, p1, Lcom/google/android/exoplayer2/video/i;->c:I
.line 10
invoke-virtual {v0, v1}, Lcom/google/android/exoplayer2/Format$a;->p(I)Lcom/google/android/exoplayer2/Format$a;
iget v1, p1, Lcom/google/android/exoplayer2/video/i;->d:I
.line 11
invoke-virtual {v0, v1}, Lcom/google/android/exoplayer2/Format$a;->f(I)Lcom/google/android/exoplayer2/Format$a;
iget v1, p1, Lcom/google/android/exoplayer2/video/i;->e:F
.line 12
invoke-virtual {v0, v1}, Lcom/google/android/exoplayer2/Format$a;->b(F)Lcom/google/android/exoplayer2/Format$a;
iget-object p1, p1, Lcom/google/android/exoplayer2/video/i;->a:Ljava/util/List;
.line 13
invoke-virtual {v0, p1}, Lcom/google/android/exoplayer2/Format$a;->a(Ljava/util/List;)Lcom/google/android/exoplayer2/Format$a;
.line 14
invoke-virtual {v0}, Lcom/google/android/exoplayer2/Format$a;->a()Lcom/google/android/exoplayer2/Format;
move-result-object p1
.line 15
iget-object v0, p0, Lcom/google/android/exoplayer2/extractor/flv/TagPayloadReader;->a:Lcom/google/android/exoplayer2/extractor/A;
invoke-interface {v0, p1}, Lcom/google/android/exoplayer2/extractor/A;->a(Lcom/google/android/exoplayer2/Format;)V
.line 16
iput-boolean p2, p0, Lcom/google/android/exoplayer2/extractor/flv/e;->e:Z
return p3
:cond_5f
if-ne v0, p2, :cond_c1
.line 17
iget-boolean v0, p0, Lcom/google/android/exoplayer2/extractor/flv/e;->e:Z
if-eqz v0, :cond_c1
.line 18
iget v0, p0, Lcom/google/android/exoplayer2/extractor/flv/e;->g:I
if-ne v0, p2, :cond_6b
const/4 v6, 0x1
goto :goto_6c
:cond_6b
const/4 v6, 0x0
.line 19
:goto_6c
iget-boolean v0, p0, Lcom/google/android/exoplayer2/extractor/flv/e;->f:Z
if-nez v0, :cond_73
if-nez v6, :cond_73
return p3
.line 20
:cond_73
iget-object v0, p0, Lcom/google/android/exoplayer2/extractor/flv/e;->c:Lcom/google/android/exoplayer2/util/x;
invoke-virtual {v0}, Lcom/google/android/exoplayer2/util/x;->c()[B
move-result-object v0
.line 21
aput-byte p3, v0, p3
.line 22
aput-byte p3, v0, p2
const/4 v1, 0x2
.line 23
aput-byte p3, v0, v1
.line 24
iget v0, p0, Lcom/google/android/exoplayer2/extractor/flv/e;->d:I
const/4 v1, 0x4
rsub-int/lit8 v0, v0, 0x4
const/4 v7, 0x0
.line 25
:goto_86
invoke-virtual {p1}, Lcom/google/android/exoplayer2/util/x;->a()I
move-result v2
if-lez v2, :cond_b7
.line 26
iget-object v2, p0, Lcom/google/android/exoplayer2/extractor/flv/e;->c:Lcom/google/android/exoplayer2/util/x;
invoke-virtual {v2}, Lcom/google/android/exoplayer2/util/x;->c()[B
move-result-object v2
iget v3, p0, Lcom/google/android/exoplayer2/extractor/flv/e;->d:I
invoke-virtual {p1, v2, v0, v3}, Lcom/google/android/exoplayer2/util/x;->a([BII)V
.line 27
iget-object v2, p0, Lcom/google/android/exoplayer2/extractor/flv/e;->c:Lcom/google/android/exoplayer2/util/x;
invoke-virtual {v2, p3}, Lcom/google/android/exoplayer2/util/x;->e(I)V
.line 28
iget-object v2, p0, Lcom/google/android/exoplayer2/extractor/flv/e;->c:Lcom/google/android/exoplayer2/util/x;
invoke-virtual {v2}, Lcom/google/android/exoplayer2/util/x;->A()I
move-result v2
.line 29
iget-object v3, p0, Lcom/google/android/exoplayer2/extractor/flv/e;->b:Lcom/google/android/exoplayer2/util/x;
invoke-virtual {v3, p3}, Lcom/google/android/exoplayer2/util/x;->e(I)V
.line 30
iget-object v3, p0, Lcom/google/android/exoplayer2/extractor/flv/TagPayloadReader;->a:Lcom/google/android/exoplayer2/extractor/A;
iget-object v8, p0, Lcom/google/android/exoplayer2/extractor/flv/e;->b:Lcom/google/android/exoplayer2/util/x;
invoke-interface {v3, v8, v1}, Lcom/google/android/exoplayer2/extractor/A;->a(Lcom/google/android/exoplayer2/util/x;I)V
add-int/lit8 v7, v7, 0x4
.line 31
iget-object v3, p0, Lcom/google/android/exoplayer2/extractor/flv/TagPayloadReader;->a:Lcom/google/android/exoplayer2/extractor/A;
invoke-interface {v3, p1, v2}, Lcom/google/android/exoplayer2/extractor/A;->a(Lcom/google/android/exoplayer2/util/x;I)V
add-int/2addr v7, v2
goto :goto_86
.line 32
:cond_b7
iget-object v3, p0, Lcom/google/android/exoplayer2/extractor/flv/TagPayloadReader;->a:Lcom/google/android/exoplayer2/extractor/A;
const/4 v8, 0x0
const/4 v9, 0x0
invoke-interface/range {v3 .. v9}, Lcom/google/android/exoplayer2/extractor/A;->a(JIIILcom/google/android/exoplayer2/extractor/A$a;)V
.line 33
iput-boolean p2, p0, Lcom/google/android/exoplayer2/extractor/flv/e;->f:Z
return p2
:cond_c1
return p3
.end method