Get the State Delta Engine working.
You have two states, turn the difference of them into a serialised byte array however you want. Then go the other way when you receive the data, and make a new state from old. Compress as much as you can to save network bandwidth.
Investigate:
-bit packing.
-working around strict aliasing if needed.
-RLE (huffman), do I xor the values before packing.
-Tre…
You have two states, turn the difference of them into a serialised byte array however you want. Then go the other way when you receive the data, and make a new state from old. Compress as much as you can to save network bandwidth.
Investigate:
-bit packing.
-working around strict aliasing if needed.
-RLE (huffman), do I xor the values before packing.
-Treat 0 as a special value?
-Huffman, LZW compression, Move to front (MTF), Burrows–Wheeler transform.
Starting point for MTW-BWT encoding:
http://michael.dipperstein.com/bwt/