Support bilinear filtering in Skia-RE
Test: Manual. Play video on Reddit.
Bug: 173417370
Change-Id: I857659d6e02fbf1cb4a198e24134fefc257bb638
diff --git a/libs/renderengine/skia/SkiaGLRenderEngine.cpp b/libs/renderengine/skia/SkiaGLRenderEngine.cpp
index 07be0b6..0c89cd4 100644
--- a/libs/renderengine/skia/SkiaGLRenderEngine.cpp
+++ b/libs/renderengine/skia/SkiaGLRenderEngine.cpp
@@ -652,7 +652,16 @@
matrix.postConcat(texMatrix);
matrix.postScale(rotatedBufferWidth, rotatedBufferHeight);
- sk_sp<SkShader> shader = image->makeShader(matrix);
+ sk_sp<SkShader> shader;
+
+ if (layer->source.buffer.useTextureFiltering) {
+ shader = image->makeShader(SkTileMode::kClamp, SkTileMode::kClamp,
+ SkSamplingOptions(
+ {SkFilterMode::kLinear, SkMipmapMode::kNone}),
+ &matrix);
+ } else {
+ shader = image->makeShader(matrix);
+ }
if (mUseColorManagement &&
needsToneMapping(layer->sourceDataspace, display.outputDataspace)) {