Commit graph

8 commits

Author SHA1 Message Date
Daniel Beer
59182ef1cd Deinterleave blocks correct.
Use explicit small-block count. Derived value using greedy calculation
wasn't correct in many cases.
2016-12-28 15:37:18 +13:00
Daniel Beer
88774dc6cf decode.c: fix count bit-width on alphanumeric payloads. 2016-11-17 11:37:55 +13:00
Daniel Beer
87e79e769b Fix Reed-Solomon decoder.
Calculate the correct number of syndromes, and fix calculation of the
error locator polynomial. Many QR codes with logos in the middle should
now work.
2016-09-23 14:34:07 +12:00
Daniel Beer
ab341691c9 Add support for ECI decoding.
ECI values are decoded and stored in the eci field of struct quirc_data.
Constants of the form QUIRC_ECI_* are defined in quirc.h.
2016-09-23 09:50:59 +12:00
Daniel Beer
42c79481e7 decode: support multiple data segments.
Previously, the payload was assumed to consist of one large data
segment. Now, multiple segments of different types may be concatenated
together. The data type reported is the highest data type encountered
while decoding.
2013-05-29 10:26:13 +12:00
Daniel Beer
daf6d7c90b decode: fix reversed tuples in numeric decoder. 2013-05-29 09:40:46 +12:00
Daniel Beer
0335fabf97 Fix decoding of numeric and alphanumeric data types.
If the number of characters in the stream isn't a multiple of the full
tuple size, the remaining characters are encoded in a special short
tuple.
2013-05-14 09:25:05 +12:00
Daniel Beer
a3142bc6b4 Initial commit: version 1.0. 2012-05-04 12:58:42 +12:00