l.smali
.class public Lh7/l;
.super Lg7/a;
.source "HueFilter.java"
# interfaces
.implements Lg7/e;
# instance fields
.field public i:F
.field public j:I
# direct methods
.method static constructor <clinit>()V
.registers 1
return-void
.end method
.method public constructor <init>()V
.registers 2
invoke-direct {p0}, Lg7/a;-><init>()V
const/4 v0, 0x0
iput v0, p0, Lh7/l;->i:F
const/4 v0, -0x1
iput v0, p0, Lh7/l;->j:I
return-void
.end method
# virtual methods
.method public a(I)V
.registers 3
invoke-super {p0, p1}, Lg7/a;->a(I)V
const-string v0, "hue"
invoke-static {p1, v0}, Landroid/opengl/GLES20;->glGetUniformLocation(ILjava/lang/String;)I
move-result p1
iput p1, p0, Lh7/l;->j:I
invoke-static {p1, v0}, Ls7/a;->a(ILjava/lang/String;)V
return-void
.end method
.method public b(F)V
.registers 3
const/high16 v0, 0x43b40000 # 360.0f
mul-float p1, p1, v0
invoke-virtual {p0, p1}, Lh7/l;->c(F)V
return-void
.end method
.method public b(J[F)V
.registers 4
.param p1 # J
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
invoke-super {p0, p1, p2, p3}, Lg7/a;->b(J[F)V
iget p1, p0, Lh7/l;->i:F
const/high16 p2, 0x42340000 # 45.0f
sub-float/2addr p1, p2
div-float/2addr p1, p2
const/high16 p2, 0x3f000000 # 0.5f
add-float/2addr p1, p2
const/high16 p2, -0x40800000 # -1.0f
mul-float p1, p1, p2
iget p2, p0, Lh7/l;->j:I
invoke-static {p2, p1}, Landroid/opengl/GLES20;->glUniform1f(IF)V
const-string p1, "glUniform1f"
invoke-static {p1}, Ls7/a;->a(Ljava/lang/String;)V
return-void
.end method
.method public c()Ljava/lang/String;
.registers 2
.annotation build Landroidx/annotation/NonNull;
.end annotation
const-string v0, "#extension GL_OES_EGL_image_external : require\nprecision mediump float;\nvarying vec2 vTextureCoord;\nuniform samplerExternalOES sTexture;\nuniform float hue;\nvoid main() {\n vec4 kRGBToYPrime = vec4 (0.299, 0.587, 0.114, 0.0);\n vec4 kRGBToI = vec4 (0.595716, -0.274453, -0.321263, 0.0);\n vec4 kRGBToQ = vec4 (0.211456, -0.522591, 0.31135, 0.0);\n vec4 kYIQToR = vec4 (1.0, 0.9563, 0.6210, 0.0);\n vec4 kYIQToG = vec4 (1.0, -0.2721, -0.6474, 0.0);\n vec4 kYIQToB = vec4 (1.0, -1.1070, 1.7046, 0.0);\n vec4 color = texture2D(sTexture, vTextureCoord);\n float YPrime = dot(color, kRGBToYPrime);\n float I = dot(color, kRGBToI);\n float Q = dot(color, kRGBToQ);\n float chroma = sqrt (I * I + Q * Q);\n Q = chroma * sin (hue);\n I = chroma * cos (hue);\n vec4 yIQ = vec4 (YPrime, I, Q, 0.0);\n color.r = dot (yIQ, kYIQToR);\n color.g = dot (yIQ, kYIQToG);\n color.b = dot (yIQ, kYIQToB);\n gl_FragColor = color;\n}\n"
return-object v0
.end method
.method public c(F)V
.registers 3
const/high16 v0, 0x43b40000 # 360.0f
rem-float/2addr p1, v0
iput p1, p0, Lh7/l;->i:F
return-void
.end method
.method public d()F
.registers 3
invoke-virtual {p0}, Lh7/l;->g()F
move-result v0
const/high16 v1, 0x43b40000 # 360.0f
div-float/2addr v0, v1
return v0
.end method
.method public g()F
.registers 2
iget v0, p0, Lh7/l;->i:F
return v0
.end method
.method public onDestroy()V
.registers 2
invoke-super {p0}, Lg7/a;->onDestroy()V
const/4 v0, -0x1
iput v0, p0, Lh7/l;->j:I
return-void
.end method