ChunkExtractorWrapper$BindingTrackOutput.smali
.class final Lcom/google/android/exoplayer2/source/chunk/ChunkExtractorWrapper$BindingTrackOutput;
.super Ljava/lang/Object;
.source "ChunkExtractorWrapper.java"
# interfaces
.implements Lcom/google/android/exoplayer2/extractor/TrackOutput;
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/google/android/exoplayer2/source/chunk/ChunkExtractorWrapper;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x1a
name = "BindingTrackOutput"
.end annotation
# instance fields
.field private final dummyTrackOutput:Lcom/google/android/exoplayer2/extractor/DummyTrackOutput;
.field private endTimeUs:J
.field private final id:I
.field private final manifestFormat:Lcom/google/android/exoplayer2/Format;
.field public sampleFormat:Lcom/google/android/exoplayer2/Format;
.field private trackOutput:Lcom/google/android/exoplayer2/extractor/TrackOutput;
.field private final type:I
# direct methods
.method static constructor <clinit>()V
.registers 1
return-void
.end method
.method public constructor <init>(IILcom/google/android/exoplayer2/Format;)V
.registers 5
.param p1, "id" # I
.param p2, "type" # I
.param p3, "manifestFormat" # Lcom/google/android/exoplayer2/Format;
.line 172
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 173
iput p1, p0, Lcom/google/android/exoplayer2/source/chunk/ChunkExtractorWrapper$BindingTrackOutput;->id:I
.line 174
iput p2, p0, Lcom/google/android/exoplayer2/source/chunk/ChunkExtractorWrapper$BindingTrackOutput;->type:I
.line 175
iput-object p3, p0, Lcom/google/android/exoplayer2/source/chunk/ChunkExtractorWrapper$BindingTrackOutput;->manifestFormat:Lcom/google/android/exoplayer2/Format;
.line 176
new-instance v0, Lcom/google/android/exoplayer2/extractor/DummyTrackOutput;
invoke-direct {v0}, Lcom/google/android/exoplayer2/extractor/DummyTrackOutput;-><init>()V
iput-object v0, p0, Lcom/google/android/exoplayer2/source/chunk/ChunkExtractorWrapper$BindingTrackOutput;->dummyTrackOutput:Lcom/google/android/exoplayer2/extractor/DummyTrackOutput;
.line 177
return-void
.end method
# virtual methods
.method public bind(Lcom/google/android/exoplayer2/source/chunk/ChunkExtractorWrapper$TrackOutputProvider;J)V
.registers 6
.param p1, "trackOutputProvider" # Lcom/google/android/exoplayer2/source/chunk/ChunkExtractorWrapper$TrackOutputProvider;
.param p2, "endTimeUs" # J
.line 180
if-nez p1, :cond_7
.line 181
iget-object v0, p0, Lcom/google/android/exoplayer2/source/chunk/ChunkExtractorWrapper$BindingTrackOutput;->dummyTrackOutput:Lcom/google/android/exoplayer2/extractor/DummyTrackOutput;
iput-object v0, p0, Lcom/google/android/exoplayer2/source/chunk/ChunkExtractorWrapper$BindingTrackOutput;->trackOutput:Lcom/google/android/exoplayer2/extractor/TrackOutput;
.line 182
return-void
.line 184
:cond_7
iput-wide p2, p0, Lcom/google/android/exoplayer2/source/chunk/ChunkExtractorWrapper$BindingTrackOutput;->endTimeUs:J
.line 185
iget v0, p0, Lcom/google/android/exoplayer2/source/chunk/ChunkExtractorWrapper$BindingTrackOutput;->id:I
iget v1, p0, Lcom/google/android/exoplayer2/source/chunk/ChunkExtractorWrapper$BindingTrackOutput;->type:I
invoke-interface {p1, v0, v1}, Lcom/google/android/exoplayer2/source/chunk/ChunkExtractorWrapper$TrackOutputProvider;->track(II)Lcom/google/android/exoplayer2/extractor/TrackOutput;
move-result-object v0
iput-object v0, p0, Lcom/google/android/exoplayer2/source/chunk/ChunkExtractorWrapper$BindingTrackOutput;->trackOutput:Lcom/google/android/exoplayer2/extractor/TrackOutput;
.line 186
iget-object v1, p0, Lcom/google/android/exoplayer2/source/chunk/ChunkExtractorWrapper$BindingTrackOutput;->sampleFormat:Lcom/google/android/exoplayer2/Format;
if-eqz v1, :cond_1a
.line 187
invoke-interface {v0, v1}, Lcom/google/android/exoplayer2/extractor/TrackOutput;->format(Lcom/google/android/exoplayer2/Format;)V
.line 189
:cond_1a
return-void
.end method
.method public format(Lcom/google/android/exoplayer2/Format;)V
.registers 4
.param p1, "format" # Lcom/google/android/exoplayer2/Format;
.line 193
iget-object v0, p0, Lcom/google/android/exoplayer2/source/chunk/ChunkExtractorWrapper$BindingTrackOutput;->manifestFormat:Lcom/google/android/exoplayer2/Format;
if-eqz v0, :cond_9
invoke-virtual {p1, v0}, Lcom/google/android/exoplayer2/Format;->copyWithManifestFormatInfo(Lcom/google/android/exoplayer2/Format;)Lcom/google/android/exoplayer2/Format;
move-result-object v0
goto :goto_a
:cond_9
move-object v0, p1
:goto_a
iput-object v0, p0, Lcom/google/android/exoplayer2/source/chunk/ChunkExtractorWrapper$BindingTrackOutput;->sampleFormat:Lcom/google/android/exoplayer2/Format;
.line 195
iget-object v1, p0, Lcom/google/android/exoplayer2/source/chunk/ChunkExtractorWrapper$BindingTrackOutput;->trackOutput:Lcom/google/android/exoplayer2/extractor/TrackOutput;
invoke-interface {v1, v0}, Lcom/google/android/exoplayer2/extractor/TrackOutput;->format(Lcom/google/android/exoplayer2/Format;)V
.line 196
return-void
.end method
.method public sampleData(Lcom/google/android/exoplayer2/extractor/ExtractorInput;IZ)I
.registers 5
.param p1, "input" # Lcom/google/android/exoplayer2/extractor/ExtractorInput;
.param p2, "length" # I
.param p3, "allowEndOfInput" # Z
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/IOException;,
Ljava/lang/InterruptedException;
}
.end annotation
.line 201
iget-object v0, p0, Lcom/google/android/exoplayer2/source/chunk/ChunkExtractorWrapper$BindingTrackOutput;->trackOutput:Lcom/google/android/exoplayer2/extractor/TrackOutput;
invoke-interface {v0, p1, p2, p3}, Lcom/google/android/exoplayer2/extractor/TrackOutput;->sampleData(Lcom/google/android/exoplayer2/extractor/ExtractorInput;IZ)I
move-result v0
return v0
.end method
.method public sampleData(Lcom/google/android/exoplayer2/util/ParsableByteArray;I)V
.registers 4
.param p1, "data" # Lcom/google/android/exoplayer2/util/ParsableByteArray;
.param p2, "length" # I
.line 206
iget-object v0, p0, Lcom/google/android/exoplayer2/source/chunk/ChunkExtractorWrapper$BindingTrackOutput;->trackOutput:Lcom/google/android/exoplayer2/extractor/TrackOutput;
invoke-interface {v0, p1, p2}, Lcom/google/android/exoplayer2/extractor/TrackOutput;->sampleData(Lcom/google/android/exoplayer2/util/ParsableByteArray;I)V
.line 207
return-void
.end method
.method public sampleMetadata(JIIILcom/google/android/exoplayer2/extractor/TrackOutput$CryptoData;)V
.registers 15
.param p1, "timeUs" # J
.param p3, "flags" # I
.param p4, "size" # I
.param p5, "offset" # I
.param p6, "cryptoData" # Lcom/google/android/exoplayer2/extractor/TrackOutput$CryptoData;
.line 212
iget-wide v0, p0, Lcom/google/android/exoplayer2/source/chunk/ChunkExtractorWrapper$BindingTrackOutput;->endTimeUs:J
const-wide v2, -0x7fffffffffffffffL # -4.9E-324
cmp-long v4, v0, v2
if-eqz v4, :cond_13
cmp-long v2, p1, v0
if-ltz v2, :cond_13
.line 213
iget-object v0, p0, Lcom/google/android/exoplayer2/source/chunk/ChunkExtractorWrapper$BindingTrackOutput;->dummyTrackOutput:Lcom/google/android/exoplayer2/extractor/DummyTrackOutput;
iput-object v0, p0, Lcom/google/android/exoplayer2/source/chunk/ChunkExtractorWrapper$BindingTrackOutput;->trackOutput:Lcom/google/android/exoplayer2/extractor/TrackOutput;
.line 215
:cond_13
iget-object v1, p0, Lcom/google/android/exoplayer2/source/chunk/ChunkExtractorWrapper$BindingTrackOutput;->trackOutput:Lcom/google/android/exoplayer2/extractor/TrackOutput;
move-wide v2, p1
move v4, p3
move v5, p4
move v6, p5
move-object v7, p6
invoke-interface/range {v1 .. v7}, Lcom/google/android/exoplayer2/extractor/TrackOutput;->sampleMetadata(JIIILcom/google/android/exoplayer2/extractor/TrackOutput$CryptoData;)V
.line 216
return-void
.end method