From 1749726bc9d83d767decbc10a9301f9ca2a02145 Mon Sep 17 00:00:00 2001 From: tofunmi Date: Fri, 10 May 2024 02:38:58 -0700 Subject: [PATCH] Texture input tests: use separate textures to queue to transformer Use different textures in calls to queueInputTexture(). Allows the texture to be deleted one it is used in transformer and effect. PiperOrigin-RevId: 632430866 --- .../transformer/TransformerEndToEndTest.java | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/libraries/transformer/src/androidTest/java/androidx/media3/transformer/TransformerEndToEndTest.java b/libraries/transformer/src/androidTest/java/androidx/media3/transformer/TransformerEndToEndTest.java index 3f9c509b09..2b5c4a07b8 100644 --- a/libraries/transformer/src/androidTest/java/androidx/media3/transformer/TransformerEndToEndTest.java +++ b/libraries/transformer/src/androidTest/java/androidx/media3/transformer/TransformerEndToEndTest.java @@ -254,7 +254,8 @@ public class TransformerEndToEndTest { .setDurationUs(C.MICROS_PER_SECOND) .setEffects(new Effects(/* audioProcessors= */ ImmutableList.of(), videoEffects)) .build(); - int texId = generateTextureFromBitmap(bitmap); + int texId1 = generateTextureFromBitmap(bitmap); + int texId2 = generateTextureFromBitmap(bitmap); HandlerThread textureQueuingThread = new HandlerThread("textureQueuingThread"); textureQueuingThread.start(); Looper looper = checkNotNull(textureQueuingThread.getLooper()); @@ -263,9 +264,9 @@ public class TransformerEndToEndTest { @Override public void handleMessage(Message msg) { if (textureAssetLoader != null - && textureAssetLoader.queueInputTexture(texId, /* presentationTimeUs= */ 0)) { + && textureAssetLoader.queueInputTexture(texId1, /* presentationTimeUs= */ 0)) { textureAssetLoader.queueInputTexture( - texId, /* presentationTimeUs= */ C.MICROS_PER_SECOND / 2); + texId2, /* presentationTimeUs= */ C.MICROS_PER_SECOND / 2); textureAssetLoader.signalEndOfVideoInput(); return; } @@ -305,7 +306,8 @@ public class TransformerEndToEndTest { new EditedMediaItem.Builder(MediaItem.fromUri(Uri.EMPTY)) .setDurationUs(C.MICROS_PER_SECOND) .build(); - int texId = generateTextureFromBitmap(bitmap); + int texId1 = generateTextureFromBitmap(bitmap); + int texId2 = generateTextureFromBitmap(bitmap); HandlerThread textureQueuingThread = new HandlerThread("textureQueuingThread"); textureQueuingThread.start(); Looper looper = checkNotNull(textureQueuingThread.getLooper()); @@ -314,9 +316,9 @@ public class TransformerEndToEndTest { @Override public void handleMessage(Message msg) { if (textureAssetLoader != null - && textureAssetLoader.queueInputTexture(texId, /* presentationTimeUs= */ 0)) { + && textureAssetLoader.queueInputTexture(texId1, /* presentationTimeUs= */ 0)) { textureAssetLoader.queueInputTexture( - texId, /* presentationTimeUs= */ C.MICROS_PER_SECOND / 2); + texId2, /* presentationTimeUs= */ C.MICROS_PER_SECOND / 2); textureAssetLoader.signalEndOfVideoInput(); return; }