Earlier quoted context omitted.
There are now actually open source decompressors[0] for Oodle formats, and yes, many use rANS. Especially LZNA's clever use of SSE2 to decode and update 16 symbol models is interesting. FSE (which is tANS) is a different beast, though, and more suitable for rarely updated models. [0] http://encode.ru/threads/2577-Open-source-Kraken-Mermaid-Sel...
...and got DMCAed [1]. At the very least the discussion itself is interesting for the inside infos, though. [1] https://github.com/github/dmca/blob/master/2016/2016-08-30-O...
Smaller and faster data compression with Zstandard
161–166 of 166 posts
Re: Smaller and faster data compression with Zstandard
#162Re: Smaller and faster data compression with Zstandard
#163Ok
Re: Smaller and faster data compression with Zstandard
#164Re: Smaller and faster data compression with Zstandard
#165Yann will be giving a talk on Zstandard at today's @Scale 2016 conference, and the video will be posted. He can answer the most technical questions about Zstandard, but I may be able to answer some as well; we both work on compression at Facebook.
I am really looking forward to this. I usually like to read more than vidoes but for complicated topic with a good presenter it can actually be a comprehensive starting point. Would the video also be posted today or we will have to wait? One thing I haven't figured out from either today's post or Yann's blog is whether Zstandard is switching between huff0 and FSE depending on compression level or is it somehow using…
Re: Smaller and faster data compression with Zstandard
#166Earlier quoted context omitted.
With regular arithmetic coding and Huffman coding you don't need to send over a dictionary. Instead, you can have an adaptive model that learns to compress the data as it goes (e.g. keeps running track of symbol frequencies), and it will still be reversible. I thought this wasn't possible with ANS. Or has this changed?
It depends if you have static or adaptive coder. Static is much cheaper, uses the same probabilities for the entire data block (e.g. 30 kB), probabilities are stored in the header - practically all Huffman and tANS compressors (however, there are considered exceptions: https://en.wikipedia.org/wiki/Adaptive_Huffman_coding ). Adaptive can start with e.g. uniform probability (no need to store in header) and learns on t…
Thanks for the resources.