t.smali
.class public final Lcom/google/android/exoplayer2/mediacodec/t;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Lcom/google/android/exoplayer2/mediacodec/l;
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/google/android/exoplayer2/mediacodec/t$a;
}
.end annotation
# instance fields
.field public final a:Landroid/media/MediaCodec;
.field public b:[Ljava/nio/ByteBuffer;
.field public c:[Ljava/nio/ByteBuffer;
# direct methods
.method public constructor <init>(Landroid/media/MediaCodec;)V
.registers 4
.line 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 2
iput-object p1, p0, Lcom/google/android/exoplayer2/mediacodec/t;->a:Landroid/media/MediaCodec;
.line 3
sget v0, Lcom/google/android/exoplayer2/util/k0;->a:I
const/16 v1, 0x15
if-ge v0, v1, :cond_17
.line 4
invoke-virtual {p1}, Landroid/media/MediaCodec;->getInputBuffers()[Ljava/nio/ByteBuffer;
move-result-object v0
iput-object v0, p0, Lcom/google/android/exoplayer2/mediacodec/t;->b:[Ljava/nio/ByteBuffer;
.line 5
invoke-virtual {p1}, Landroid/media/MediaCodec;->getOutputBuffers()[Ljava/nio/ByteBuffer;
move-result-object p1
iput-object p1, p0, Lcom/google/android/exoplayer2/mediacodec/t;->c:[Ljava/nio/ByteBuffer;
:cond_17
return-void
.end method
# virtual methods
.method public final a(I)V
.registers 3
iget-object v0, p0, Lcom/google/android/exoplayer2/mediacodec/t;->a:Landroid/media/MediaCodec;
invoke-virtual {v0, p1}, Landroid/media/MediaCodec;->setVideoScalingMode(I)V
return-void
.end method
.method public final b()V
.registers 1
return-void
.end method
.method public final c(IJ)V
.registers 5
iget-object v0, p0, Lcom/google/android/exoplayer2/mediacodec/t;->a:Landroid/media/MediaCodec;
invoke-virtual {v0, p1, p2, p3}, Landroid/media/MediaCodec;->releaseOutputBuffer(IJ)V
return-void
.end method
.method public final d(Landroid/media/MediaCodec$BufferInfo;)I
.registers 6
.line 1
:cond_0
iget-object v0, p0, Lcom/google/android/exoplayer2/mediacodec/t;->a:Landroid/media/MediaCodec;
const-wide/16 v1, 0x0
invoke-virtual {v0, p1, v1, v2}, Landroid/media/MediaCodec;->dequeueOutputBuffer(Landroid/media/MediaCodec$BufferInfo;J)I
move-result v0
const/4 v1, -0x3
if-ne v0, v1, :cond_19
.line 2
sget v2, Lcom/google/android/exoplayer2/util/k0;->a:I
const/16 v3, 0x15
if-ge v2, v3, :cond_19
.line 3
iget-object v2, p0, Lcom/google/android/exoplayer2/mediacodec/t;->a:Landroid/media/MediaCodec;
invoke-virtual {v2}, Landroid/media/MediaCodec;->getOutputBuffers()[Ljava/nio/ByteBuffer;
move-result-object v2
iput-object v2, p0, Lcom/google/android/exoplayer2/mediacodec/t;->c:[Ljava/nio/ByteBuffer;
:cond_19
if-eq v0, v1, :cond_0
return v0
.end method
.method public final e(ILcom/google/android/exoplayer2/decoder/c;J)V
.registers 12
.line 1
iget-object v0, p0, Lcom/google/android/exoplayer2/mediacodec/t;->a:Landroid/media/MediaCodec;
.line 2
iget-object v3, p2, Lcom/google/android/exoplayer2/decoder/c;->i:Landroid/media/MediaCodec$CryptoInfo;
const/4 v2, 0x0
const/4 v6, 0x0
move v1, p1
move-wide v4, p3
.line 3
invoke-virtual/range {v0 .. v6}, Landroid/media/MediaCodec;->queueSecureInputBuffer(IILandroid/media/MediaCodec$CryptoInfo;JI)V
return-void
.end method
.method public final f(IIJI)V
.registers 13
iget-object v0, p0, Lcom/google/android/exoplayer2/mediacodec/t;->a:Landroid/media/MediaCodec;
const/4 v2, 0x0
move v1, p1
move v3, p2
move-wide v4, p3
move v6, p5
invoke-virtual/range {v0 .. v6}, Landroid/media/MediaCodec;->queueInputBuffer(IIIJI)V
return-void
.end method
.method public final flush()V
.registers 2
iget-object v0, p0, Lcom/google/android/exoplayer2/mediacodec/t;->a:Landroid/media/MediaCodec;
invoke-virtual {v0}, Landroid/media/MediaCodec;->flush()V
return-void
.end method
.method public final g(Lcom/google/android/exoplayer2/mediacodec/l$c;Landroid/os/Handler;)V
.registers 5
iget-object v0, p0, Lcom/google/android/exoplayer2/mediacodec/t;->a:Landroid/media/MediaCodec;
new-instance v1, Lcom/google/android/exoplayer2/mediacodec/s;
invoke-direct {v1, p0, p1}, Lcom/google/android/exoplayer2/mediacodec/s;-><init>(Lcom/google/android/exoplayer2/mediacodec/t;Lcom/google/android/exoplayer2/mediacodec/l$c;)V
invoke-virtual {v0, v1, p2}, Landroid/media/MediaCodec;->setOnFrameRenderedListener(Landroid/media/MediaCodec$OnFrameRenderedListener;Landroid/os/Handler;)V
return-void
.end method
.method public final getOutputFormat()Landroid/media/MediaFormat;
.registers 2
iget-object v0, p0, Lcom/google/android/exoplayer2/mediacodec/t;->a:Landroid/media/MediaCodec;
invoke-virtual {v0}, Landroid/media/MediaCodec;->getOutputFormat()Landroid/media/MediaFormat;
move-result-object v0
return-object v0
.end method
.method public final h(I)Ljava/nio/ByteBuffer;
.registers 4
.line 1
sget v0, Lcom/google/android/exoplayer2/util/k0;->a:I
const/16 v1, 0x15
if-lt v0, v1, :cond_d
.line 2
iget-object v0, p0, Lcom/google/android/exoplayer2/mediacodec/t;->a:Landroid/media/MediaCodec;
invoke-virtual {v0, p1}, Landroid/media/MediaCodec;->getInputBuffer(I)Ljava/nio/ByteBuffer;
move-result-object p1
return-object p1
.line 3
:cond_d
iget-object v0, p0, Lcom/google/android/exoplayer2/mediacodec/t;->b:[Ljava/nio/ByteBuffer;
aget-object p1, v0, p1
return-object p1
.end method
.method public final i(Landroid/view/Surface;)V
.registers 3
iget-object v0, p0, Lcom/google/android/exoplayer2/mediacodec/t;->a:Landroid/media/MediaCodec;
invoke-virtual {v0, p1}, Landroid/media/MediaCodec;->setOutputSurface(Landroid/view/Surface;)V
return-void
.end method
.method public final j()I
.registers 4
iget-object v0, p0, Lcom/google/android/exoplayer2/mediacodec/t;->a:Landroid/media/MediaCodec;
const-wide/16 v1, 0x0
invoke-virtual {v0, v1, v2}, Landroid/media/MediaCodec;->dequeueInputBuffer(J)I
move-result v0
return v0
.end method
.method public final k(I)Ljava/nio/ByteBuffer;
.registers 4
.line 1
sget v0, Lcom/google/android/exoplayer2/util/k0;->a:I
const/16 v1, 0x15
if-lt v0, v1, :cond_d
.line 2
iget-object v0, p0, Lcom/google/android/exoplayer2/mediacodec/t;->a:Landroid/media/MediaCodec;
invoke-virtual {v0, p1}, Landroid/media/MediaCodec;->getOutputBuffer(I)Ljava/nio/ByteBuffer;
move-result-object p1
return-object p1
.line 3
:cond_d
iget-object v0, p0, Lcom/google/android/exoplayer2/mediacodec/t;->c:[Ljava/nio/ByteBuffer;
aget-object p1, v0, p1
return-object p1
.end method
.method public final release()V
.registers 2
const/4 v0, 0x0
.line 1
iput-object v0, p0, Lcom/google/android/exoplayer2/mediacodec/t;->b:[Ljava/nio/ByteBuffer;
.line 2
iput-object v0, p0, Lcom/google/android/exoplayer2/mediacodec/t;->c:[Ljava/nio/ByteBuffer;
.line 3
iget-object v0, p0, Lcom/google/android/exoplayer2/mediacodec/t;->a:Landroid/media/MediaCodec;
invoke-virtual {v0}, Landroid/media/MediaCodec;->release()V
return-void
.end method
.method public final releaseOutputBuffer(IZ)V
.registers 4
iget-object v0, p0, Lcom/google/android/exoplayer2/mediacodec/t;->a:Landroid/media/MediaCodec;
invoke-virtual {v0, p1, p2}, Landroid/media/MediaCodec;->releaseOutputBuffer(IZ)V
return-void
.end method
.method public final setParameters(Landroid/os/Bundle;)V
.registers 3
iget-object v0, p0, Lcom/google/android/exoplayer2/mediacodec/t;->a:Landroid/media/MediaCodec;
invoke-virtual {v0, p1}, Landroid/media/MediaCodec;->setParameters(Landroid/os/Bundle;)V
return-void
.end method