保证压缩比的压缩算法?
Compression Algorithm for Guaranteed Compression Ratio?
任何人都可以向我提供有关 finding/creating 具有 保证压缩率 的数据压缩算法的指示或技巧吗?显然这不可能是无损算法。
我的问题和这里的类似,但是没有合适的答案:
Shrink string encoding algorithm
我想做的是通过无线网络(我自己的规格,不是 WiFi)流式传输实时音频,并严格限制带宽。假设我有 60 字节大小的数据包。我需要一种算法来将这些压缩到,比如说,每次 35 个字节 不会失败。 可靠地保证压缩到固定大小是关键。音频质量不是最重要的。
有什么建议或指点吗?我最终可能会从头开始创建自己的算法,所以即使您不知道任何库或标准算法,我也会感谢您提出任何绝妙的想法!
很高兴您提到了您的用例:现场音频。
有many audio CODECs (COder-DECoder) that work exactly this way (constant bit-rate). For example, take a look at Opus个。您可以 select 比特率从 6 kb/s 到 510 kb/s,帧大小从 2.5 毫秒到 60 毫秒。
我过去用它通过 RF 数据链路传输音频。您可能还需要实施去抖动缓冲区(参见更多内容 here)。另请注意,许多声卡的内部时钟不准确,源速率和目标速率之间可能存在 "drift"(例如,30 毫秒的缓冲区可能会以 29.9 毫秒或 30.1 毫秒的速度播放),您可能需要对此也进行补偿。
任何人都可以向我提供有关 finding/creating 具有 保证压缩率 的数据压缩算法的指示或技巧吗?显然这不可能是无损算法。
我的问题和这里的类似,但是没有合适的答案:
Shrink string encoding algorithm
我想做的是通过无线网络(我自己的规格,不是 WiFi)流式传输实时音频,并严格限制带宽。假设我有 60 字节大小的数据包。我需要一种算法来将这些压缩到,比如说,每次 35 个字节 不会失败。 可靠地保证压缩到固定大小是关键。音频质量不是最重要的。
有什么建议或指点吗?我最终可能会从头开始创建自己的算法,所以即使您不知道任何库或标准算法,我也会感谢您提出任何绝妙的想法!
很高兴您提到了您的用例:现场音频。
有many audio CODECs (COder-DECoder) that work exactly this way (constant bit-rate). For example, take a look at Opus个。您可以 select 比特率从 6 kb/s 到 510 kb/s,帧大小从 2.5 毫秒到 60 毫秒。
我过去用它通过 RF 数据链路传输音频。您可能还需要实施去抖动缓冲区(参见更多内容 here)。另请注意,许多声卡的内部时钟不准确,源速率和目标速率之间可能存在 "drift"(例如,30 毫秒的缓冲区可能会以 29.9 毫秒或 30.1 毫秒的速度播放),您可能需要对此也进行补偿。