n.smali

.class public abstract Lcom/google/obf/n;
.super Lcom/google/obf/v;
.source "IMASDK"


# annotations
.annotation system Ldalvik/annotation/MemberClasses;
    value = {
        Lcom/google/obf/n$a;,
        Lcom/google/obf/n$b;
    }
.end annotation


# static fields
.field private static final c:[B


# instance fields
.field private A:[Ljava/nio/ByteBuffer;

.field private B:J

.field private C:I

.field private D:I

.field private E:Z

.field private F:Z

.field private G:I

.field private H:I

.field private I:Z

.field private J:Z

.field private K:I

.field private L:Z

.field private M:Z

.field private N:Z

.field private O:Z

.field public final a:Lcom/google/obf/c;

.field protected final b:Landroid/os/Handler;

.field private final d:Lcom/google/obf/m;

.field private final e:Lcom/google/obf/ac;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "Lcom/google/obf/ac<",
            "Lcom/google/obf/ae;",
            ">;"
        }
    .end annotation
.end field

.field private final f:Z

.field private final g:Lcom/google/obf/t;

.field private final h:Lcom/google/obf/r;

.field private final i:Ljava/util/List;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "Ljava/util/List<",
            "Ljava/lang/Long;",
            ">;"
        }
    .end annotation
.end field

.field private final j:Landroid/media/MediaCodec$BufferInfo;

.field private final k:Lcom/google/obf/n$b;

.field private final l:Z

.field private m:Lcom/google/obf/q;

.field private n:Lcom/google/obf/ab;

.field private o:Landroid/media/MediaCodec;

.field private p:Z

.field private q:Z

.field private r:Z

.field private s:Z

.field private t:Z

.field private u:Z

.field private v:Z

.field private w:Z

.field private x:Z

.field private y:Z

