Hi Jim,
can't help you with the hashing but my solution for this is to use a
hashing filesystem like btrfs or zfs. With that i can be sure that the
resulting DCP has no "Bitrot" before the final DCP creation.
Carl Hetherington via DCPomatic writes:
On Tue, 16 Oct 2018, Jim Dummett via DCPomatic
wrote:
Hi Carl.
[snip]
I've checked that all the DCPs on that drive
pass a hash-check, but...
are the hashes calculated:
1. As the MXF files are created *before* they are written to disc?
or
2. Files written to disc first, and then read back from disc afterwards
to calculate hashes?
Number 2. Sadly you can't do it on the fly (as far as I
can see) as when
the MXF is finished you have to write some stuff back to the header at the
start of the file.
I'm thinking that if any of the data got
corrupted between DCP-o-matic
writing it to disc and then reading it back again to calculate the
hashes, the hashes would reflect the corrupted data. And so the fact
that my hash-check passes wouldn't guarantee the DCP is as it should be.
Or is there some other integrity checking process which would make this
impossible?
You're right here, I think.
DCP-o-matic does save individual frame hashes as it writes the DCP, but
these are only used for resumption of encodes (to work out where the
previously encoded MXF stopped being "right").
It could re-check those hashes when it is making the new hash for the
CPL/PKL files. In fact it may not be much of a performance hit as that
operation is probably limited by disk IO.
https://dcpomatic.com/mantis/view.php?id=1380
Best,
Carl
_______________________________________________
DCPomatic mailing list
DCPomatic(a)carlh.net
http://main.carlh.net/cgi-bin/mailman/listinfo/dcpomatic
--
Markus Kalb
Filmkreis an der TU Darmstadt
_______________________________________________
DCPomatic mailing list
DCPomatic(a)carlh.net