4 ms·
Base45 is an inefficient way to store binary data, as are all of the BaseXYZ encodings that by all rights should already be relegated to the dustbin of history
by kstenerud 4y ago
Base45 is an inefficient way to store binary data, as are all of the BaseXYZ encodings that by all rights should already be relegated to the dustbin of history in the 21st century...
- lifthrasiir 4y agoUnlike many baseXX encodings, base45 has an advantage of actually being undone by the alphanumeric mode. Granted, it is still unfortunate that base45 has its uses (because many QR decoders do not properly handle 8-bit data) but inefficiency is not its deficiency.
- matheusmoreira 4y ago> because many QR decoders do not properly handle 8-bit data We should fix that! Which QR decoders still lack support for binary data decoding? I submitted patches to zbar to add a binary decoding mode, it's already available in new versions. ZXing and zxing-cpp also have support. Maybe it's the camera apps that lack support for this.
- kstenerud 4y agoOh yes sorry you're right. When using alphanumeric mode you only get a small amount of binary encoding bloat (3%) with base45. But even with binary data encoded to baseXX, you still need to decide what the byte stream means. I was mainly looking at how to efficiently encode a hierarchical document containing the most common data types (that anyone can decode and inspect) into a QR code.