View Bug Details

IDProjectCategoryView StatusLast Update
0001915DCP-o-maticPackagingpublic2021-03-18 22:35
Reportermhm Assigned Tocarl  
PriorityimmediateSeverityminorReproducibilityhave not tried
Status resolvedResolutionfixed 
Product Version2.16.0 
Summary0001915: CLI version of verifier


It would be really useful with a command line version of the verify functionality currently present in the player. Would that be possible to implement?


TagsNo tags attached.
Estimated weeks required
Estimated work requiredUndecided



2021-03-12 18:55

manager   ~0004152

Honestly, I did not test it myself so far, but, if a CLI verify is needed, maybe use Clairmeta - as it verifies a lot deeper?


2021-03-13 15:36

reporter   ~0004158


Looking at the source it is evident DCP-o-matic have some unique verification checks among the free inspection tools (dcp_inspect, Clairmeta and DOM). Specifically the DOM verifier is a more or less complete implementation of the requirements of RDD52.

The other two tools have none or few checks in the j2k code stream for example. The DOM verifier does all code stream checks as specified in RDD52.

I really encourage further development of the verifier functionality in DOM. It is very useful!

It is also very beneficial to have different open tools implementing DCP verification in slightly different ways, it helps make all of them better in the long run.



2021-03-14 00:21

administrator   ~0004159

Last edited: 2021-03-14 21:56

@carl we can package dcpverify from libdcp (see branch) but the tricky part is how it finds its tags directory; all the logic to find that is in dcpomatic; linux uses LINUX_SHARE_PREFIX (which is broken in packages, perhaps? prefix vs destdir); windows/mac use relative paths from the main executable. This stuff could be put into libdcp; the directory_containing_executable method is trivial on boost > 1.61.0.

dcpomatic wscript uses --install-prefix, which is why it works, but which should probably be --destdir


2021-03-14 19:53

manager   ~0004161

I wasn't aware RDD52 is already in the player verification. I know Carl was working on adding more functionality.


2021-03-14 22:04

administrator   ~0004162

Last edited: 2021-03-14 22:52

Quite a bit of it is there now, 0001798 has some (vague!) details. I'm hoping to get it more or less complete before 2.16.0.


2021-03-14 23:15

manager   ~0004163

Ah, okay, I saw this, but thought it was in DCP-o-matic main in order for created DCPs to follow RDD52 constraints and issue warnings, etc.


2021-03-14 23:47

administrator   ~0004164

Indeed, that was the initial idea but then it seemed to make sense to add it to the verifier; this has taken quite a while though!


2021-03-18 22:34

administrator   ~0004173

Last edited: 2021-03-18 22:35

A new tool dcpomatic2_verify is packaged on Windows, Mac and (hopefully!) Linux in 19210abafb6e5963760951f8b115ac9ee69cfcf3 which will be in 2.15.136

Bug History

Date Modified Username Field Change
2021-03-08 00:53 mhm New Bug
2021-03-08 18:53 carl Priority normal => immediate
2021-03-08 18:53 carl Status new => confirmed
2021-03-08 18:53 carl Category Features => Packaging
2021-03-08 18:53 carl Product Version => 2.16.0
2021-03-08 18:53 carl Estimated work required => Undecided
2021-03-12 18:55 Carsten Note Added: 0004152
2021-03-13 15:36 mhm Note Added: 0004158
2021-03-14 00:18 carl Branch => 1915-package-dcpverify
2021-03-14 00:21 carl Note Added: 0004159
2021-03-14 00:22 carl Note Edited: 0004159
2021-03-14 19:53 Carsten Note Added: 0004161
2021-03-14 21:56 carl Note Edited: 0004159
2021-03-14 21:56 carl Note Edited: 0004159
2021-03-14 22:04 carl Note Added: 0004162
2021-03-14 22:52 carl Note Edited: 0004162
2021-03-14 23:15 Carsten Note Added: 0004163
2021-03-14 23:47 carl Note Added: 0004164
2021-03-18 22:34 carl Assigned To => carl
2021-03-18 22:34 carl Status confirmed => resolved
2021-03-18 22:34 carl Resolution open => fixed
2021-03-18 22:34 carl Note Added: 0004173
2021-03-18 22:35 carl Note Edited: 0004173