public LZ4StreamProvider(LZ4EncoderSettings encoderSettings = null, LZ4DecoderSettings decoderSettings = null) { _encoderSettings = encoderSettings ?? new LZ4EncoderSettings { CompressionLevel = LZ4Level.L00_FAST, }; _decoderSettings = decoderSettings ?? new LZ4DecoderSettings(); }
public static byte[] Compress(byte[] data) { LZ4EncoderSettings settings = new LZ4EncoderSettings(); settings.ChainBlocks = false; // settings.BlockSize = K4os.Compression.LZ4.Internal.Mem.M1; using (MemoryStream mem = new MemoryStream()) { var encodeSettings = new LZ4EncoderSettings(); using (var source = LZ4Stream.Encode(mem, settings)) { source.Write(data, 0, data.Length); var newMem = new MemoryStream(); BinaryWriter writer = new BinaryWriter(newMem); writer.Write((uint)data.Length); writer.Write(mem.ToArray()); writer.Write((uint)973407368); return(newMem.ToArray()); } } }