SevenZipSharp icon indicating copy to clipboard operation
SevenZipSharp copied to clipboard

Possible to extract files in solid archive to streams via callback?

Open Mgamerz opened this issue 6 years ago • 0 comments

I work frequently with solid archive for distribution of mods for the Mass Effect series. Solid compression significantly reduces distribution sizes, so all mods are typically deployed using solid 7z, and the source files are uncompressed (game files support their own individual file compression, we do not distribute them this way to let 7z do more compression during transfer).

I am working to getting our per-file compression working, and it can take a stream to load a file in which is then fed to the compressor. I'm wondering if there's a way to fetch the output stream of a solid-archive extraction. I see this is possible, but not for solid archives. I understand how solid archives work (not the decompression of it though), so I'm wondering if this is possible. When I call extraction on the solid archive, I feed a list of indices to extract as sometimes I do not want the entire archive.

I can extract to disk and compress that instead, which is an alternative I could do. I would just like to reduce the disk I/O if possible by feeding the memory stream to my fileformat parsing which can then compress it as it extracts onto the disk.

Mgamerz avatar Sep 21 '19 05:09 Mgamerz