mirror of
https://github.com/androidx/media.git
synced 2025-05-05 22:50:57 +08:00
Bind contrastFactor in constructor instead of drawFrame method.
PiperOrigin-RevId: 469438747
This commit is contained in:
parent
f01896af15
commit
9a1e7fbdf4
@ -31,13 +31,12 @@ import java.io.IOException;
|
|||||||
private static final String FRAGMENT_SHADER_PATH = "shaders/fragment_shader_contrast_es2.glsl";
|
private static final String FRAGMENT_SHADER_PATH = "shaders/fragment_shader_contrast_es2.glsl";
|
||||||
|
|
||||||
private final GlProgram glProgram;
|
private final GlProgram glProgram;
|
||||||
private final float contrastFactor;
|
|
||||||
|
|
||||||
public ContrastProcessor(Context context, Contrast contrastEffect, boolean useHdr)
|
public ContrastProcessor(Context context, Contrast contrastEffect, boolean useHdr)
|
||||||
throws FrameProcessingException {
|
throws FrameProcessingException {
|
||||||
super(useHdr);
|
super(useHdr);
|
||||||
// Use 1.0001f to avoid division by zero issues.
|
// Use 1.0001f to avoid division by zero issues.
|
||||||
contrastFactor = (1 + contrastEffect.contrast) / (1.0001f - contrastEffect.contrast);
|
float contrastFactor = (1 + contrastEffect.contrast) / (1.0001f - contrastEffect.contrast);
|
||||||
|
|
||||||
try {
|
try {
|
||||||
glProgram = new GlProgram(context, VERTEX_SHADER_PATH, FRAGMENT_SHADER_PATH);
|
glProgram = new GlProgram(context, VERTEX_SHADER_PATH, FRAGMENT_SHADER_PATH);
|
||||||
@ -55,6 +54,7 @@ import java.io.IOException;
|
|||||||
Matrix.setIdentityM(identityMatrix, /* smOffset= */ 0);
|
Matrix.setIdentityM(identityMatrix, /* smOffset= */ 0);
|
||||||
glProgram.setFloatsUniform("uTransformationMatrix", identityMatrix);
|
glProgram.setFloatsUniform("uTransformationMatrix", identityMatrix);
|
||||||
glProgram.setFloatsUniform("uTexTransformationMatrix", identityMatrix);
|
glProgram.setFloatsUniform("uTexTransformationMatrix", identityMatrix);
|
||||||
|
glProgram.setFloatUniform("uContrastFactor", contrastFactor);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -67,7 +67,6 @@ import java.io.IOException;
|
|||||||
try {
|
try {
|
||||||
glProgram.use();
|
glProgram.use();
|
||||||
glProgram.setSamplerTexIdUniform("uTexSampler", inputTexId, /* texUnitIndex= */ 0);
|
glProgram.setSamplerTexIdUniform("uTexSampler", inputTexId, /* texUnitIndex= */ 0);
|
||||||
glProgram.setFloatUniform("uContrastFactor", contrastFactor);
|
|
||||||
glProgram.bindAttributesAndUniforms();
|
glProgram.bindAttributesAndUniforms();
|
||||||
|
|
||||||
// The four-vertex triangle strip forms a quad.
|
// The four-vertex triangle strip forms a quad.
|
||||||
|
Loading…
x
Reference in New Issue
Block a user