.field private z:[Ljava/nio/ByteBuffer;


# direct methods
.method static constructor <clinit>()V
    .registers 1

    const-string v0, "0000016742C00BDA259000000168CE0F13200000016588840DCE7118A0002FBF1C31C3275D78"

    .line 437
    invoke-static {v0}, Lcom/google/obf/ea;->d(Ljava/lang/String;)[B

    move-result-object v0

    sput-object v0, Lcom/google/obf/n;->c:[B

    return-void
.end method

.method public constructor <init>(Lcom/google/obf/u;Lcom/google/obf/m;Lcom/google/obf/ac;ZLandroid/os/Handler;Lcom/google/obf/n$b;)V
    .registers 15
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Lcom/google/obf/u;",
            "Lcom/google/obf/m;",
            "Lcom/google/obf/ac<",
            "Lcom/google/obf/ae;",
            ">;Z",
            "Landroid/os/Handler;",
            "Lcom/google/obf/n$b;",
            ")V"
        }
    .end annotation

    const/4 v0, 0x1

    new-array v2, v0, [Lcom/google/obf/u;

    const/4 v0, 0x0

    aput-object p1, v2, v0

    move-object v1, p0

    move-object v3, p2

    move-object v4, p3

    move v5, p4

    move-object v6, p5

    move-object v7, p6

    .line 1
    invoke-direct/range {v1 .. v7}, Lcom/google/obf/n;-><init>([Lcom/google/obf/u;Lcom/google/obf/m;Lcom/google/obf/ac;ZLandroid/os/Handler;Lcom/google/obf/n$b;)V

    return-void
.end method

.method public constructor <init>([Lcom/google/obf/u;Lcom/google/obf/m;Lcom/google/obf/ac;ZLandroid/os/Handler;Lcom/google/obf/n$b;)V
    .registers 9
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "([",
            "Lcom/google/obf/u;",
            "Lcom/google/obf/m;",
            "Lcom/google/obf/ac<",
            "Lcom/google/obf/ae;",
            ">;Z",
            "Landroid/os/Handler;",
            "Lcom/google/obf/n$b;",
            ")V"
        }
    .end annotation

    .line 3
    invoke-direct {p0, p1}, Lcom/google/obf/v;-><init>([Lcom/google/obf/u;)V

    .line 4
    sget p1, Lcom/google/obf/ea;->a:I

    const/4 v0, 0x0

    const/16 v1, 0x10

    if-lt p1, v1, :cond_c

    const/4 p1, 0x1

    goto :goto_d

    :cond_c
    const/4 p1, 0x0

    :goto_d
    invoke-static {p1}, Lcom/google/obf/dl;->b(Z)V

    .line 5
    invoke-static {p2}, Lcom/google/obf/dl;->a(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object p1

    check-cast p1, Lcom/google/obf/m;

    iput-object p1, p0, Lcom/google/obf/n;->d:Lcom/google/obf/m;

    .line 6
    iput-object p3, p0, Lcom/google/obf/n;->e:Lcom/google/obf/ac;

    .line 7
    iput-boolean p4, p0, Lcom/google/obf/n;->f:Z

    .line 8
    iput-object p5, p0, Lcom/google/obf/n;->b:Landroid/os/Handler;

    .line 9
    iput-object p6, p0, Lcom/google/obf/n;->k:Lcom/google/obf/n$b;

    .line 10
    invoke-static {}, Lcom/google/obf/n;->B()Z

    move-result p1

    iput-boolean p1, p0, Lcom/google/obf/n;->l:Z

    .line 11
    new-instance p1, Lcom/google/obf/c;

    invoke-direct {p1}, Lcom/google/obf/c;-><init>()V

    iput-object p1, p0, Lcom/google/obf/n;->a:Lcom/google/obf/c;

    .line 12
    new-instance p1, Lcom/google/obf/t;

    invoke-direct {p1, v0}, Lcom/google/obf/t;-><init>(I)V

    iput-object p1, p0, Lcom/google/obf/n;->g:Lcom/google/obf/t;

    .line 13
    new-instance p1, Lcom/google/obf/r;

    invoke-direct {p1}, Lcom/google/obf/r;-><init>()V

    iput-object p1, p0, Lcom/google/obf/n;->h:Lcom/google/obf/r;

    .line 14
    new-instance p1, Ljava/util/ArrayList;

    invoke-direct {p1}, Ljava/util/ArrayList;-><init>()V

    iput-object p1, p0, Lcom/google/obf/n;->i:Ljava/util/List;

    .line 15
    new-instance p1, Landroid/media/MediaCodec$BufferInfo;

    invoke-direct {p1}, Landroid/media/MediaCodec$BufferInfo;-><init>()V

    iput-object p1, p0, Lcom/google/obf/n;->j:Landroid/media/MediaCodec$BufferInfo;

    .line 16
    iput v0, p0, Lcom/google/obf/n;->G:I

    .line 17
    iput v0, p0, Lcom/google/obf/n;->H:I

    return-void
.end method

.method private A()V
    .registers 3
    .annotation system Ldalvik/annotation/Throws;
        value = {
            Lcom/google/obf/g;
        }
    .end annotation

    .line 386
    iget v0, p0, Lcom/google/obf/n;->H:I

    const/4 v1, 0x2

    if-ne v0, v1, :cond_c

    .line 387
    invoke-virtual {p0}, Lcom/google/obf/n;->m()V

    .line 388
    invoke-virtual {p0}, Lcom/google/obf/n;->j()V

    goto :goto_12

    :cond_c
    const/4 v0, 0x1

    .line 389
    iput-boolean v0, p0, Lcom/google/obf/n;->M:Z

    .line 390
    invoke-virtual {p0}, Lcom/google/obf/n;->h()V

    :goto_12
    return-void
.end method

.method private static B()Z
    .registers 2

    .line 435
    sget v0, Lcom/google/obf/ea;->a:I

    const/16 v1, 0x16

    if-gt v0, v1, :cond_1c

    sget-object v0, Lcom/google/obf/ea;->b:Ljava/lang/String;

    const-string v1, "foster"

    invoke-virtual {v1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v0

    if-eqz v0, :cond_1c

    sget-object v0, Lcom/google/obf/ea;->c:Ljava/lang/String;

    const-string v1, "NVIDIA"

    invoke-virtual {v1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v0

    if-eqz v0, :cond_1c

    const/4 v0, 0x1

    goto :goto_1d

    :cond_1c
    const/4 v0, 0x0

    :goto_1d
    return v0
.end method

.method private static a(Lcom/google/obf/t;I)Landroid/media/MediaCodec$CryptoInfo;
    .registers 5

    .line 275
    iget-object p0, p0, Lcom/google/obf/t;->a:Lcom/google/obf/e;

    invoke-virtual {p0}, Lcom/google/obf/e;->a()Landroid/media/MediaCodec$CryptoInfo;

    move-result-object p0

    if-nez p1, :cond_9

    return-object p0

    .line 278
    :cond_9
    iget-object v0, p0, Landroid/media/MediaCodec$CryptoInfo;->numBytesOfClearData:[I

    if-nez v0, :cond_12

    const/4 v0, 0x1

    new-array v0, v0, [I

    .line 279
    iput-object v0, p0, Landroid/media/MediaCodec$CryptoInfo;->numBytesOfClearData:[I

    .line 280
    :cond_12
    iget-object v0, p0, Landroid/media/MediaCodec$CryptoInfo;->numBytesOfClearData:[I

    const/4 v1, 0x0

    aget v2, v0, v1

    add-int/2addr v2, p1

    aput v2, v0, v1

    return-object p0
.end method

.method static synthetic a(Lcom/google/obf/n;)Lcom/google/obf/n$b;
    .registers 1

    .line 436
    iget-object p0, p0, Lcom/google/obf/n;->k:Lcom/google/obf/n$b;

    return-object p0
.end method

.method private a(Landroid/media/MediaCodec$CryptoException;)V
    .registers 4

    .line 395
    iget-object v0, p0, Lcom/google/obf/n;->b:Landroid/os/Handler;

    if-eqz v0, :cond_10

    iget-object v1, p0, Lcom/google/obf/n;->k:Lcom/google/obf/n$b;

    if-eqz v1, :cond_10

    .line 396
    new-instance v1, Lcom/google/obf/n$2;

    invoke-direct {v1, p0, p1}, Lcom/google/obf/n$2;-><init>(Lcom/google/obf/n;Landroid/media/MediaCodec$CryptoException;)V

    invoke-virtual {v0, v1}, Landroid/os/Handler;->post(Ljava/lang/Runnable;)Z

    :cond_10
    return-void
.end method

.method private a(Lcom/google/obf/n$a;)V
    .registers 3
    .annotation system Ldalvik/annotation/Throws;
        value = {
            Lcom/google/obf/g;
        }
    .end annotation

    .line 79
    invoke-direct {p0, p1}, Lcom/google/obf/n;->b(Lcom/google/obf/n$a;)V

    .line 80
    new-instance v0, Lcom/google/obf/g;

    invoke-direct {v0, p1}, Lcom/google/obf/g;-><init>(Ljava/lang/Throwable;)V

    throw v0
.end method

.method private a(Ljava/lang/String;JJ)V
    .registers 15

    .line 398
    iget-object v0, p0, Lcom/google/obf/n;->b:Landroid/os/Handler;

    if-eqz v0, :cond_15

    iget-object v1, p0, Lcom/google/obf/n;->k:Lcom/google/obf/n$b;

    if-eqz v1, :cond_15

    .line 399
    new-instance v1, Lcom/google/obf/n$3;

    move-object v2, v1

    move-object v3, p0

    move-object v4, p1

    move-wide v5, p2

    move-wide v7, p4

    invoke-direct/range {v2 .. v8}, Lcom/google/obf/n$3;-><init>(Lcom/google/obf/n;Ljava/lang/String;JJ)V

    invoke-virtual {v0, v1}, Landroid/os/Handler;->post(Ljava/lang/Runnable;)Z

    :cond_15
    return-void
.end method

.method private a()Z
    .registers 7

    .line 320
    invoke-static {}, Landroid/os/SystemClock;->elapsedRealtime()J

    move-result-wide v0

    iget-wide v2, p0, Lcom/google/obf/n;->B:J

    const-wide/16 v4, 0x3e8

    add-long/2addr v2, v4

    cmp-long v4, v0, v2

    if-gez v4, :cond_f

    const/4 v0, 0x1

    goto :goto_10

    :cond_f
    const/4 v0, 0x0

    :goto_10
    return v0
.end method

.method private a(JJ)Z
    .registers 20
    .annotation system Ldalvik/annotation/Throws;
        value = {
            Lcom/google/obf/g;
        }
    .end annotation

    move-object v10, p0

    .line 322
    iget-boolean v0, v10, Lcom/google/obf/n;->M:Z

    const/4 v11, 0x0

    if-eqz v0, :cond_7

    return v11

    .line 324
    :cond_7
    iget v0, v10, Lcom/google/obf/n;->D:I

    if-gez v0, :cond_3c

    .line 325
    iget-boolean v0, v10, Lcom/google/obf/n;->v:Z

    if-eqz v0, :cond_2e

    iget-boolean v0, v10, Lcom/google/obf/n;->J:Z

    if-eqz v0, :cond_2e

    .line 326
    :try_start_13
    iget-object v0, v10, Lcom/google/obf/n;->o:Landroid/media/MediaCodec;

    iget-object v1, v10, Lcom/google/obf/n;->j:Landroid/media/MediaCodec$BufferInfo;

    .line 327
    invoke-virtual {p0}, Lcom/google/obf/n;->p()J

    move-result-wide v2

    .line 328
    invoke-virtual {v0, v1, v2, v3}, Landroid/media/MediaCodec;->dequeueOutputBuffer(Landroid/media/MediaCodec$BufferInfo;J)I

    move-result v0

    iput v0, v10, Lcom/google/obf/n;->D:I
    :try_end_21
    .catch Ljava/lang/IllegalStateException; {:try_start_13 .. :try_end_21} :catch_22

    goto :goto_3c

    :catch_22
    nop

    .line 331
    invoke-direct {p0}, Lcom/google/obf/n;->A()V

    .line 332
    iget-boolean v0, v10, Lcom/google/obf/n;->M:Z

    if-eqz v0, :cond_2d

    .line 333
    invoke-virtual {p0}, Lcom/google/obf/n;->m()V

    :cond_2d
    return v11

    .line 335
    :cond_2e
    iget-object v0, v10, Lcom/google/obf/n;->o:Landroid/media/MediaCodec;

    iget-object v1, v10, Lcom/google/obf/n;->j:Landroid/media/MediaCodec$BufferInfo;

    .line 336
    invoke-virtual {p0}, Lcom/google/obf/n;->p()J

    move-result-wide v2

    .line 337
    invoke-virtual {v0, v1, v2, v3}, Landroid/media/MediaCodec;->dequeueOutputBuffer(Landroid/media/MediaCodec$BufferInfo;J)I

    move-result v0

    iput v0, v10, Lcom/google/obf/n;->D:I

    .line 338
    :cond_3c
    :goto_3c
    iget v0, v10, Lcom/google/obf/n;->D:I

    const/4 v1, -0x2

    const/4 v12, 0x1

    if-ne v0, v1, :cond_46

    .line 339
    invoke-direct {p0}, Lcom/google/obf/n;->i()V

    return v12

    :cond_46
    const/4 v1, -0x3

    if-ne v0, v1, :cond_59

    .line 342
    iget-object v0, v10, Lcom/google/obf/n;->o:Landroid/media/MediaCodec;

    invoke-virtual {v0}, Landroid/media/MediaCodec;->getOutputBuffers()[Ljava/nio/ByteBuffer;

    move-result-object v0

    iput-object v0, v10, Lcom/google/obf/n;->A:[Ljava/nio/ByteBuffer;

    .line 343
    iget-object v0, v10, Lcom/google/obf/n;->a:Lcom/google/obf/c;

    iget v1, v0, Lcom/google/obf/c;->e:I

    add-int/2addr v1, v12

    iput v1, v0, Lcom/google/obf/c;->e:I

    return v12

    :cond_59
    if-gez v0, :cond_6d

    .line 346
    iget-boolean v0, v10, Lcom/google/obf/n;->t:Z

    if-eqz v0, :cond_6c

    iget-boolean v0, v10, Lcom/google/obf/n;->L:Z

    if-nez v0, :cond_68

    iget v0, v10, Lcom/google/obf/n;->H:I

    const/4 v1, 0x2

    if-ne v0, v1, :cond_6c

    .line 347
    :cond_68
    invoke-direct {p0}, Lcom/google/obf/n;->A()V

    return v12

    :cond_6c
    return v11

    .line 350
    :cond_6d
    iget-boolean v1, v10, Lcom/google/obf/n;->y:Z

    const/4 v13, -0x1

    if-eqz v1, :cond_7c

    .line 351
    iput-boolean v11, v10, Lcom/google/obf/n;->y:Z

    .line 352
    iget-object v1, v10, Lcom/google/obf/n;->o:Landroid/media/MediaCodec;

    invoke-virtual {v1, v0, v11}, Landroid/media/MediaCodec;->releaseOutputBuffer(IZ)V

    .line 353
    iput v13, v10, Lcom/google/obf/n;->D:I

    return v12

    .line 355
    :cond_7c
    iget-object v0, v10, Lcom/google/obf/n;->j:Landroid/media/MediaCodec$BufferInfo;

    iget v0, v0, Landroid/media/MediaCodec$BufferInfo;->flags:I

    and-int/lit8 v0, v0, 0x4

    if-eqz v0, :cond_88

    .line 356
    invoke-direct {p0}, Lcom/google/obf/n;->A()V

    return v11

    .line 358
    :cond_88
    iget-object v0, v10, Lcom/google/obf/n;->j:Landroid/media/MediaCodec$BufferInfo;

    iget-wide v0, v0, Landroid/media/MediaCodec$BufferInfo;->presentationTimeUs:J

    invoke-direct {p0, v0, v1}, Lcom/google/obf/n;->h(J)I

    move-result v14

    .line 359
    iget-boolean v0, v10, Lcom/google/obf/n;->v:Z

    if-eqz v0, :cond_bf

    iget-boolean v0, v10, Lcom/google/obf/n;->J:Z

    if-eqz v0, :cond_bf

    .line 360
    :try_start_98
    iget-object v5, v10, Lcom/google/obf/n;->o:Landroid/media/MediaCodec;

    iget-object v0, v10, Lcom/google/obf/n;->A:[Ljava/nio/ByteBuffer;

    iget v1, v10, Lcom/google/obf/n;->D:I

    aget-object v6, v0, v1

    iget-object v7, v10, Lcom/google/obf/n;->j:Landroid/media/MediaCodec$BufferInfo;

    iget v8, v10, Lcom/google/obf/n;->D:I

    if-eq v14, v13, :cond_a8

    const/4 v9, 0x1

    goto :goto_a9

    :cond_a8
    const/4 v9, 0x0

    :goto_a9
    move-object v0, p0

    move-wide/from16 v1, p1

    move-wide/from16 v3, p3

    invoke-virtual/range {v0 .. v9}, Lcom/google/obf/n;->a(JJLandroid/media/MediaCodec;Ljava/nio/ByteBuffer;Landroid/media/MediaCodec$BufferInfo;IZ)Z

    move-result v0
    :try_end_b2
    .catch Ljava/lang/IllegalStateException; {:try_start_98 .. :try_end_b2} :catch_b3

    goto :goto_d7

    :catch_b3
    nop

    .line 363
    invoke-direct {p0}, Lcom/google/obf/n;->A()V

    .line 364
    iget-boolean v0, v10, Lcom/google/obf/n;->M:Z

    if-eqz v0, :cond_be

    .line 365
    invoke-virtual {p0}, Lcom/google/obf/n;->m()V

    :cond_be
    return v11

    .line 367
    :cond_bf
    iget-object v5, v10, Lcom/google/obf/n;->o:Landroid/media/MediaCodec;

    iget-object v0, v10, Lcom/google/obf/n;->A:[Ljava/nio/ByteBuffer;

    iget v8, v10, Lcom/google/obf/n;->D:I

    aget-object v6, v0, v8

    iget-object v7, v10, Lcom/google/obf/n;->j:Landroid/media/MediaCodec$BufferInfo;

    if-eq v14, v13, :cond_cd

    const/4 v9, 0x1

    goto :goto_ce

    :cond_cd
    const/4 v9, 0x0

    :goto_ce
    move-object v0, p0

    move-wide/from16 v1, p1

    move-wide/from16 v3, p3

    invoke-virtual/range {v0 .. v9}, Lcom/google/obf/n;->a(JJLandroid/media/MediaCodec;Ljava/nio/ByteBuffer;Landroid/media/MediaCodec$BufferInfo;IZ)Z

    move-result v0

    :goto_d7
    if-eqz v0, :cond_ea

    .line 369
    iget-object v0, v10, Lcom/google/obf/n;->j:Landroid/media/MediaCodec$BufferInfo;

    iget-wide v0, v0, Landroid/media/MediaCodec$BufferInfo;->presentationTimeUs:J

    invoke-virtual {p0, v0, v1}, Lcom/google/obf/n;->b(J)V

    if-eq v14, v13, :cond_e7

    .line 371
    iget-object v0, v10, Lcom/google/obf/n;->i:Ljava/util/List;

    invoke-interface {v0, v14}, Ljava/util/List;->remove(I)Ljava/lang/Object;

    .line 372
    :cond_e7
    iput v13, v10, Lcom/google/obf/n;->D:I

    return v12

    :cond_ea
    return v11
.end method

.method private a(JZ)Z
    .registers 26
    .annotation system Ldalvik/annotation/Throws;
        value = {
            Lcom/google/obf/g;
        }
    .end annotation

    move-object/from16 v7, p0

    .line 181
    iget-boolean v0, v7, Lcom/google/obf/n;->L:Z

    const/4 v8, 0x0

    if-nez v0, :cond_1ad

    iget v0, v7, Lcom/google/obf/n;->H:I

    const/4 v1, 0x2

    if-ne v0, v1, :cond_e

    goto/16 :goto_1ad

    .line 183
    :cond_e
    iget v0, v7, Lcom/google/obf/n;->C:I

    if-gez v0, :cond_2c

    .line 184
    iget-object v0, v7, Lcom/google/obf/n;->o:Landroid/media/MediaCodec;

    const-wide/16 v2, 0x0

    invoke-virtual {v0, v2, v3}, Landroid/media/MediaCodec;->dequeueInputBuffer(J)I

    move-result v0

    iput v0, v7, Lcom/google/obf/n;->C:I

    if-gez v0, :cond_1f

    return v8

    .line 187
    :cond_1f
    iget-object v2, v7, Lcom/google/obf/n;->g:Lcom/google/obf/t;

    iget-object v3, v7, Lcom/google/obf/n;->z:[Ljava/nio/ByteBuffer;

    aget-object v0, v3, v0

    iput-object v0, v2, Lcom/google/obf/t;->b:Ljava/nio/ByteBuffer;

    .line 188
    iget-object v0, v7, Lcom/google/obf/n;->g:Lcom/google/obf/t;

    invoke-virtual {v0}, Lcom/google/obf/t;->d()V

    .line 189
    :cond_2c
    iget v0, v7, Lcom/google/obf/n;->H:I

    const/4 v9, -0x1

    const/4 v10, 0x1

    if-ne v0, v10, :cond_4b

    .line 190
    iget-boolean v0, v7, Lcom/google/obf/n;->t:Z

    if-eqz v0, :cond_37

    goto :goto_48

    .line 191
    :cond_37
    iput-boolean v10, v7, Lcom/google/obf/n;->J:Z

    .line 192
    iget-object v11, v7, Lcom/google/obf/n;->o:Landroid/media/MediaCodec;

    iget v12, v7, Lcom/google/obf/n;->C:I

    const/4 v13, 0x0

    const/4 v14, 0x0

    const-wide/16 v15, 0x0

    const/16 v17, 0x4

    invoke-virtual/range {v11 .. v17}, Landroid/media/MediaCodec;->queueInputBuffer(IIIJI)V

    .line 193
    iput v9, v7, Lcom/google/obf/n;->C:I

    .line 194
    :goto_48
    iput v1, v7, Lcom/google/obf/n;->H:I

    return v8

    .line 196
    :cond_4b
    iget-boolean v0, v7, Lcom/google/obf/n;->x:Z

    if-eqz v0, :cond_6e

    .line 197
    iput-boolean v8, v7, Lcom/google/obf/n;->x:Z

    .line 198
    iget-object v0, v7, Lcom/google/obf/n;->g:Lcom/google/obf/t;

    iget-object v0, v0, Lcom/google/obf/t;->b:Ljava/nio/ByteBuffer;

    sget-object v1, Lcom/google/obf/n;->c:[B

    invoke-virtual {v0, v1}, Ljava/nio/ByteBuffer;->put([B)Ljava/nio/ByteBuffer;

    .line 199
    iget-object v11, v7, Lcom/google/obf/n;->o:Landroid/media/MediaCodec;

    iget v12, v7, Lcom/google/obf/n;->C:I

    const/4 v13, 0x0

    sget-object v0, Lcom/google/obf/n;->c:[B

    array-length v14, v0

    const-wide/16 v15, 0x0

    const/16 v17, 0x0

    invoke-virtual/range {v11 .. v17}, Landroid/media/MediaCodec;->queueInputBuffer(IIIJI)V

    .line 200
    iput v9, v7, Lcom/google/obf/n;->C:I

    .line 201
    iput-boolean v10, v7, Lcom/google/obf/n;->I:Z

    return v10

    .line 203
    :cond_6e
    iget-boolean v0, v7, Lcom/google/obf/n;->N:Z

    const/4 v2, -0x2

    if-eqz v0, :cond_75

    const/4 v0, -0x3

    goto :goto_ae

    .line 205
    :cond_75
    iget v0, v7, Lcom/google/obf/n;->G:I

    if-ne v0, v10, :cond_9a

    const/4 v0, 0x0

    .line 206
    :goto_7a
    iget-object v3, v7, Lcom/google/obf/n;->m:Lcom/google/obf/q;

    iget-object v3, v3, Lcom/google/obf/q;->f:Ljava/util/List;

    invoke-interface {v3}, Ljava/util/List;->size()I

    move-result v3

    if-ge v0, v3, :cond_98

    .line 207
    iget-object v3, v7, Lcom/google/obf/n;->m:Lcom/google/obf/q;

    iget-object v3, v3, Lcom/google/obf/q;->f:Ljava/util/List;

    invoke-interface {v3, v0}, Ljava/util/List;->get(I)Ljava/lang/Object;

    move-result-object v3

    check-cast v3, [B

    .line 208
    iget-object v4, v7, Lcom/google/obf/n;->g:Lcom/google/obf/t;

    iget-object v4, v4, Lcom/google/obf/t;->b:Ljava/nio/ByteBuffer;

    invoke-virtual {v4, v3}, Ljava/nio/ByteBuffer;->put([B)Ljava/nio/ByteBuffer;

    add-int/lit8 v0, v0, 0x1

    goto :goto_7a

    .line 210
    :cond_98
    iput v1, v7, Lcom/google/obf/n;->G:I

    .line 211
    :cond_9a
    iget-object v0, v7, Lcom/google/obf/n;->h:Lcom/google/obf/r;

    iget-object v3, v7, Lcom/google/obf/n;->g:Lcom/google/obf/t;

    move-wide/from16 v4, p1

    invoke-virtual {v7, v4, v5, v0, v3}, Lcom/google/obf/n;->a(JLcom/google/obf/r;Lcom/google/obf/t;)I

    move-result v0

    if-eqz p3, :cond_ae

    .line 212
    iget v3, v7, Lcom/google/obf/n;->K:I

    if-ne v3, v10, :cond_ae

    if-ne v0, v2, :cond_ae

    .line 213
    iput v1, v7, Lcom/google/obf/n;->K:I

    :cond_ae
    :goto_ae
    if-ne v0, v2, :cond_b1

    return v8

    :cond_b1
    const/4 v2, -0x4

    if-ne v0, v2, :cond_c5

    .line 217
    iget v0, v7, Lcom/google/obf/n;->G:I

    if-ne v0, v1, :cond_bf

    .line 218
    iget-object v0, v7, Lcom/google/obf/n;->g:Lcom/google/obf/t;

    invoke-virtual {v0}, Lcom/google/obf/t;->d()V

    .line 219
    iput v10, v7, Lcom/google/obf/n;->G:I

    .line 220
    :cond_bf
    iget-object v0, v7, Lcom/google/obf/n;->h:Lcom/google/obf/r;

    invoke-virtual {v7, v0}, Lcom/google/obf/n;->a(Lcom/google/obf/r;)V

    return v10

    :cond_c5
    if-ne v0, v9, :cond_fd

    .line 223
    iget v0, v7, Lcom/google/obf/n;->G:I

    if-ne v0, v1, :cond_d2

    .line 224
    iget-object v0, v7, Lcom/google/obf/n;->g:Lcom/google/obf/t;

    invoke-virtual {v0}, Lcom/google/obf/t;->d()V

    .line 225
    iput v10, v7, Lcom/google/obf/n;->G:I

    .line 226
    :cond_d2
    iput-boolean v10, v7, Lcom/google/obf/n;->L:Z

    .line 227
    iget-boolean v0, v7, Lcom/google/obf/n;->I:Z

    if-nez v0, :cond_dc

    .line 228
    invoke-direct/range {p0 .. p0}, Lcom/google/obf/n;->A()V

    return v8

    .line 230
    :cond_dc
    :try_start_dc
    iget-boolean v0, v7, Lcom/google/obf/n;->t:Z

    if-eqz v0, :cond_e1

    goto :goto_f2

    .line 231
    :cond_e1
    iput-boolean v10, v7, Lcom/google/obf/n;->J:Z

    .line 232
    iget-object v11, v7, Lcom/google/obf/n;->o:Landroid/media/MediaCodec;

    iget v12, v7, Lcom/google/obf/n;->C:I

    const/4 v13, 0x0

    const/4 v14, 0x0

    const-wide/16 v15, 0x0

    const/16 v17, 0x4

    invoke-virtual/range {v11 .. v17}, Landroid/media/MediaCodec;->queueInputBuffer(IIIJI)V

    .line 233
    iput v9, v7, Lcom/google/obf/n;->C:I
    :try_end_f2
    .catch Landroid/media/MediaCodec$CryptoException; {:try_start_dc .. :try_end_f2} :catch_f3

    :goto_f2
    return v8

    :catch_f3
    move-exception v0

    .line 236
    invoke-direct {v7, v0}, Lcom/google/obf/n;->a(Landroid/media/MediaCodec$CryptoException;)V

    .line 237
    new-instance v1, Lcom/google/obf/g;

    invoke-direct {v1, v0}, Lcom/google/obf/g;-><init>(Ljava/lang/Throwable;)V

    throw v1

    .line 239
    :cond_fd
    iget-boolean v0, v7, Lcom/google/obf/n;->O:Z

    if-eqz v0, :cond_117

    .line 240
    iget-object v0, v7, Lcom/google/obf/n;->g:Lcom/google/obf/t;

    invoke-virtual {v0}, Lcom/google/obf/t;->c()Z

    move-result v0

    if-nez v0, :cond_115

    .line 241
    iget-object v0, v7, Lcom/google/obf/n;->g:Lcom/google/obf/t;

    invoke-virtual {v0}, Lcom/google/obf/t;->d()V

    .line 242
    iget v0, v7, Lcom/google/obf/n;->G:I

    if-ne v0, v1, :cond_114

    .line 243
    iput v10, v7, Lcom/google/obf/n;->G:I

    :cond_114
    return v10

    .line 245
    :cond_115
    iput-boolean v8, v7, Lcom/google/obf/n;->O:Z

    .line 246
    :cond_117
    iget-object v0, v7, Lcom/google/obf/n;->g:Lcom/google/obf/t;

    invoke-virtual {v0}, Lcom/google/obf/t;->a()Z

    move-result v0

    .line 247
    invoke-direct {v7, v0}, Lcom/google/obf/n;->a(Z)Z

    move-result v1

    iput-boolean v1, v7, Lcom/google/obf/n;->N:Z

    if-eqz v1, :cond_126

    return v8

    .line 250
    :cond_126
    iget-boolean v1, v7, Lcom/google/obf/n;->q:Z

    if-eqz v1, :cond_140

    if-nez v0, :cond_140

    .line 251
    iget-object v1, v7, Lcom/google/obf/n;->g:Lcom/google/obf/t;

    iget-object v1, v1, Lcom/google/obf/t;->b:Ljava/nio/ByteBuffer;

    invoke-static {v1}, Lcom/google/obf/du;->a(Ljava/nio/ByteBuffer;)V

    .line 252
    iget-object v1, v7, Lcom/google/obf/n;->g:Lcom/google/obf/t;

    iget-object v1, v1, Lcom/google/obf/t;->b:Ljava/nio/ByteBuffer;

    invoke-virtual {v1}, Ljava/nio/ByteBuffer;->position()I

    move-result v1

    if-nez v1, :cond_13e

    return v10

    .line 254
    :cond_13e
    iput-boolean v8, v7, Lcom/google/obf/n;->q:Z

    .line 255
    :cond_140
    :try_start_140
    iget-object v1, v7, Lcom/google/obf/n;->g:Lcom/google/obf/t;

    iget-object v1, v1, Lcom/google/obf/t;->b:Ljava/nio/ByteBuffer;

    invoke-virtual {v1}, Ljava/nio/ByteBuffer;->position()I

    move-result v14

    .line 256
    iget-object v1, v7, Lcom/google/obf/n;->g:Lcom/google/obf/t;

    iget v1, v1, Lcom/google/obf/t;->c:I

    sub-int v11, v14, v1

    .line 257
    iget-object v1, v7, Lcom/google/obf/n;->g:Lcom/google/obf/t;

    iget-wide v12, v1, Lcom/google/obf/t;->e:J

    .line 258
    iget-object v1, v7, Lcom/google/obf/n;->g:Lcom/google/obf/t;

    invoke-virtual {v1}, Lcom/google/obf/t;->b()Z

    move-result v1

    if-eqz v1, :cond_163

    .line 259
    iget-object v1, v7, Lcom/google/obf/n;->i:Ljava/util/List;

    invoke-static {v12, v13}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;

    move-result-object v2

    invoke-interface {v1, v2}, Ljava/util/List;->add(Ljava/lang/Object;)Z

    .line 260
    :cond_163
    iget-object v1, v7, Lcom/google/obf/n;->g:Lcom/google/obf/t;

    iget-object v4, v1, Lcom/google/obf/t;->b:Ljava/nio/ByteBuffer;

    move-object/from16 v1, p0

    move-wide v2, v12

    move v5, v14

    move v6, v0

    invoke-virtual/range {v1 .. v6}, Lcom/google/obf/n;->a(JLjava/nio/ByteBuffer;IZ)V

    if-eqz v0, :cond_187

    .line 262
    iget-object v0, v7, Lcom/google/obf/n;->g:Lcom/google/obf/t;

    invoke-static {v0, v11}, Lcom/google/obf/n;->a(Lcom/google/obf/t;I)Landroid/media/MediaCodec$CryptoInfo;

    move-result-object v18

    .line 263
    iget-object v15, v7, Lcom/google/obf/n;->o:Landroid/media/MediaCodec;

    iget v0, v7, Lcom/google/obf/n;->C:I

    const/16 v17, 0x0

    const/16 v21, 0x0

    move/from16 v16, v0

    move-wide/from16 v19, v12

    invoke-virtual/range {v15 .. v21}, Landroid/media/MediaCodec;->queueSecureInputBuffer(IILandroid/media/MediaCodec$CryptoInfo;JI)V

    goto :goto_195

    .line 265
    :cond_187
    iget-object v11, v7, Lcom/google/obf/n;->o:Landroid/media/MediaCodec;

    iget v0, v7, Lcom/google/obf/n;->C:I

    const/4 v1, 0x0

    const/16 v17, 0x0

    move-wide v2, v12

    move v12, v0

    move v13, v1

    move-wide v15, v2

    invoke-virtual/range {v11 .. v17}, Landroid/media/MediaCodec;->queueInputBuffer(IIIJI)V

    .line 266
    :goto_195
    iput v9, v7, Lcom/google/obf/n;->C:I

    .line 267
    iput-boolean v10, v7, Lcom/google/obf/n;->I:Z

    .line 268
    iput v8, v7, Lcom/google/obf/n;->G:I

    .line 269
    iget-object v0, v7, Lcom/google/obf/n;->a:Lcom/google/obf/c;

    iget v1, v0, Lcom/google/obf/c;->c:I

    add-int/2addr v1, v10

    iput v1, v0, Lcom/google/obf/c;->c:I
    :try_end_1a2
    .catch Landroid/media/MediaCodec$CryptoException; {:try_start_140 .. :try_end_1a2} :catch_1a3

    return v10

    :catch_1a3
    move-exception v0

    .line 272
    invoke-direct {v7, v0}, Lcom/google/obf/n;->a(Landroid/media/MediaCodec$CryptoException;)V

    .line 273
    new-instance v1, Lcom/google/obf/g;

    invoke-direct {v1, v0}, Lcom/google/obf/g;-><init>(Ljava/lang/Throwable;)V

    throw v1

    :cond_1ad
    :goto_1ad
    return v8
.end method

.method private static a(Ljava/lang/String;)Z
    .registers 3

    .line 407
    sget v0, Lcom/google/obf/ea;->a:I

    const/16 v1, 0x12

    if-lt v0, v1, :cond_3d

    sget v0, Lcom/google/obf/ea;->a:I

    if-ne v0, v1, :cond_1a

    const-string v0, "OMX.SEC.avc.dec"

    .line 408
    invoke-virtual {v0, p0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v0

    if-nez v0, :cond_3d

    const-string v0, "OMX.SEC.avc.dec.secure"

    invoke-virtual {v0, p0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v0

    if-nez v0, :cond_3d

    :cond_1a
    sget v0, Lcom/google/obf/ea;->a:I

    const/16 v1, 0x13

    if-ne v0, v1, :cond_3b

    sget-object v0, Lcom/google/obf/ea;->d:Ljava/lang/String;

    const-string v1, "SM-G800"

    .line 409
    invoke-virtual {v0, v1}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z

    move-result v0

    if-eqz v0, :cond_3b

    const-string v0, "OMX.Exynos.avc.dec"

    .line 410
    invoke-virtual {v0, p0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v0

    if-nez v0, :cond_3d

    const-string v0, "OMX.Exynos.avc.dec.secure"

    invoke-virtual {v0, p0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result p0

    if-eqz p0, :cond_3b

    goto :goto_3d

    :cond_3b
    const/4 p0, 0x0

    goto :goto_3e

    :cond_3d
    :goto_3d
    const/4 p0, 0x1

    :goto_3e
    return p0
.end method

.method private static a(Ljava/lang/String;Lcom/google/obf/q;)Z
    .registers 4

    .line 417
    sget v0, Lcom/google/obf/ea;->a:I

    const/16 v1, 0x15

    if-ge v0, v1, :cond_18

    iget-object p1, p1, Lcom/google/obf/q;->f:Ljava/util/List;

    invoke-interface {p1}, Ljava/util/List;->isEmpty()Z

    move-result p1

    if-eqz p1, :cond_18

    const-string p1, "OMX.MTK.VIDEO.DECODER.AVC"

    .line 418
    invoke-virtual {p1, p0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result p0

    if-eqz p0, :cond_18

    const/4 p0, 0x1

    goto :goto_19

    :cond_18
    const/4 p0, 0x0

    :goto_19
    return p0
.end method

.method private a(Z)Z
    .registers 5
    .annotation system Ldalvik/annotation/Throws;
        value = {
            Lcom/google/obf/g;
        }
    .end annotation

    .line 286
    iget-boolean v0, p0, Lcom/google/obf/n;->E:Z

    const/4 v1, 0x0

    if-nez v0, :cond_6

    return v1

    .line 288
    :cond_6
    iget-object v0, p0, Lcom/google/obf/n;->e:Lcom/google/obf/ac;

    invoke-interface {v0}, Lcom/google/obf/ac;->b()I

    move-result v0

    if-eqz v0, :cond_1a

    const/4 v2, 0x4

    if-eq v0, v2, :cond_19

    if-nez p1, :cond_17

    .line 291
    iget-boolean p1, p0, Lcom/google/obf/n;->f:Z

    if-nez p1, :cond_19

    :cond_17
    const/4 p1, 0x1

    return p1

    :cond_19
    return v1

    .line 290
    :cond_1a
    new-instance p1, Lcom/google/obf/g;

    iget-object v0, p0, Lcom/google/obf/n;->e:Lcom/google/obf/ac;

    invoke-interface {v0}, Lcom/google/obf/ac;->d()Ljava/lang/Exception;

    move-result-object v0

    invoke-direct {p1, v0}, Lcom/google/obf/g;-><init>(Ljava/lang/Throwable;)V

    throw p1
.end method

.method private b(Lcom/google/obf/q;)Landroid/media/MediaFormat;
    .registers 4

    .line 282
    invoke-virtual {p1}, Lcom/google/obf/q;->b()Landroid/media/MediaFormat;

    move-result-object p1

    .line 283
    iget-boolean v0, p0, Lcom/google/obf/n;->l:Z

    if-eqz v0, :cond_e

    const/4 v0, 0x0

    const-string v1, "auto-frc"

    .line 284
    invoke-virtual {p1, v1, v0}, Landroid/media/MediaFormat;->setInteger(Ljava/lang/String;I)V

    :cond_e
    return-object p1
.end method

.method private b(Lcom/google/obf/n$a;)V
    .registers 4

    .line 392
    iget-object v0, p0, Lcom/google/obf/n;->b:Landroid/os/Handler;

    if-eqz v0, :cond_10

    iget-object v1, p0, Lcom/google/obf/n;->k:Lcom/google/obf/n$b;

    if-eqz v1, :cond_10

    .line 393
    new-instance v1, Lcom/google/obf/n$1;

    invoke-direct {v1, p0, p1}, Lcom/google/obf/n$1;-><init>(Lcom/google/obf/n;Lcom/google/obf/n$a;)V

    invoke-virtual {v0, v1}, Landroid/os/Handler;->post(Ljava/lang/Runnable;)Z

    :cond_10
    return-void
.end method

.method private static b(Ljava/lang/String;)Z
    .registers 3

    .line 412
    sget v0, Lcom/google/obf/ea;->a:I

    const/16 v1, 0x18

    if-ge v0, v1, :cond_40

    const-string v0, "OMX.Nvidia.h264.decode"

    .line 413
    invoke-virtual {v0, p0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v0

    if-nez v0, :cond_16

    const-string v0, "OMX.Nvidia.h264.decode.secure"

    invoke-virtual {v0, p0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result p0

    if-eqz p0, :cond_40

    :cond_16
    sget-object p0, Lcom/google/obf/ea;->b:Ljava/lang/String;

    const-string v0, "flounder"

    .line 414
    invoke-virtual {p0, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result p0

    if-nez p0, :cond_3e

    sget-object p0, Lcom/google/obf/ea;->b:Ljava/lang/String;

    const-string v0, "flounder_lte"

    invoke-virtual {p0, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result p0

    if-nez p0, :cond_3e

    sget-object p0, Lcom/google/obf/ea;->b:Ljava/lang/String;

    const-string v0, "grouper"

    .line 415
    invoke-virtual {p0, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result p0

    if-nez p0, :cond_3e

    sget-object p0, Lcom/google/obf/ea;->b:Ljava/lang/String;

    const-string v0, "tilapia"

    invoke-virtual {p0, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result p0

    if-eqz p0, :cond_40

    :cond_3e
    const/4 p0, 0x1

    goto :goto_41

    :cond_40
    const/4 p0, 0x0

    :goto_41
    return p0
.end method

.method private static b(Ljava/lang/String;Lcom/google/obf/q;)Z
    .registers 5

    .line 429
    sget v0, Lcom/google/obf/ea;->a:I

    const/4 v1, 0x1

    const/16 v2, 0x12

    if-gt v0, v2, :cond_14

    iget p1, p1, Lcom/google/obf/q;->q:I

    if-ne p1, v1, :cond_14

    const-string p1, "OMX.MTK.AUDIO.DECODER.MP3"

    .line 430
    invoke-virtual {p1, p0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result p0

    if-eqz p0, :cond_14

    goto :goto_15

    :cond_14
    const/4 v1, 0x0

    :goto_15
    return v1
.end method

.method private static c(Ljava/lang/String;)Z
    .registers 3

    .line 420
    sget v0, Lcom/google/obf/ea;->a:I

    const/16 v1, 0x11

    if-gt v0, v1, :cond_18

    const-string v0, "OMX.rk.video_decoder.avc"

    invoke-virtual {v0, p0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v0

    if-nez v0, :cond_16

    const-string v0, "OMX.allwinner.video.decoder.avc"

    .line 421
    invoke-virtual {v0, p0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result p0

    if-eqz p0, :cond_18

    :cond_16
    const/4 p0, 0x1

    goto :goto_19

    :cond_18
    const/4 p0, 0x0

    :goto_19
    return p0
.end method

.method private static d(Ljava/lang/String;)Z
    .registers 3

    .line 423
    sget v0, Lcom/google/obf/ea;->a:I

    const/16 v1, 0x17

    if-gt v0, v1, :cond_e

    const-string v0, "OMX.google.vorbis.decoder"

    invoke-virtual {v0, p0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v0

    if-nez v0, :cond_2e

    :cond_e
    sget v0, Lcom/google/obf/ea;->a:I

    const/16 v1, 0x13

    if-gt v0, v1, :cond_30

    sget-object v0, Lcom/google/obf/ea;->b:Ljava/lang/String;

    const-string v1, "hb2000"

    .line 424
    invoke-virtual {v1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v0

    if-eqz v0, :cond_30

    const-string v0, "OMX.amlogic.avc.decoder.awesome"

    .line 425
    invoke-virtual {v0, p0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v0

    if-nez v0, :cond_2e

    const-string v0, "OMX.amlogic.avc.decoder.awesome.secure"

    .line 426
    invoke-virtual {v0, p0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result p0

    if-eqz p0, :cond_30

    :cond_2e
    const/4 p0, 0x1

    goto :goto_31

    :cond_30
    const/4 p0, 0x0

    :goto_31
    return p0
.end method

.method private static e(Ljava/lang/String;)Z
    .registers 3

    .line 428
    sget v0, Lcom/google/obf/ea;->a:I

    const/16 v1, 0x15

    if-ne v0, v1, :cond_10

    const-string v0, "OMX.google.aac.decoder"

    invoke-virtual {v0, p0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result p0

    if-eqz p0, :cond_10

    const/4 p0, 0x1

    goto :goto_11

    :cond_10
    const/4 p0, 0x0

    :goto_11
    return p0
.end method

.method private static f(Ljava/lang/String;)Z
    .registers 3

    .line 432
    sget v0, Lcom/google/obf/ea;->a:I

    const/16 v1, 0x13

    if-gt v0, v1, :cond_22

    sget-object v0, Lcom/google/obf/ea;->d:Ljava/lang/String;

    const-string v1, "ODROID-XU3"

    invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v0

    if-eqz v0, :cond_22

    const-string v0, "OMX.Exynos.AVC.Decoder"

    .line 433
    invoke-virtual {v0, p0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v0

    if-nez v0, :cond_20

    const-string v0, "OMX.Exynos.AVC.Decoder.secure"

    invoke-virtual {v0, p0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result p0

    if-eqz p0, :cond_22

    :cond_20
    const/4 p0, 0x1

    goto :goto_23

    :cond_22
    const/4 p0, 0x0

    :goto_23
    return p0
.end method

.method private g(J)V
    .registers 5
    .annotation system Ldalvik/annotation/Throws;
        value = {
            Lcom/google/obf/g;
        }
    .end annotation

    .line 158
    iget-object v0, p0, Lcom/google/obf/n;->h:Lcom/google/obf/r;

    const/4 v1, 0x0

    invoke-virtual {p0, p1, p2, v0, v1}, Lcom/google/obf/n;->a(JLcom/google/obf/r;Lcom/google/obf/t;)I

    move-result p1

    const/4 p2, -0x4

    if-ne p1, p2, :cond_f

    .line 160
    iget-object p1, p0, Lcom/google/obf/n;->h:Lcom/google/obf/r;

    invoke-virtual {p0, p1}, Lcom/google/obf/n;->a(Lcom/google/obf/r;)V

    :cond_f
    return-void
.end method

.method private h(J)I
    .registers 8

    .line 401
    iget-object v0, p0, Lcom/google/obf/n;->i:Ljava/util/List;

    invoke-interface {v0}, Ljava/util/List;->size()I

    move-result v0

    const/4 v1, 0x0

    :goto_7
    if-ge v1, v0, :cond_1d

    .line 403
    iget-object v2, p0, Lcom/google/obf/n;->i:Ljava/util/List;

    invoke-interface {v2, v1}, Ljava/util/List;->get(I)Ljava/lang/Object;

    move-result-object v2

    check-cast v2, Ljava/lang/Long;

    invoke-virtual {v2}, Ljava/lang/Long;->longValue()J

    move-result-wide v2

    cmp-long v4, v2, p1

    if-nez v4, :cond_1a

    return v1

    :cond_1a
    add-int/lit8 v1, v1, 0x1

    goto :goto_7

    :cond_1d
    const/4 p1, -0x1

    return p1
.end method

.method private i()V
    .registers 5
    .annotation system Ldalvik/annotation/Throws;
        value = {
            Lcom/google/obf/g;
        }
    .end annotation

    .line 375
    iget-object v0, p0, Lcom/google/obf/n;->o:Landroid/media/MediaCodec;

    invoke-virtual {v0}, Landroid/media/MediaCodec;->getOutputFormat()Landroid/media/MediaFormat;

    move-result-object v0

    .line 376
    iget-boolean v1, p0, Lcom/google/obf/n;->s:Z

    const/4 v2, 0x1

    if-eqz v1, :cond_20

    const-string v1, "width"

    .line 377
    invoke-virtual {v0, v1}, Landroid/media/MediaFormat;->getInteger(Ljava/lang/String;)I

    move-result v1

    const/16 v3, 0x20

    if-ne v1, v3, :cond_20

    const-string v1, "height"

    .line 378
    invoke-virtual {v0, v1}, Landroid/media/MediaFormat;->getInteger(Ljava/lang/String;)I

    move-result v1

    if-ne v1, v3, :cond_20

    .line 379
    iput-boolean v2, p0, Lcom/google/obf/n;->y:Z

    return-void

    .line 381
    :cond_20
    iget-boolean v1, p0, Lcom/google/obf/n;->w:Z

    if-eqz v1, :cond_29

    const-string v1, "channel-count"

    .line 382
    invoke-virtual {v0, v1, v2}, Landroid/media/MediaFormat;->setInteger(Ljava/lang/String;I)V

    .line 383
    :cond_29
    iget-object v1, p0, Lcom/google/obf/n;->o:Landroid/media/MediaCodec;

    invoke-virtual {p0, v1, v0}, Lcom/google/obf/n;->a(Landroid/media/MediaCodec;Landroid/media/MediaFormat;)V

    .line 384
    iget-object v0, p0, Lcom/google/obf/n;->a:Lcom/google/obf/c;

    iget v1, v0, Lcom/google/obf/c;->d:I

    add-int/2addr v1, v2

    iput v1, v0, Lcom/google/obf/c;->d:I

    return-void
.end method


# virtual methods
.method protected a(Lcom/google/obf/m;Ljava/lang/String;Z)Lcom/google/obf/f;
    .registers 4
    .annotation system Ldalvik/annotation/Throws;
        value = {
            Lcom/google/obf/o$b;
        }
    .end annotation

    .line 20
    invoke-interface {p1, p2, p3}, Lcom/google/obf/m;->a(Ljava/lang/String;Z)Lcom/google/obf/f;

    move-result-object p1

    return-object p1
.end method

.method protected a(J)V
    .registers 3
    .annotation system Ldalvik/annotation/Throws;
        value = {
            Lcom/google/obf/g;
        }
    .end annotation

    const/4 p1, 0x0

    .line 136
    iput p1, p0, Lcom/google/obf/n;->K:I

    .line 137
    iput-boolean p1, p0, Lcom/google/obf/n;->L:Z

    .line 138
    iput-boolean p1, p0, Lcom/google/obf/n;->M:Z

    .line 139
    iget-object p1, p0, Lcom/google/obf/n;->o:Landroid/media/MediaCodec;

    if-eqz p1, :cond_e

    .line 140
    invoke-virtual {p0}, Lcom/google/obf/n;->n()V

    :cond_e
    return-void
.end method

.method protected a(JJZ)V
    .registers 8
    .annotation system Ldalvik/annotation/Throws;
        value = {
            Lcom/google/obf/g;
        }
    .end annotation

    const/4 v0, 0x1

    const/4 v1, 0x0

    if-eqz p5, :cond_a

    .line 145
    iget p5, p0, Lcom/google/obf/n;->K:I

    if-nez p5, :cond_b

    const/4 p5, 0x1

    goto :goto_b

    :cond_a
    const/4 p5, 0x0

    .line 146
    :cond_b
    :goto_b
    iput p5, p0, Lcom/google/obf/n;->K:I

    .line 147
    iget-object p5, p0, Lcom/google/obf/n;->m:Lcom/google/obf/q;

    if-nez p5, :cond_14

    .line 148
    invoke-direct {p0, p1, p2}, Lcom/google/obf/n;->g(J)V

    .line 149
    :cond_14
    invoke-virtual {p0}, Lcom/google/obf/n;->j()V

    .line 150
    iget-object p5, p0, Lcom/google/obf/n;->o:Landroid/media/MediaCodec;

    if-eqz p5, :cond_37

    const-string p5, "drainAndFeed"

    .line 151
    invoke-static {p5}, Lcom/google/obf/dz;->a(Ljava/lang/String;)V

    .line 152
    :goto_20
    invoke-direct {p0, p1, p2, p3, p4}, Lcom/google/obf/n;->a(JJ)Z

    move-result p5

    if-eqz p5, :cond_27

    goto :goto_20

    .line 153
    :cond_27
    invoke-direct {p0, p1, p2, v0}, Lcom/google/obf/n;->a(JZ)Z

    move-result p3

    if-eqz p3, :cond_34

    .line 154
    :goto_2d
    invoke-direct {p0, p1, p2, v1}, Lcom/google/obf/n;->a(JZ)Z

    move-result p3

    if-eqz p3, :cond_34

    goto :goto_2d

    .line 155
    :cond_34
    invoke-static {}, Lcom/google/obf/dz;->a()V

    .line 156
    :cond_37
    iget-object p1, p0, Lcom/google/obf/n;->a:Lcom/google/obf/c;

    invoke-virtual {p1}, Lcom/google/obf/c;->a()V

    return-void
.end method

.method protected a(JLjava/nio/ByteBuffer;IZ)V
    .registers 6

    return-void
.end method

.method protected a(Landroid/media/MediaCodec;Landroid/media/MediaFormat;)V
    .registers 3
    .annotation system Ldalvik/annotation/Throws;
        value = {
            Lcom/google/obf/g;
        }
    .end annotation

    return-void
.end method

.method protected abstract a(Landroid/media/MediaCodec;ZLandroid/media/MediaFormat;Landroid/media/MediaCrypto;)V
.end method

.method protected a(Lcom/google/obf/r;)V
    .registers 7
    .annotation system Ldalvik/annotation/Throws;
        value = {
            Lcom/google/obf/g;
        }
    .end annotation

    .line 294
    iget-object v0, p0, Lcom/google/obf/n;->m:Lcom/google/obf/q;

    .line 295
    iget-object v1, p1, Lcom/google/obf/r;->a:Lcom/google/obf/q;

    iput-object v1, p0, Lcom/google/obf/n;->m:Lcom/google/obf/q;

    .line 296
    iget-object p1, p1, Lcom/google/obf/r;->b:Lcom/google/obf/ab;

    iput-object p1, p0, Lcom/google/obf/n;->n:Lcom/google/obf/ab;

    const/4 v1, 0x0

    const/4 v2, 0x1

    if-eqz p1, :cond_14

    .line 297
    iget-boolean p1, p0, Lcom/google/obf/n;->E:Z

    if-nez p1, :cond_14

    const/4 p1, 0x1

    goto :goto_15

    :cond_14
    const/4 p1, 0x0

    .line 298
    :goto_15
    iget-object v3, p0, Lcom/google/obf/n;->m:Lcom/google/obf/q;

    invoke-static {v3, v0}, Lcom/google/obf/ea;->a(Ljava/lang/Object;Ljava/lang/Object;)Z

    move-result v3

    if-eqz v3, :cond_20

    if-nez p1, :cond_20

    return-void

    .line 300
    :cond_20
    iget-object v3, p0, Lcom/google/obf/n;->o:Landroid/media/MediaCodec;

    if-eqz v3, :cond_4c

    if-nez p1, :cond_4c

    iget-boolean p1, p0, Lcom/google/obf/n;->p:Z

    iget-object v4, p0, Lcom/google/obf/n;->m:Lcom/google/obf/q;

    .line 301
    invoke-virtual {p0, v3, p1, v0, v4}, Lcom/google/obf/n;->a(Landroid/media/MediaCodec;ZLcom/google/obf/q;Lcom/google/obf/q;)Z

    move-result p1

    if-eqz p1, :cond_4c

    .line 302
    iput-boolean v2, p0, Lcom/google/obf/n;->F:Z

    .line 303
    iput v2, p0, Lcom/google/obf/n;->G:I

    .line 304
    iget-boolean p1, p0, Lcom/google/obf/n;->s:Z

    if-eqz p1, :cond_49

    iget-object p1, p0, Lcom/google/obf/n;->m:Lcom/google/obf/q;

    iget p1, p1, Lcom/google/obf/q;->h:I

    iget v3, v0, Lcom/google/obf/q;->h:I

    if-ne p1, v3, :cond_49

    iget-object p1, p0, Lcom/google/obf/n;->m:Lcom/google/obf/q;

    iget p1, p1, Lcom/google/obf/q;->i:I

    iget v0, v0, Lcom/google/obf/q;->i:I

    if-ne p1, v0, :cond_49

    const/4 v1, 0x1

    :cond_49
    iput-boolean v1, p0, Lcom/google/obf/n;->x:Z

    goto :goto_59

    .line 305
    :cond_4c
    iget-boolean p1, p0, Lcom/google/obf/n;->I:Z

    if-eqz p1, :cond_53

    .line 306
    iput v2, p0, Lcom/google/obf/n;->H:I

    goto :goto_59

    .line 307
    :cond_53
    invoke-virtual {p0}, Lcom/google/obf/n;->m()V

    .line 308
    invoke-virtual {p0}, Lcom/google/obf/n;->j()V

    :goto_59
    return-void
.end method

.method protected abstract a(JJLandroid/media/MediaCodec;Ljava/nio/ByteBuffer;Landroid/media/MediaCodec$BufferInfo;IZ)Z
    .annotation system Ldalvik/annotation/Throws;
        value = {
            Lcom/google/obf/g;
        }
    .end annotation
.end method

.method protected a(Landroid/media/MediaCodec;ZLcom/google/obf/q;Lcom/google/obf/q;)Z
    .registers 5

    const/4 p1, 0x0

    return p1
.end method

.method protected abstract a(Lcom/google/obf/m;Lcom/google/obf/q;)Z
    .annotation system Ldalvik/annotation/Throws;
        value = {
            Lcom/google/obf/o$b;
        }
    .end annotation
.end method

.method protected final a(Lcom/google/obf/q;)Z
    .registers 3
    .annotation system Ldalvik/annotation/Throws;
        value = {
            Lcom/google/obf/o$b;
        }
    .end annotation

    .line 19
    iget-object v0, p0, Lcom/google/obf/n;->d:Lcom/google/obf/m;

    invoke-virtual {p0, v0, p1}, Lcom/google/obf/n;->a(Lcom/google/obf/m;Lcom/google/obf/q;)Z

    move-result p1

    return p1
.end method

.method protected b(J)V
    .registers 3

    return-void
.end method

.method protected c()V
    .registers 1

    return-void
.end method

.method protected d()V
    .registers 1

    return-void
.end method

.method protected e()Z
    .registers 2

    .line 315
    iget-boolean v0, p0, Lcom/google/obf/n;->M:Z

    return v0
.end method

.method protected f()Z
    .registers 2

    .line 316
    iget-object v0, p0, Lcom/google/obf/n;->m:Lcom/google/obf/q;

    if-eqz v0, :cond_18

    iget-boolean v0, p0, Lcom/google/obf/n;->N:Z

    if-nez v0, :cond_18

    iget v0, p0, Lcom/google/obf/n;->K:I

    if-nez v0, :cond_16

    iget v0, p0, Lcom/google/obf/n;->D:I

    if-gez v0, :cond_16

    .line 317
    invoke-direct {p0}, Lcom/google/obf/n;->a()Z

    move-result v0

    if-eqz v0, :cond_18

    :cond_16
    const/4 v0, 0x1

    goto :goto_19

    :cond_18
    const/4 v0, 0x0

    :goto_19
    return v0
.end method

.method protected g()V
    .registers 4
    .annotation system Ldalvik/annotation/Throws;
        value = {
            Lcom/google/obf/g;
        }
    .end annotation

    const/4 v0, 0x0

    .line 83
    iput-object v0, p0, Lcom/google/obf/n;->m:Lcom/google/obf/q;

    .line 84
    iput-object v0, p0, Lcom/google/obf/n;->n:Lcom/google/obf/ab;

    const/4 v0, 0x0

    .line 85
    :try_start_6
    invoke-virtual {p0}, Lcom/google/obf/n;->m()V
    :try_end_9
    .catchall {:try_start_6 .. :try_end_9} :catchall_1d

    .line 86
    :try_start_9
    iget-boolean v1, p0, Lcom/google/obf/n;->E:Z

    if-eqz v1, :cond_14

    .line 87
    iget-object v1, p0, Lcom/google/obf/n;->e:Lcom/google/obf/ac;

    invoke-interface {v1}, Lcom/google/obf/ac;->a()V

    .line 88
    iput-boolean v0, p0, Lcom/google/obf/n;->E:Z
    :try_end_14
    .catchall {:try_start_9 .. :try_end_14} :catchall_18

    .line 89
    :cond_14
    invoke-super {p0}, Lcom/google/obf/v;->g()V

    return-void

    :catchall_18
    move-exception v0

    .line 91
    invoke-super {p0}, Lcom/google/obf/v;->g()V

    throw v0

    :catchall_1d
    move-exception v1

    .line 94
    :try_start_1e
    iget-boolean v2, p0, Lcom/google/obf/n;->E:Z

    if-eqz v2, :cond_29

    .line 95
    iget-object v2, p0, Lcom/google/obf/n;->e:Lcom/google/obf/ac;

    invoke-interface {v2}, Lcom/google/obf/ac;->a()V

    .line 96
    iput-boolean v0, p0, Lcom/google/obf/n;->E:Z
    :try_end_29
    .catchall {:try_start_1e .. :try_end_29} :catchall_2d

    .line 97
    :cond_29
    invoke-super {p0}, Lcom/google/obf/v;->g()V

    .line 99
    throw v1

    :catchall_2d
    move-exception v0

    invoke-super {p0}, Lcom/google/obf/v;->g()V

    throw v0
.end method

.method protected h()V
    .registers 1

    return-void
.end method

.method protected final j()V
    .registers 14
    .annotation system Ldalvik/annotation/Throws;
        value = {
            Lcom/google/obf/g;
        }
    .end annotation

    .line 21
    invoke-virtual {p0}, Lcom/google/obf/n;->k()Z

    move-result v0

    if-nez v0, :cond_7

    return-void

    .line 23
    :cond_7
    iget-object v0, p0, Lcom/google/obf/n;->m:Lcom/google/obf/q;

    iget-object v0, v0, Lcom/google/obf/q;->b:Ljava/lang/String;

    .line 26
    iget-object v1, p0, Lcom/google/obf/n;->n:Lcom/google/obf/ab;

    const/4 v7, 0x3

    const/4 v2, 0x0

    const/4 v3, 0x0

    const/4 v8, 0x1

    if-eqz v1, :cond_57

    .line 27
    iget-object v4, p0, Lcom/google/obf/n;->e:Lcom/google/obf/ac;

    if-eqz v4, :cond_4f

    .line 29
    iget-boolean v5, p0, Lcom/google/obf/n;->E:Z

    if-nez v5, :cond_20

    .line 30
    invoke-interface {v4, v1}, Lcom/google/obf/ac;->a(Lcom/google/obf/ab;)V

    .line 31
    iput-boolean v8, p0, Lcom/google/obf/n;->E:Z

    .line 32
    :cond_20
    iget-object v1, p0, Lcom/google/obf/n;->e:Lcom/google/obf/ac;

    invoke-interface {v1}, Lcom/google/obf/ac;->b()I

    move-result v1

    if-eqz v1, :cond_43

    if-eq v1, v7, :cond_2f

    const/4 v4, 0x4

    if-ne v1, v4, :cond_2e

    goto :goto_2f

    :cond_2e
    return-void

    .line 36
    :cond_2f
    :goto_2f
    iget-object v1, p0, Lcom/google/obf/n;->e:Lcom/google/obf/ac;

    invoke-interface {v1}, Lcom/google/obf/ac;->c()Lcom/google/obf/ad;

    move-result-object v1

    check-cast v1, Lcom/google/obf/ae;

    invoke-virtual {v1}, Lcom/google/obf/ae;->a()Landroid/media/MediaCrypto;

    move-result-object v1

    .line 37
    iget-object v4, p0, Lcom/google/obf/n;->e:Lcom/google/obf/ac;

    invoke-interface {v4, v0}, Lcom/google/obf/ac;->a(Ljava/lang/String;)Z

    move-result v4

    move v9, v4

    goto :goto_59

    .line 34
    :cond_43
    new-instance v0, Lcom/google/obf/g;

    iget-object v1, p0, Lcom/google/obf/n;->e:Lcom/google/obf/ac;

    invoke-interface {v1}, Lcom/google/obf/ac;->d()Ljava/lang/Exception;

    move-result-object v1

    invoke-direct {v0, v1}, Lcom/google/obf/g;-><init>(Ljava/lang/Throwable;)V

    throw v0

    .line 28
    :cond_4f
    new-instance v0, Lcom/google/obf/g;

    const-string v1, "Media requires a DrmSessionManager"

    invoke-direct {v0, v1}, Lcom/google/obf/g;-><init>(Ljava/lang/String;)V

    throw v0

    :cond_57
    move-object v1, v3

    const/4 v9, 0x0

    .line 40
    :goto_59
    :try_start_59
    iget-object v4, p0, Lcom/google/obf/n;->d:Lcom/google/obf/m;

    invoke-virtual {p0, v4, v0, v9}, Lcom/google/obf/n;->a(Lcom/google/obf/m;Ljava/lang/String;Z)Lcom/google/obf/f;

    move-result-object v0
    :try_end_5f
    .catch Lcom/google/obf/o$b; {:try_start_59 .. :try_end_5f} :catch_60

    goto :goto_6f

    :catch_60
    move-exception v0

    .line 43
    new-instance v4, Lcom/google/obf/n$a;

    iget-object v5, p0, Lcom/google/obf/n;->m:Lcom/google/obf/q;

    const v6, -0xc34e

    invoke-direct {v4, v5, v0, v9, v6}, Lcom/google/obf/n$a;-><init>(Lcom/google/obf/q;Ljava/lang/Throwable;ZI)V

    invoke-direct {p0, v4}, Lcom/google/obf/n;->a(Lcom/google/obf/n$a;)V

    move-object v0, v3

    :goto_6f
    if-nez v0, :cond_7e

    .line 45
    new-instance v4, Lcom/google/obf/n$a;

    iget-object v5, p0, Lcom/google/obf/n;->m:Lcom/google/obf/q;

    const v6, -0xc34f

    invoke-direct {v4, v5, v3, v9, v6}, Lcom/google/obf/n$a;-><init>(Lcom/google/obf/q;Ljava/lang/Throwable;ZI)V

    invoke-direct {p0, v4}, Lcom/google/obf/n;->a(Lcom/google/obf/n$a;)V

    .line 46
    :cond_7e
    iget-object v10, v0, Lcom/google/obf/f;->a:Ljava/lang/String;

    .line 47
    iget-boolean v3, v0, Lcom/google/obf/f;->c:Z

    if-eqz v3, :cond_8b

    invoke-static {v10}, Lcom/google/obf/n;->f(Ljava/lang/String;)Z

    move-result v3

    if-nez v3, :cond_8b

    const/4 v2, 0x1

    :cond_8b
    iput-boolean v2, p0, Lcom/google/obf/n;->p:Z

    .line 48
    iget-object v2, p0, Lcom/google/obf/n;->m:Lcom/google/obf/q;

    invoke-static {v10, v2}, Lcom/google/obf/n;->a(Ljava/lang/String;Lcom/google/obf/q;)Z

    move-result v2

    iput-boolean v2, p0, Lcom/google/obf/n;->q:Z

    .line 49
    invoke-static {v10}, Lcom/google/obf/n;->a(Ljava/lang/String;)Z

    move-result v2

    iput-boolean v2, p0, Lcom/google/obf/n;->r:Z

    .line 50
    invoke-static {v10}, Lcom/google/obf/n;->b(Ljava/lang/String;)Z

    move-result v2

    iput-boolean v2, p0, Lcom/google/obf/n;->s:Z

    .line 51
    invoke-static {v10}, Lcom/google/obf/n;->c(Ljava/lang/String;)Z

    move-result v2

    iput-boolean v2, p0, Lcom/google/obf/n;->t:Z

    .line 52
    invoke-static {v10}, Lcom/google/obf/n;->d(Ljava/lang/String;)Z

    move-result v2

    iput-boolean v2, p0, Lcom/google/obf/n;->u:Z

    .line 53
    invoke-static {v10}, Lcom/google/obf/n;->e(Ljava/lang/String;)Z

    move-result v2

    iput-boolean v2, p0, Lcom/google/obf/n;->v:Z

    .line 54
    iget-object v2, p0, Lcom/google/obf/n;->m:Lcom/google/obf/q;

    invoke-static {v10, v2}, Lcom/google/obf/n;->b(Ljava/lang/String;Lcom/google/obf/q;)Z

    move-result v2

    iput-boolean v2, p0, Lcom/google/obf/n;->w:Z

    .line 55
    :try_start_bb
    invoke-static {}, Landroid/os/SystemClock;->elapsedRealtime()J

    move-result-wide v2

    .line 56
    invoke-static {v10}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;

    move-result-object v4

    invoke-virtual {v4}, Ljava/lang/String;->length()I

    move-result v4

    add-int/lit8 v4, v4, 0x13

    new-instance v5, Ljava/lang/StringBuilder;

    invoke-direct {v5, v4}, Ljava/lang/StringBuilder;-><init>(I)V

    const-string v4, "createByCodecName("

    invoke-virtual {v5, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v5, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    const-string v4, ")"

    invoke-virtual {v5, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v4

    invoke-static {v4}, Lcom/google/obf/dz;->a(Ljava/lang/String;)V

    .line 57
    invoke-static {v10}, Landroid/media/MediaCodec;->createByCodecName(Ljava/lang/String;)Landroid/media/MediaCodec;

    move-result-object v4

    iput-object v4, p0, Lcom/google/obf/n;->o:Landroid/media/MediaCodec;

    .line 58
    invoke-static {}, Lcom/google/obf/dz;->a()V

    const-string v4, "configureCodec"

    .line 59
    invoke-static {v4}, Lcom/google/obf/dz;->a(Ljava/lang/String;)V

    .line 60
    iget-object v4, p0, Lcom/google/obf/n;->o:Landroid/media/MediaCodec;

    iget-boolean v0, v0, Lcom/google/obf/f;->c:Z

    iget-object v5, p0, Lcom/google/obf/n;->m:Lcom/google/obf/q;

    invoke-direct {p0, v5}, Lcom/google/obf/n;->b(Lcom/google/obf/q;)Landroid/media/MediaFormat;

    move-result-object v5

    invoke-virtual {p0, v4, v0, v5, v1}, Lcom/google/obf/n;->a(Landroid/media/MediaCodec;ZLandroid/media/MediaFormat;Landroid/media/MediaCrypto;)V

    .line 61
    invoke-static {}, Lcom/google/obf/dz;->a()V

    const-string v0, "codec.start()"

    .line 62
    invoke-static {v0}, Lcom/google/obf/dz;->a(Ljava/lang/String;)V

    .line 63
    iget-object v0, p0, Lcom/google/obf/n;->o:Landroid/media/MediaCodec;

    invoke-virtual {v0}, Landroid/media/MediaCodec;->start()V

    .line 64
    invoke-static {}, Lcom/google/obf/dz;->a()V

    .line 65
    invoke-static {}, Landroid/os/SystemClock;->elapsedRealtime()J

    move-result-wide v4

    sub-long v11, v4, v2

    move-object v1, p0

    move-object v2, v10

    move-wide v3, v4

    move-wide v5, v11

    .line 66
    invoke-direct/range {v1 .. v6}, Lcom/google/obf/n;->a(Ljava/lang/String;JJ)V

    .line 67
    iget-object v0, p0, Lcom/google/obf/n;->o:Landroid/media/MediaCodec;

    invoke-virtual {v0}, Landroid/media/MediaCodec;->getInputBuffers()[Ljava/nio/ByteBuffer;

    move-result-object v0

    iput-object v0, p0, Lcom/google/obf/n;->z:[Ljava/nio/ByteBuffer;

    .line 68
    iget-object v0, p0, Lcom/google/obf/n;->o:Landroid/media/MediaCodec;

    invoke-virtual {v0}, Landroid/media/MediaCodec;->getOutputBuffers()[Ljava/nio/ByteBuffer;

    move-result-object v0

    iput-object v0, p0, Lcom/google/obf/n;->A:[Ljava/nio/ByteBuffer;
    :try_end_12a
    .catch Ljava/lang/Exception; {:try_start_bb .. :try_end_12a} :catch_12b

    goto :goto_136

    :catch_12b
    move-exception v0

    .line 71
    new-instance v1, Lcom/google/obf/n$a;

    iget-object v2, p0, Lcom/google/obf/n;->m:Lcom/google/obf/q;

    invoke-direct {v1, v2, v0, v9, v10}, Lcom/google/obf/n$a;-><init>(Lcom/google/obf/q;Ljava/lang/Throwable;ZLjava/lang/String;)V

    invoke-direct {p0, v1}, Lcom/google/obf/n;->a(Lcom/google/obf/n$a;)V

    .line 72
    :goto_136
    invoke-virtual {p0}, Lcom/google/obf/n;->v()I

    move-result v0

    if-ne v0, v7, :cond_141

    .line 73
    invoke-static {}, Landroid/os/SystemClock;->elapsedRealtime()J

    move-result-wide v0

    goto :goto_143

    :cond_141
    const-wide/16 v0, -0x1

    :goto_143
    iput-wide v0, p0, Lcom/google/obf/n;->B:J

    const/4 v0, -0x1

    .line 74
    iput v0, p0, Lcom/google/obf/n;->C:I

    .line 75
    iput v0, p0, Lcom/google/obf/n;->D:I

    .line 76
    iput-boolean v8, p0, Lcom/google/obf/n;->O:Z

    .line 77
    iget-object v0, p0, Lcom/google/obf/n;->a:Lcom/google/obf/c;

    iget v1, v0, Lcom/google/obf/c;->a:I

    add-int/2addr v1, v8

    iput v1, v0, Lcom/google/obf/c;->a:I

    return-void
.end method

.method protected k()Z
    .registers 2

    .line 81
    iget-object v0, p0, Lcom/google/obf/n;->o:Landroid/media/MediaCodec;

    if-nez v0, :cond_a

    iget-object v0, p0, Lcom/google/obf/n;->m:Lcom/google/obf/q;

    if-eqz v0, :cond_a

    const/4 v0, 0x1

    goto :goto_b

    :cond_a
    const/4 v0, 0x0

    :goto_b
    return v0
.end method

.method protected final l()Z
    .registers 2

    .line 82
    iget-object v0, p0, Lcom/google/obf/n;->o:Landroid/media/MediaCodec;

    if-eqz v0, :cond_6

    const/4 v0, 0x1

    goto :goto_7

    :cond_6
    const/4 v0, 0x0

    :goto_7
    return v0
.end method

.method protected m()V
    .registers 4

    .line 101
    iget-object v0, p0, Lcom/google/obf/n;->o:Landroid/media/MediaCodec;

    if-eqz v0, :cond_5c

    const-wide/16 v0, -0x1

    .line 102
    iput-wide v0, p0, Lcom/google/obf/n;->B:J

    const/4 v0, -0x1

    .line 103
    iput v0, p0, Lcom/google/obf/n;->C:I

    .line 104
    iput v0, p0, Lcom/google/obf/n;->D:I

    const/4 v0, 0x0

    .line 105
    iput-boolean v0, p0, Lcom/google/obf/n;->N:Z

    .line 106
    iget-object v1, p0, Lcom/google/obf/n;->i:Ljava/util/List;

    invoke-interface {v1}, Ljava/util/List;->clear()V

    const/4 v1, 0x0

    .line 107
    iput-object v1, p0, Lcom/google/obf/n;->z:[Ljava/nio/ByteBuffer;

    .line 108
    iput-object v1, p0, Lcom/google/obf/n;->A:[Ljava/nio/ByteBuffer;

    .line 109
    iput-boolean v0, p0, Lcom/google/obf/n;->F:Z

    .line 110
    iput-boolean v0, p0, Lcom/google/obf/n;->I:Z

    .line 111
    iput-boolean v0, p0, Lcom/google/obf/n;->p:Z

    .line 112
    iput-boolean v0, p0, Lcom/google/obf/n;->q:Z

    .line 113
    iput-boolean v0, p0, Lcom/google/obf/n;->r:Z

    .line 114
    iput-boolean v0, p0, Lcom/google/obf/n;->s:Z

    .line 115
    iput-boolean v0, p0, Lcom/google/obf/n;->t:Z

    .line 116
    iput-boolean v0, p0, Lcom/google/obf/n;->u:Z

    .line 117
    iput-boolean v0, p0, Lcom/google/obf/n;->w:Z

    .line 118
    iput-boolean v0, p0, Lcom/google/obf/n;->x:Z

    .line 119
    iput-boolean v0, p0, Lcom/google/obf/n;->y:Z

    .line 120
    iput-boolean v0, p0, Lcom/google/obf/n;->J:Z

    .line 121
    iput v0, p0, Lcom/google/obf/n;->G:I

    .line 122
    iput v0, p0, Lcom/google/obf/n;->H:I

    .line 123
    iget-object v0, p0, Lcom/google/obf/n;->a:Lcom/google/obf/c;

    iget v2, v0, Lcom/google/obf/c;->b:I

    add-int/lit8 v2, v2, 0x1

    iput v2, v0, Lcom/google/obf/c;->b:I

    .line 124
    :try_start_3e
    iget-object v0, p0, Lcom/google/obf/n;->o:Landroid/media/MediaCodec;

    invoke-virtual {v0}, Landroid/media/MediaCodec;->stop()V
    :try_end_43
    .catchall {:try_start_3e .. :try_end_43} :catchall_4f

    .line 125
    :try_start_43
    iget-object v0, p0, Lcom/google/obf/n;->o:Landroid/media/MediaCodec;

    invoke-virtual {v0}, Landroid/media/MediaCodec;->release()V
    :try_end_48
    .catchall {:try_start_43 .. :try_end_48} :catchall_4b

    .line 126
    iput-object v1, p0, Lcom/google/obf/n;->o:Landroid/media/MediaCodec;

    goto :goto_5c

    :catchall_4b
    move-exception v0

    .line 128
    iput-object v1, p0, Lcom/google/obf/n;->o:Landroid/media/MediaCodec;

    throw v0

    :catchall_4f
    move-exception v0

    .line 131
    :try_start_50
    iget-object v2, p0, Lcom/google/obf/n;->o:Landroid/media/MediaCodec;

    invoke-virtual {v2}, Landroid/media/MediaCodec;->release()V
    :try_end_55
    .catchall {:try_start_50 .. :try_end_55} :catchall_58

    .line 132
    iput-object v1, p0, Lcom/google/obf/n;->o:Landroid/media/MediaCodec;

    .line 134
    throw v0

    :catchall_58
    move-exception v0

    iput-object v1, p0, Lcom/google/obf/n;->o:Landroid/media/MediaCodec;

    throw v0

    :cond_5c
    :goto_5c
    return-void
.end method

.method protected n()V
    .registers 4
    .annotation system Ldalvik/annotation/Throws;
        value = {
            Lcom/google/obf/g;
        }
    .end annotation

    const-wide/16 v0, -0x1

    .line 162
    iput-wide v0, p0, Lcom/google/obf/n;->B:J

    const/4 v0, -0x1

    .line 163
    iput v0, p0, Lcom/google/obf/n;->C:I

    .line 164
    iput v0, p0, Lcom/google/obf/n;->D:I

    const/4 v0, 0x1

    .line 165
    iput-boolean v0, p0, Lcom/google/obf/n;->O:Z

    const/4 v1, 0x0

    .line 166
    iput-boolean v1, p0, Lcom/google/obf/n;->N:Z

    .line 167
    iget-object v2, p0, Lcom/google/obf/n;->i:Ljava/util/List;

    invoke-interface {v2}, Ljava/util/List;->clear()V

    .line 168
    iput-boolean v1, p0, Lcom/google/obf/n;->x:Z

    .line 169
    iput-boolean v1, p0, Lcom/google/obf/n;->y:Z

    .line 170
    iget-boolean v2, p0, Lcom/google/obf/n;->r:Z

    if-nez v2, :cond_38

    iget-boolean v2, p0, Lcom/google/obf/n;->u:Z

    if-eqz v2, :cond_25

    iget-boolean v2, p0, Lcom/google/obf/n;->J:Z

    if-eqz v2, :cond_25

    goto :goto_38

    .line 173
    :cond_25
    iget v2, p0, Lcom/google/obf/n;->H:I

    if-eqz v2, :cond_30

    .line 174
    invoke-virtual {p0}, Lcom/google/obf/n;->m()V

    .line 175
    invoke-virtual {p0}, Lcom/google/obf/n;->j()V

    goto :goto_3e

    .line 176
    :cond_30
    iget-object v2, p0, Lcom/google/obf/n;->o:Landroid/media/MediaCodec;

    invoke-virtual {v2}, Landroid/media/MediaCodec;->flush()V

    .line 177
    iput-boolean v1, p0, Lcom/google/obf/n;->I:Z

    goto :goto_3e

    .line 171
    :cond_38
    :goto_38
    invoke-virtual {p0}, Lcom/google/obf/n;->m()V

    .line 172
    invoke-virtual {p0}, Lcom/google/obf/n;->j()V

    .line 178
    :goto_3e
    iget-boolean v1, p0, Lcom/google/obf/n;->F:Z

    if-eqz v1, :cond_48

    iget-object v1, p0, Lcom/google/obf/n;->m:Lcom/google/obf/q;

    if-eqz v1, :cond_48

    .line 179
    iput v0, p0, Lcom/google/obf/n;->G:I

    :cond_48
    return-void
.end method

.method protected final o()I
    .registers 2

    .line 319
    iget v0, p0, Lcom/google/obf/n;->K:I

    return v0
.end method

.method protected p()J
    .registers 3

    const-wide/16 v0, 0x0

    return-wide v0
.end method