a.smali
.class public abstract Lcom/polly/mobile/videosdk/a/a;
.super Ljava/lang/Object;
.source "SourceFile"
# static fields
.field protected static final a:[F
.field protected static final b:[F
.field public static final c:[F
.field public static final d:[F
.field public static final e:[F
.field public static final f:[F
.field public static final g:[F
.field public static final h:[F
.field private static final s:[F
# instance fields
.field protected i:Ljava/nio/FloatBuffer;
.field protected j:Ljava/nio/FloatBuffer;
.field protected k:[F
.field protected l:Z
.field protected m:I
.field protected n:I
.field protected o:I
.field protected p:I
.field protected q:Z
.field protected r:F
# direct methods
.method static constructor <clinit>()V
.registers 2
const/16 v0, 0x8
new-array v1, v0, [F
.line 36
fill-array-data v1, :array_46
sput-object v1, Lcom/polly/mobile/videosdk/a/a;->s:[F
new-array v1, v0, [F
.line 46
fill-array-data v1, :array_5a
sput-object v1, Lcom/polly/mobile/videosdk/a/a;->a:[F
new-array v0, v0, [F
.line 53
fill-array-data v0, :array_6e
sput-object v0, Lcom/polly/mobile/videosdk/a/a;->b:[F
const/16 v0, 0x9
new-array v1, v0, [F
.line 61
fill-array-data v1, :array_82
sput-object v1, Lcom/polly/mobile/videosdk/a/a;->c:[F
new-array v1, v0, [F
.line 67
fill-array-data v1, :array_98
sput-object v1, Lcom/polly/mobile/videosdk/a/a;->d:[F
new-array v1, v0, [F
.line 73
fill-array-data v1, :array_ae
sput-object v1, Lcom/polly/mobile/videosdk/a/a;->e:[F
new-array v0, v0, [F
.line 79
fill-array-data v0, :array_c4
sput-object v0, Lcom/polly/mobile/videosdk/a/a;->f:[F
const/4 v0, 0x3
new-array v1, v0, [F
.line 85
fill-array-data v1, :array_da
sput-object v1, Lcom/polly/mobile/videosdk/a/a;->g:[F
new-array v0, v0, [F
.line 89
fill-array-data v0, :array_e4
sput-object v0, Lcom/polly/mobile/videosdk/a/a;->h:[F
return-void
nop
:array_46
.array-data 4
-0x40800000 # -1.0f
-0x40800000 # -1.0f
0x3f800000 # 1.0f
-0x40800000 # -1.0f
-0x40800000 # -1.0f
0x3f800000 # 1.0f
0x3f800000 # 1.0f
0x3f800000 # 1.0f
.end array-data
:array_5a
.array-data 4
0x0
0x3f800000 # 1.0f
0x3f800000 # 1.0f
0x3f800000 # 1.0f
0x0
0x0
0x3f800000 # 1.0f
0x0
.end array-data
:array_6e
.array-data 4
0x0
0x0
0x3f800000 # 1.0f
0x0
0x0
0x3f800000 # 1.0f
0x3f800000 # 1.0f
0x3f800000 # 1.0f
.end array-data
:array_82
.array-data 4
0x3f800000 # 1.0f
0x3f800000 # 1.0f
0x3f800000 # 1.0f
0x0
-0x414fdf3b # -0.344f
0x3fe2d0e5 # 1.772f
0x3fb374bc # 1.402f
-0x40c9374c # -0.714f
0x0
.end array-data
:array_98
.array-data 4
0x3f800000 # 1.0f
0x3f800000 # 1.0f
0x3f800000 # 1.0f
0x0
-0x41c0346e # -0.1873f
0x3fed844d # 1.8556f
0x3fc9930c # 1.5748f
-0x41105532 # -0.4681f
0x0
.end array-data
:array_ae
.array-data 4
0x3f94fdf4 # 1.164f
0x3f94fdf4 # 1.164f
0x3f94fdf4 # 1.164f
0x0
-0x41374bc7 # -0.392f
0x40011687 # 2.017f
0x3fcc49ba # 1.596f
-0x40afdf3b # -0.813f
0x0
.end array-data
:array_c4
.array-data 4
0x3f950b0f # 1.1644f
0x3f950b0f # 1.1644f
0x3f950b0f # 1.1644f
0x0
-0x41a5aee6 # -0.2132f
0x40073190 # 2.1124f
0x3fe57732 # 1.7927f
-0x40f793de # -0.5329f
0x0
.end array-data
:array_da
.array-data 4
-0x427f7f7f
-0x41000000 # -0.5f
-0x41000000 # -0.5f
.end array-data
:array_e4
.array-data 4
0x0
-0x41000000 # -0.5f
-0x41000000 # -0.5f
.end array-data
.end method
.method public constructor <init>()V
.registers 3
.line 124
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
const/4 v0, 0x0
.line 95
iput-object v0, p0, Lcom/polly/mobile/videosdk/a/a;->i:Ljava/nio/FloatBuffer;
.line 100
iput-object v0, p0, Lcom/polly/mobile/videosdk/a/a;->j:Ljava/nio/FloatBuffer;
.line 102
sget-object v0, Lcom/polly/mobile/videosdk/a/a;->a:[F
iput-object v0, p0, Lcom/polly/mobile/videosdk/a/a;->k:[F
const/4 v0, 0x0
.line 107
iput-boolean v0, p0, Lcom/polly/mobile/videosdk/a/a;->l:Z
const/16 v1, 0x64
.line 112
iput v1, p0, Lcom/polly/mobile/videosdk/a/a;->m:I
const/4 v1, -0x1
.line 114
iput v1, p0, Lcom/polly/mobile/videosdk/a/a;->n:I
.line 118
iput-boolean v0, p0, Lcom/polly/mobile/videosdk/a/a;->q:Z
const/high16 v0, 0x3f800000 # 1.0f
.line 120
iput v0, p0, Lcom/polly/mobile/videosdk/a/a;->r:F
return-void
.end method
.method public constructor <init>(Z)V
.registers 4
.line 127
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
const/4 v0, 0x0
.line 95
iput-object v0, p0, Lcom/polly/mobile/videosdk/a/a;->i:Ljava/nio/FloatBuffer;
.line 100
iput-object v0, p0, Lcom/polly/mobile/videosdk/a/a;->j:Ljava/nio/FloatBuffer;
.line 102
sget-object v0, Lcom/polly/mobile/videosdk/a/a;->a:[F
iput-object v0, p0, Lcom/polly/mobile/videosdk/a/a;->k:[F
const/4 v0, 0x0
.line 107
iput-boolean v0, p0, Lcom/polly/mobile/videosdk/a/a;->l:Z
const/16 v1, 0x64
.line 112
iput v1, p0, Lcom/polly/mobile/videosdk/a/a;->m:I
const/4 v1, -0x1
.line 114
iput v1, p0, Lcom/polly/mobile/videosdk/a/a;->n:I
.line 118
iput-boolean v0, p0, Lcom/polly/mobile/videosdk/a/a;->q:Z
const/high16 v0, 0x3f800000 # 1.0f
.line 120
iput v0, p0, Lcom/polly/mobile/videosdk/a/a;->r:F
.line 128
invoke-static {p1}, Lcom/polly/mobile/videosdk/a/a;->a(Z)[F
move-result-object p1
iput-object p1, p0, Lcom/polly/mobile/videosdk/a/a;->k:[F
return-void
.end method
.method private static a(Ljava/lang/String;I)I
.registers 4
const/4 v0, 0x1
new-array v0, v0, [I
.line 272
invoke-static {p1}, Landroid/opengl/GLES20;->glCreateShader(I)I
move-result p1
.line 273
invoke-static {p1, p0}, Landroid/opengl/GLES20;->glShaderSource(ILjava/lang/String;)V
.line 274
invoke-static {p1}, Landroid/opengl/GLES20;->glCompileShader(I)V
const/4 p0, 0x0
const v1, 0x8b81
.line 275
invoke-static {p1, v1, v0, p0}, Landroid/opengl/GLES20;->glGetShaderiv(II[II)V
.line 276
aget p0, v0, p0
if-nez p0, :cond_31
.line 277
new-instance p0, Ljava/lang/StringBuilder;
const-string v0, "Shader compilation failed with reason: "
invoke-direct {p0, v0}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-static {p1}, Landroid/opengl/GLES20;->glGetShaderInfoLog(I)Ljava/lang/String;
move-result-object p1
invoke-virtual {p0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
const-string p1, "vpsdkfilter"
invoke-static {p1, p0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
const/4 p0, -0x1
return p0
:cond_31
return p1
.end method
.method protected static a(Ljava/lang/String;Ljava/lang/String;)I
.registers 8
const/4 v0, 0x1
new-array v0, v0, [I
const v1, 0x8b31
.line 296
invoke-static {p0, v1}, Lcom/polly/mobile/videosdk/a/a;->a(Ljava/lang/String;I)I
move-result p0
const-string v1, "vpsdkfilter"
const/4 v2, -0x1
if-ne v2, p0, :cond_15
const-string p0, "Vertex Shader program failed"
.line 298
invoke-static {v1, p0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
return v2
:cond_15
const v3, 0x8b30
.line 302
invoke-static {p1, v3}, Lcom/polly/mobile/videosdk/a/a;->a(Ljava/lang/String;I)I
move-result p1
if-ne v2, p1, :cond_27
const-string p1, "Fragment Shader program failed"
.line 304
invoke-static {v1, p1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
.line 305
invoke-static {p0}, Landroid/opengl/GLES20;->glDeleteShader(I)V
return v2
.line 309
:cond_27
invoke-static {}, Landroid/opengl/GLES20;->glCreateProgram()I
move-result v3
.line 310
invoke-static {v3, p0}, Landroid/opengl/GLES20;->glAttachShader(II)V
.line 311
invoke-static {v3, p1}, Landroid/opengl/GLES20;->glAttachShader(II)V
.line 312
invoke-static {v3}, Landroid/opengl/GLES20;->glLinkProgram(I)V
const v4, 0x8b82
const/4 v5, 0x0
.line 314
invoke-static {v3, v4, v0, v5}, Landroid/opengl/GLES20;->glGetProgramiv(II[II)V
.line 315
aget v0, v0, v5
if-gtz v0, :cond_5b
.line 316
new-instance v0, Ljava/lang/StringBuilder;
const-string v4, "Shader program link error: "
invoke-direct {v0, v4}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-static {v3}, Landroid/opengl/GLES20;->glGetProgramInfoLog(I)Ljava/lang/String;
move-result-object v3
invoke-virtual {v0, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-static {v1, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
.line 317
invoke-static {p0}, Landroid/opengl/GLES20;->glDeleteShader(I)V
.line 318
invoke-static {p1}, Landroid/opengl/GLES20;->glDeleteShader(I)V
return v2
.line 322
:cond_5b
invoke-static {p0}, Landroid/opengl/GLES20;->glDeleteShader(I)V
.line 323
invoke-static {p1}, Landroid/opengl/GLES20;->glDeleteShader(I)V
return v3
.end method
.method private static a(Z)[F
.registers 1
if-eqz p0, :cond_5
.line 133
sget-object p0, Lcom/polly/mobile/videosdk/a/a;->b:[F
return-object p0
.line 135
:cond_5
sget-object p0, Lcom/polly/mobile/videosdk/a/a;->a:[F
return-object p0
.end method
# virtual methods
.method public final a()V
.registers 4
.line 142
invoke-virtual {p0}, Lcom/polly/mobile/videosdk/a/a;->b()V
.line 144
sget-object v0, Lcom/polly/mobile/videosdk/a/a;->s:[F
array-length v0, v0
mul-int/lit8 v0, v0, 0x4
invoke-static {v0}, Ljava/nio/ByteBuffer;->allocateDirect(I)Ljava/nio/ByteBuffer;
move-result-object v0
.line 145
invoke-static {}, Ljava/nio/ByteOrder;->nativeOrder()Ljava/nio/ByteOrder;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/nio/ByteBuffer;->order(Ljava/nio/ByteOrder;)Ljava/nio/ByteBuffer;
move-result-object v0
.line 146
invoke-virtual {v0}, Ljava/nio/ByteBuffer;->asFloatBuffer()Ljava/nio/FloatBuffer;
move-result-object v0
iput-object v0, p0, Lcom/polly/mobile/videosdk/a/a;->i:Ljava/nio/FloatBuffer;
.line 147
sget-object v1, Lcom/polly/mobile/videosdk/a/a;->s:[F
invoke-virtual {v0, v1}, Ljava/nio/FloatBuffer;->put([F)Ljava/nio/FloatBuffer;
move-result-object v0
const/4 v1, 0x0
invoke-virtual {v0, v1}, Ljava/nio/FloatBuffer;->position(I)Ljava/nio/Buffer;
.line 149
iget-object v0, p0, Lcom/polly/mobile/videosdk/a/a;->k:[F
array-length v0, v0
mul-int/lit8 v0, v0, 0x4
invoke-static {v0}, Ljava/nio/ByteBuffer;->allocateDirect(I)Ljava/nio/ByteBuffer;
move-result-object v0
.line 150
invoke-static {}, Ljava/nio/ByteOrder;->nativeOrder()Ljava/nio/ByteOrder;
move-result-object v2
invoke-virtual {v0, v2}, Ljava/nio/ByteBuffer;->order(Ljava/nio/ByteOrder;)Ljava/nio/ByteBuffer;
move-result-object v0
.line 151
invoke-virtual {v0}, Ljava/nio/ByteBuffer;->asFloatBuffer()Ljava/nio/FloatBuffer;
move-result-object v0
iput-object v0, p0, Lcom/polly/mobile/videosdk/a/a;->j:Ljava/nio/FloatBuffer;
.line 152
iget-object v2, p0, Lcom/polly/mobile/videosdk/a/a;->k:[F
invoke-virtual {v0, v2}, Ljava/nio/FloatBuffer;->put([F)Ljava/nio/FloatBuffer;
move-result-object v0
invoke-virtual {v0, v1}, Ljava/nio/FloatBuffer;->position(I)Ljava/nio/Buffer;
const/4 v0, 0x1
.line 154
iput-boolean v0, p0, Lcom/polly/mobile/videosdk/a/a;->l:Z
.line 155
invoke-virtual {p0}, Lcom/polly/mobile/videosdk/a/a;->c()V
return-void
.end method
.method public a([I[F[F)V
.registers 4
return-void
.end method
.method protected b()V
.registers 1
return-void
.end method
.method protected c()V
.registers 1
return-void
.end method
.method public final d()V
.registers 2
const/4 v0, 0x0
.line 180
iput-boolean v0, p0, Lcom/polly/mobile/videosdk/a/a;->l:Z
const/4 v0, 0x0
.line 181
iput-object v0, p0, Lcom/polly/mobile/videosdk/a/a;->i:Ljava/nio/FloatBuffer;
.line 182
iput-object v0, p0, Lcom/polly/mobile/videosdk/a/a;->j:Ljava/nio/FloatBuffer;
.line 184
iget v0, p0, Lcom/polly/mobile/videosdk/a/a;->n:I
if-lez v0, :cond_12
.line 185
invoke-static {v0}, Landroid/opengl/GLES20;->glDeleteProgram(I)V
const/4 v0, -0x1
.line 186
iput v0, p0, Lcom/polly/mobile/videosdk/a/a;->n:I
:cond_12
return-void
.end method
.method public final e()V
.registers 3
const/4 v0, 0x1
.line 199
invoke-static {v0}, Lcom/polly/mobile/videosdk/a/a;->a(Z)[F
move-result-object v0
.line 200
iget-object v1, p0, Lcom/polly/mobile/videosdk/a/a;->k:[F
if-eq v0, v1, :cond_1e
.line 201
iput-object v0, p0, Lcom/polly/mobile/videosdk/a/a;->k:[F
.line 202
iget-object v0, p0, Lcom/polly/mobile/videosdk/a/a;->j:Ljava/nio/FloatBuffer;
if-eqz v0, :cond_1e
.line 203
invoke-virtual {v0}, Ljava/nio/FloatBuffer;->rewind()Ljava/nio/Buffer;
.line 204
iget-object v0, p0, Lcom/polly/mobile/videosdk/a/a;->j:Ljava/nio/FloatBuffer;
iget-object v1, p0, Lcom/polly/mobile/videosdk/a/a;->k:[F
invoke-virtual {v0, v1}, Ljava/nio/FloatBuffer;->put([F)Ljava/nio/FloatBuffer;
move-result-object v0
const/4 v1, 0x0
invoke-virtual {v0, v1}, Ljava/nio/FloatBuffer;->position(I)Ljava/nio/Buffer;
:cond_1e
return-void
.end method
.method public final f()V
.registers 2
const/high16 v0, 0x3f800000 # 1.0f
.line 213
iput v0, p0, Lcom/polly/mobile/videosdk/a/a;->r:F
return-void
.end method
.method public final g()V
.registers 9
.line 218
iget v0, p0, Lcom/polly/mobile/videosdk/a/a;->n:I
invoke-static {v0}, Landroid/opengl/GLES20;->glUseProgram(I)V
.line 219
iget-object v0, p0, Lcom/polly/mobile/videosdk/a/a;->i:Ljava/nio/FloatBuffer;
const/4 v1, 0x0
invoke-virtual {v0, v1}, Ljava/nio/FloatBuffer;->position(I)Ljava/nio/Buffer;
.line 220
iget v2, p0, Lcom/polly/mobile/videosdk/a/a;->o:I
iget-object v7, p0, Lcom/polly/mobile/videosdk/a/a;->i:Ljava/nio/FloatBuffer;
const/4 v3, 0x2
const/16 v4, 0x1406
const/4 v5, 0x0
const/4 v6, 0x0
invoke-static/range {v2 .. v7}, Landroid/opengl/GLES20;->glVertexAttribPointer(IIIZILjava/nio/Buffer;)V
.line 221
iget v0, p0, Lcom/polly/mobile/videosdk/a/a;->o:I
invoke-static {v0}, Landroid/opengl/GLES20;->glEnableVertexAttribArray(I)V
.line 223
iget-object v0, p0, Lcom/polly/mobile/videosdk/a/a;->j:Ljava/nio/FloatBuffer;
invoke-virtual {v0, v1}, Ljava/nio/FloatBuffer;->position(I)Ljava/nio/Buffer;
.line 224
iget v2, p0, Lcom/polly/mobile/videosdk/a/a;->p:I
iget-object v7, p0, Lcom/polly/mobile/videosdk/a/a;->j:Ljava/nio/FloatBuffer;
invoke-static/range {v2 .. v7}, Landroid/opengl/GLES20;->glVertexAttribPointer(IIIZILjava/nio/Buffer;)V
.line 226
iget v0, p0, Lcom/polly/mobile/videosdk/a/a;->p:I
invoke-static {v0}, Landroid/opengl/GLES20;->glEnableVertexAttribArray(I)V
return-void
.end method
.method public final h()V
.registers 2
.line 230
iget v0, p0, Lcom/polly/mobile/videosdk/a/a;->o:I
invoke-static {v0}, Landroid/opengl/GLES20;->glDisableVertexAttribArray(I)V
.line 231
iget v0, p0, Lcom/polly/mobile/videosdk/a/a;->p:I
invoke-static {v0}, Landroid/opengl/GLES20;->glDisableVertexAttribArray(I)V
const/4 v0, 0x0
.line 232
invoke-static {v0}, Landroid/opengl/GLES20;->glUseProgram(I)V
return-void
.end method
.method public final i()Z
.registers 2
.line 252
iget-boolean v0, p0, Lcom/polly/mobile/videosdk/a/a;->l:Z
return v0
.end method