From c79e5eca185e51747956b19cc4e1a4026d74ac62 Mon Sep 17 00:00:00 2001 From: Matan Lurey Date: Mon, 26 Feb 2024 16:46:57 -0800 Subject: [PATCH 1/2] Have scenario_app use the new SurfaceProducer API. --- .../ExternalTextureFlutterActivity.java | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/testing/scenario_app/android/app/src/main/java/dev/flutter/scenarios/ExternalTextureFlutterActivity.java b/testing/scenario_app/android/app/src/main/java/dev/flutter/scenarios/ExternalTextureFlutterActivity.java index f06f75fcd801b..2a4fbd6f3ef84 100644 --- a/testing/scenario_app/android/app/src/main/java/dev/flutter/scenarios/ExternalTextureFlutterActivity.java +++ b/testing/scenario_app/android/app/src/main/java/dev/flutter/scenarios/ExternalTextureFlutterActivity.java @@ -36,6 +36,8 @@ import androidx.annotation.Nullable; import androidx.annotation.RequiresApi; import androidx.core.util.Supplier; + +import io.flutter.view.TextureRegistry; import io.flutter.view.TextureRegistry.SurfaceTextureEntry; import java.io.IOException; import java.nio.ByteBuffer; @@ -54,7 +56,7 @@ public class ExternalTextureFlutterActivity extends TestActivity { private final CountDownLatch firstFrameLatch = new CountDownLatch(2); private long textureId = 0; - private SurfaceTextureEntry surfaceTextureEntry; + private TextureRegistry.SurfaceProducer surfaceProducer; @Override protected void onCreate(@Nullable Bundle savedInstanceState) { @@ -143,19 +145,18 @@ private MediaExtractor createMediaExtractor() { public void onPause() { surfaceViewRenderer.destroy(); flutterRenderer.destroy(); - surfaceTextureEntry.release(); + surfaceProducer.release(); super.onPause(); } @Override public void onFlutterUiDisplayed() { - surfaceTextureEntry = - Objects.requireNonNull(getFlutterEngine()).getRenderer().createSurfaceTexture(); - SurfaceTexture surfaceTexture = surfaceTextureEntry.surfaceTexture(); - surfaceTexture.setDefaultBufferSize(SURFACE_WIDTH, SURFACE_HEIGHT); - flutterRenderer.attach(new Surface(surfaceTexture), firstFrameLatch); + surfaceProducer = + Objects.requireNonNull(getFlutterEngine()).getRenderer().createSurfaceProducer(); + surfaceProducer.setSize(SURFACE_WIDTH, SURFACE_HEIGHT); + flutterRenderer.attach(surfaceProducer.getSurface(), firstFrameLatch); flutterRenderer.repaint(); - textureId = surfaceTextureEntry.id(); + textureId = surfaceProducer.id(); super.onFlutterUiDisplayed(); } From 906dcc28354ef988efe001e55ead5d88ba854b79 Mon Sep 17 00:00:00 2001 From: Matan Lurey Date: Mon, 26 Feb 2024 16:47:13 -0800 Subject: [PATCH 2/2] Fmt. --- .../dev/flutter/scenarios/ExternalTextureFlutterActivity.java | 3 --- 1 file changed, 3 deletions(-) diff --git a/testing/scenario_app/android/app/src/main/java/dev/flutter/scenarios/ExternalTextureFlutterActivity.java b/testing/scenario_app/android/app/src/main/java/dev/flutter/scenarios/ExternalTextureFlutterActivity.java index 2a4fbd6f3ef84..8479673a6ca60 100644 --- a/testing/scenario_app/android/app/src/main/java/dev/flutter/scenarios/ExternalTextureFlutterActivity.java +++ b/testing/scenario_app/android/app/src/main/java/dev/flutter/scenarios/ExternalTextureFlutterActivity.java @@ -11,7 +11,6 @@ import android.graphics.Paint; import android.graphics.Rect; import android.graphics.Shader.TileMode; -import android.graphics.SurfaceTexture; import android.hardware.HardwareBuffer; import android.media.Image; import android.media.ImageReader; @@ -36,9 +35,7 @@ import androidx.annotation.Nullable; import androidx.annotation.RequiresApi; import androidx.core.util.Supplier; - import io.flutter.view.TextureRegistry; -import io.flutter.view.TextureRegistry.SurfaceTextureEntry; import java.io.IOException; import java.nio.ByteBuffer; import java.util.Map;