Comments (5)
The drag / scroll latency test already works on Android. It uses the laser so that we can measure the scroll input latency separately, without the graphics output latency added. Look for the up/down arrows icon in the app and then press start in there. The laser can be any laser pointer.
from walt.
Yes, but that is for continuous dragging, I was thinking of the scroll start latency, i.e. the time from finger touchdown until actual start of the scrolling. This can be measured with e.g. a high speed camera, detecting first touch until scrolling begins, but you should be able to do that with the Walt as well, i.e the time from accelerometer down event until the screen changes.
Even if the drag latency is low, there might be delays in the touch driver detecting scroll movement, so there might be a long delay until scrolling starts, but after scroll detection the dragging is fast enough.
This is also a very important kpi for the user, to get a quick start of the scrolling. Unwanted delays are easily noticeable and has a negative impact on the look and feel of the UI.
from walt.
Ah, got it now. I think, for scroll start latency we can use almost the same procedure as for tap, but instead of timing the arrrival of the ACTION_DOWN event, we could time the arrival of the first ACTION_MOVE event. Should also be doable without using the photodiode. Would probably require fairly minor tweaking in the Android app Java code. Not sure if there what additional latency can be caused higher level event filtering, say some buffering of ACTION_MOVE events in software before it decides that the user's intention was actually to scroll - most likely this behaviour is tuned per device model.
The procedure you describe with the photodiode would require some more work, but also doable.
I won't have the time to add it in the near future, but pull requests are always welcome :)
from walt.
Talked with some people here about this, we did measure the scroll start latency at some point but most of it was added deliberately by software to distinguish between intended scroll and unintended movement during tap.
from walt.
Ok. I thought most of the time was spent in the touch driver, so this would give us a measurement on the system and driver (in a normal app, afaik, no scroll detection is done, that is handled by the os/ui). I could then compare changes to the touch driver, and could detect degrades (this I have been able to do with the tap latency). It could also be that one device have different screen vendors and different touch drivers and this would be one way to compare these.
from walt.
Related Issues (20)
- Latency measurements for other devices?
- Create a form where developers can request a WALT device HOT 2
- WALT firmware for Adafruit ADXL335 board
- Tap Latency test should show average latency HOT 1
- Add AAudio support
- Hello ,I am a Chinese, I cant buy Something in "https://oshpark.com", where can I get the machine? HOT 1
- building with gradle-experimental, and it should be using CMake HOT 1
- WALT app is not displaying properly on an Android TV device
- Cannot connect my phone. to the WALT
- UsbSerialDevice read callback method is not working
- tap latency need accelerometer HOT 6
- About fastpath mode in screen latency test HOT 4
- Security Policy violation Binary Artifacts HOT 6
- Allow for configurable screen transition thresholds
- Problem with bridge mode with remote desktop HOT 5
- Jack detection on some devices HOT 1
- Allow resizing the window on ChromeOS
- Allow scrolling log in tap/drag latency tests
- Show help tooltips when help icon is pressed for each test
- Exception when brightness curve, then blink test
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from walt.