Open Jsewill opened 1 year ago
Well, EAN-13 is a superset of UPC-A, and so there is some room for misinterpretation (see here for details on how both formats are related).
The format restriction is not ignored in these misreadings, at least not in Binary Eye. I suspect that the barcode reading library (ZXing C++) may be reporting an EAN-13 even though it is set up for UPC-A only. This may happen because the decoding of EAN-13 and UPC-A is done with the same code (see ODMultiUPCEANReader.cpp if you are interested).
Unfortunately, without your actual example, I can't say exactly why this happens 😬
That is probably what is going on. So, there's no way around it without a change to the ZXing C++ codebase? I really like what you've done with this application. It'd be nice to confidently scan continuously, but I might be able to filter out the ones reported as EAN-13 after the fact. I really wanted to treat my phone as a proper scanner, and just scan away. I suppose I should buy an actual scanner for that.
When attempting to scan barcodes continuously, with a restriction set and/or formats selected, these settings seem to be ignored. I.e., After restricting to UPC A, the app still manages to incorrectly scan (the same barcode as) an EAN 13. I assume the incorrect scan is due to rolling shutter and focus issues, but that doesn't account for these settings being ignored.