From a3f6bb8fefe233e02ec33a275e9af24428826967 Mon Sep 17 00:00:00 2001 From: Stephan Petzl Date: Mon, 26 Sep 2022 12:15:09 +0200 Subject: [PATCH] Fix: When user time travels while streaming, video stops --- .../java/io/devicefarmer/minicap/provider/BaseProvider.kt | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/experimental/app/src/main/java/io/devicefarmer/minicap/provider/BaseProvider.kt b/experimental/app/src/main/java/io/devicefarmer/minicap/provider/BaseProvider.kt index 8612c218..d9ecc286 100644 --- a/experimental/app/src/main/java/io/devicefarmer/minicap/provider/BaseProvider.kt +++ b/experimental/app/src/main/java/io/devicefarmer/minicap/provider/BaseProvider.kt @@ -84,6 +84,10 @@ abstract class BaseProvider(private val displayId: Int, private val targetSize: override fun onImageAvailable(reader: ImageReader) { val image = reader.acquireLatestImage() val currentTime = System.currentTimeMillis() + if(currentTime < previousTimeStamp) { + // can happen if user set's device time to some point in the past, while streaming + previousTimeStamp = currentTime + } if (image != null) { if (currentTime - previousTimeStamp > framePeriodMs) { previousTimeStamp = currentTime