[I already posted this question, but my post was deleted when I submitted it. :/ See attachment.]
I am trying to understand the lz4 encoding algorithm. The link to
http://lz4.info that is reference on the frame format description is dead. So I post my question here. Am I right in saying that the block format based encoder in lz4.c scans 64kB of input buffer, creates a dictionary (lz77 style) from it and encodes the contents of these 64kB using that dictionary. I didn't really get what happens after that? Is the dictionary reused or purged?
If I understand correctly, the frame format allows for arbitrary chunks of input data to be encoded. Here I wonder, if the size of the dictionary which lz4 uses remains fixed throughout the encoding of one such frame or if the dictionary is arbitrary?
My apologies if this question is motivated based on my poor understanding of lz4 and it's ancestry. If there are good learning resources out there, that I can study, feel free to point me to them.
Best,
P