用于嵌入式/实时系统的数据压缩库
一个用于嵌入式/实时系统的数据压缩/解压缩库。
有一个独立的命令行程序 heatshrink, 但编码器和解码器也可以作为独立的库使用。要这样做,请将 heatshrink_common.h,heatshrink_config.h 以及 heatshrink_encoder.c 或 heatshrink_decoder.c (及其相应的头文件)复制到您的项目中。对于同时使用两者的项目,将构建静态库,使用静态和动态分配。默认情况下使用动态分配,但在嵌入式环境中,您可能希望静态分配编码器/解码器。在 heatshrink_config.h 中将 HEATSHRINK_DYNAMIC_ALLOC 设置为 0。
使用 heatshrink_encoder 或 heatshrink_decoder 的 alloc 函数分配状态机,或者静态分配一个并调用其 reset 函数初始化它们。 (请参阅下面的配置选项。)
使用 poll 将状态机的输出移动到输出缓冲区。output_size 指针参数将被设置为指示输出了多少字节,函数的返回值将指示是否还有更多的输出可用。(状态机可能在收到足够的输入之前不会输出任何数据。) 重复步骤 2 和 3 以通过状态机流式传输数据。由于它进行数据压缩,输入和输出的大小可能会大幅度不同。循环次数为 n
暂无开放 Issues,或尚未同步最近议题。