Hacker News new | ask | show | jobs
by cptaffe 2723 days ago
What’s the transfer speed, are there practical file size limits? Do you have to wait for it to loop or can the reader pick up in the middle of the stream?
2 comments

Fountain codes are made so the receiver can pick up anywhere in a stream, and pick up the data with 0.1% to a few percent overhead (depending on luck and loss rate). This particular implementation loops the same set of encoded packets as QR codes, but with a faster processor you’d want to generate a pseudo infinite stream of encoded packets. If your data size was 1MB with 10kb packet size, readers can decode it with any 100(+ a couple percent) packets.
That's a good question! But for something under 100Kb it should be pretty quick. Curious to know how long it takes for a whole MB.

Update: Actually, I was too optimistic : https://divan.github.io/posts/animatedqr/

There was a follow-up post[1] where the author switched to fountain codes (a type of erasure coding that is perfect for this use-case) and apparently the speed is now closer to 25kbps. Pretty neat.

[1]: https://divan.github.io/posts/fountaincodes/