Skip to content
This repository was archived by the owner on Jan 12, 2019. It is now read-only.

Conversation

@m-schmoock
Copy link
Contributor

@m-schmoock m-schmoock commented May 11, 2016

It's helpful to track the scan progress state (focus, edge, vseg, hseg, stability...).
It enables additional functionality like visible user feedback guidance
or autofocus trigger once hseg is reached which I have also put
in the pull requests (dmz and android).

This increases user experience because:

  • The user does not have to trigger autofocus manually by tapping on the display that may shake the device and decrease detection rate / user experience.
  • The user gets visible feedback on 'how good' the card can be currently scanned by a progress bar and guide colors. This helps the user intuitively to hold the card in a way a successful scan is more likely/sooner to happen.

@m-schmoock
Copy link
Contributor Author

m-schmoock commented May 11, 2016

I just realized that instead of introducing a new void scanner_frame_result(ScannerState *state, ScannerResult *result, FrameScanResult *frameResult) function we could also use the return value of void scanner_result() to be int SCAN_PROGRESS and put into the FrameScanResult from by the caller. This way we wouldn't have a temporary legacy function and no additional argument or null checks. The drawback would be to have implicit logic by the caller.

You can decide whats better...

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant