We've identified the issue to be device related. Problem is that Vuforia requests a discrete camera capture resolution from the Camera1 API, but receives 1920x1080 sized frames. This confuses our CV pipeline, making it unable to detect and track targets. We've tried multiple device-specific patches to specify different capture resolutions, but none of them will work on Camera1 due to the aforementioned bug.
We've identified a workaround that utilizes the Camera 2 APIs. The target will now detect and track, but the rendered frame rate is poor at around 10fps. However, due to the popularity of this thread and the Galaxy S5 Mini (SM-G800F) device, I have uploaded a device specific patch that will enable detection and tracking despite the degraded user experience.
The patch will be applied by performing the following:
- Make sure that the device's Wifi is enabled and can connect to the Internet
- Uninstall your app with Vuforia integrated
- Reinstall the same app
- Start the same app and let it run in idle state for 30 seconds
- Stop the same app
- Restart the same app
Note that this update will only persist for as long as that version of the app is installed on that device. Reinstallation of the app on the device *may* over-write the patch. If so, you'll then need to redo the provided steps above. Upon startup the SDK will attempt to download the patch and apply it before Vuforia camera start. Whether or not this operation completes before first camera start depends entirely on upon app experience, network connectivity and network latency.
This patch will *only* be applied for the following devices:
- App running Vuforia 6.2 (and later) *AND*
- Device (SM-G800F) running Android 21 (and later)
Note that this patch is dependent upon the device having a working Camera 2 implementation. I tested this patch on a SM-G800F running Android 23, so I'm unsure if it will also work on the same device running Android 21/22.
We'll continue with our RCA and hope to be able to patch the SDK soon to deal with this type of misbehaving device.