Written by Marco Querini
HCC2D Codes
HCC2D (High Capacity Colored Two-Dimensional) code is a color 2D code format that extends QR codes by encoding data in colored cells, increasing data density while preserving QR-style robustness and error correction.
- Encoding. Beyond the online generator, HCC2D Encoder is available on the App Store for Mac. The open-source WebAssembly web encoder is available on GitHub and as a ready-to-use GitHub Pages app. Open-source native and command-line encoders are also available on GitHub as a C command-line encoder, a pure Python encoder, and a pure JavaScript encoder for Node.js. The Python and JavaScript encoders can be used both from the command line and as importable libraries. Debian/Ubuntu users can install the packaged C encoder from the official HCC2D APT Repository, Python users can install hcc2d-encoder from PyPI, and Node.js users can install hcc2d-encoder from npm. The HCC2D API provides programmatic generation from any language or platform.
- Air-Gapped File Transfer. HCC2D Streamer is available on the App Store for Mac and on the Microsoft Store for Windows. An open-source single-file command-line C Streamer is also available on GitHub. The app transfers files from a Mac or PC to a smartphone (iOS or Android) via air-gapped optical streaming of HCC2D codes -- no network or cables required. Watch a 30-second demo of HCC2D Streamer for Windows. Advanced users can reach higher throughput with the command-line HCC2D Streamer — watch a demo at ~1 Mbit/s. The ability to tune these settings for higher throughput will be added to the Windows and Mac apps in upcoming versions. Watch a side-by-side speed comparison of the same file transfer via standard QR Code, HCC2D 4-color, and HCC2D 8-color.
- Decoding. HCC2D Decoder is available on Google Play, on Huawei AppGallery, and on the App Store for iPhone. From version 1.3.6, HCC2D Decoder also includes an offline Encoder and Streamer. You can generate codes directly on your phone and transfer files from one smartphone to another: the sending phone displays the sequence with the integrated Streamer, and the receiving phone reads it with Decoder. No computer, network, or cable is needed. How to transfer files between phones.
See it in action
HCC2D Streamer for Windows — 30-second demo
Command-line HCC2D Streamer — 1.5 MB in 12s (~1 Mbit/s)
QR (~0.34 Mbps) vs HCC2D 4-color (~0.73 Mbps) vs HCC2D 8-color (~1.05 Mbps) at 15 fps
Generate a Code
Preview
Download PNGMake it yours: HCC2D4 lets you choose the two intermediate colours. Have fun creating your own palette, then try decoding the result with HCC2D Decoder!
HCC2D16 is an experimental preview still in development.
Generated PNGs will appear here.