Open fxstein opened 2 years ago
This concept could even be applied to the archive
path of the library, by uncompressing archives, delta patching the individual media files and writing new archives that contain only the delta to the finally processed media P_*
files.
The storage requirements for
goprox
are very significant when all layers of the library are being kept for future re-prosessing.There are basically 3 copies of data:
archive
,imported
andprocessed
Both
archive
andimported
are optional lineage copies that allow a user to go back to the originals coming off a camera and re-process the entire workflow. With early versions ofgoprox
this is desirable as logic changes and even bugfixes can easily be applied to the original media.Since the delta between
imported
andprocessed
media is metadata only - we are not resampling or recompressing the media files - delta patches could be leveraged to replace media file with significantly smaller delta files, while allowing to restore the original file later on.Initial testing has resulted in a 99% reduction in storage required to hold
imported
delta patch files, compared to the original media files.Example:
produces a 1.4kB delta file compared to the original 4.7MB image. This would allow users to keep the entire
imported
media path while consuming 99% less storage than a full copy of the data.goprox
needs to be able to generate the delta patch files, replace the original files inimported
and restore them on demand as needed for future processing.