Archive-File-Format/Compression Support

It would be nice if photostructure could handle ZIP files similar to folders, maybe as read-only. This could also include TAR/RAR/7z files.

Additionally, the CBZ format is used for digital comic books (or manga) and is a collection of png/jpeg images in the zip format. Similar formats for CBT/CBR/CB7 for TAR/RAR/7z. I could see these additions being useful.

Agreed, especially for Google Takeout archives.

I actually tried the two most popular archive streaming solutions available to Node, and they were both surprisingly slow.

I found ratarmount a short while ago, and it’s the bee’s knees. Here’s an example that mounts 78 .tgz files into a single FUSE bind mount that PhotoStructure can then import from:

https://github.com/mxmlnkn/ratarmount/issues/45#issuecomment-748500218

Note that this support was just added by the author, so you need to follow the installation instructions in that thread.

Until PhotoStructure implements something similar to what ratarmount is doing, I think this is the best solution.

Would you want to use PhotoStructure to view manga? I suspect the files may not have sufficient metadata for them to be ordered correctly (unless it’s specified within the cbz).

It might be worth trying Yarn v2’s ZIP library (@yarnpkg/libzip)? It’s a wasm-compiled version of libzip. Not sure how well it’d work for this use case, but it’s what Yarn uses for reading JS files from ZIPs.

1 Like

Would you want to use PhotoStructure to view manga? I suspect the files may not have sufficient metadata for them to be ordered correctly (unless it’s specified within the cbz).

Not sure if it’s in scope of this project, but yes I’d like to. Not sure what metadata the .CBZs might have, but the images are all ordered numerically.