Balrogg: Demonically compacting (up to 15%) lossless Vorbis/Opus recompressor
github.com
github.com
I like the code style, this is pretty nice C. It's refreshing to see human code.
Or is it? https://github.com/iczelia/balrogg/blob/7008bdc10ff25ad87105...
But I think it's just that this file is lifting parts of the logic from PAQ8 (the inlined num_states/next_state named in a comment sure look exactly like PAQ functions translated into C, which, kudos to PAQ for having extensive comments in their code by the way).
I'm a bit disappointed that PAQ isn't mentioned in the README, and only very obliquely in the code, if that's where those functions come from. PAQ is GPLv3, at least a mention could have been nice (assuming I'm not wrong about the source of that logic).
https://www.xiph.org/vorbis/doc/Vorbis_I_spec.html#x1-470003
If you have the complete file you can calculate the optimal ones. In a streaming scenario that does not work and you have use something you think is good.