ryg_rans 不是库,别乱用
Ryg_rans Is Not a Library
我早在 2014 年就写了 ryg_rans,但至今仍不断收到想把它当库用的请求。必须澄清:它从来就不是库,而是一个仅约 20 行代码的算法玩具。它就像五金店展示不同紧固件的样板,目的是展示选项而非供你直接用于构建项目。真正的工程应该选定一两种方案并坚持使用。ryg_rans 在速度、健壮性和完整性上都表现糟糕,其内置的静态字节模型对 rANS 毫无意义,实际项目中应使用 tANS 或自适应模型。此外,切勿在同一个比特流中混合多种编码变体,这会增加复杂度且无实际收益。如果你打算实现 rANS,请遵循隐式交织、前向建模等最佳实践,而不是盲目照搬这个示例代码。
ryg_rans 不是库,从来都不是,它只是一个核心代码仅约 20 行的算法玩具。