PhotoStructure on Raspberry Pi
The Raspberry Pi is a power-efficient “single-board” computer. The current model 4 is faster than prior versions, but performance lags behind modern laptop and desktop CPUs by 4-10x.
PhotoStructure will compile and run on a RPi 4 with 2GB of RAM or greater.
The Pi 4 is fast enough to serve the web-based UI, and can simultaneously import and serve your library, but expect the import to be fairly slow.
If you have a large library (say, 50,000+ images), and a computer with a faster CPU, consider installing PhotoStructure there, doing your initial library import on that faster box, and then moving your library to your Pi.
Instructions for moving libraries between computer are here.
PhotoStructure tries to be nice to your Pi 🥧 🔗
PhotoStructure v2.1+ (which should be generally available late July 2022) detects that you’re running on an Raspberry Pi and automatically disables a number of PhotoStructure’s more computationally-expense features to help your imports go (10x+!) faster.
PhotoStructure also extends a number of timeout settings to accommodate the (much) slower processing times expected on your Pi.
These disabled features are a compromise:
- invalid JPEG, Raw, and video files may be imported into your library, as they won’t be validated for bitrot.
- browsing will be slower, requiring more network bandwidth due to larger, less-optimally-encoded preview images
- preview images will look a bit blurry, as they haven’t been sharpened after reduction
- non-mp4-encoded videos will not be viewable, as they haven’t been transcoded
- expect image deduplication to be poor: JPG+RAW pairs will not be aggregated reliably
- images missing metadata won’t be repaired by inference from sibling files
If you’re patient, and don’t mind slow imports, set PS_QUICK_SYNC_MODE=false
, and
these features will stay enabled.
Here’s a list of the features disabled by PS_QUICK_SYNC_MODE
:
validateJpegImages
validateRawImages
validateVideos
transcodeVideos
jpegMinimized
jpegProgressive
sharpen
useImageHashes
enableSiblingInference
Read more about advanced settings here.
Install! đź”—
Use the Ubuntu for Node.js instructions.
PhotoStructure for Docker will be available when version 2.1 is released.