Ymagis / ClairMeta

Clairmeta is a python package for Digital Cinema Package (DCP) probing and checking.
BSD 3-Clause "New" or "Revised" License
78 stars 21 forks source link

Missing <Creator> in CPL, passes but causes issue. #206

Closed jamiegau closed 2 years ago

jamiegau commented 2 years ago

Hello DCP geeks. I have a user pushing a SMPTE DCP though my (free) d-cine solution, and it has a CPL without a tag.

The SMPTE CPL xsd stats the following..

<xs:element name="Issuer" type="cpl:UserText" minOccurs="0"/>
<xs:element name="Creator" type="cpl:UserText" minOccurs="0"/>

And clairmeta 1.1.2 (current) passes the DCP. (As it should based on the above)

My system has ingested thousands of DCP, but the lack of Creator tag in this DCP is the first time I have seen this tripped it up.

I imagine this is the same reason the DCP is failing in some cinemas when attempted to play. (More detail is suppose to be coming, but at a guess)

I think this should be added as a warning, or possibly error on QC of DCP.

remia commented 2 years ago

Hi @jamiegau,

Just checking, it didn't triggered this check https://github.com/Ymagis/ClairMeta/blob/c0dab461b01b2329dc50f59d4885b802700caf75/clairmeta/dcp_check_cpl.py#L132 ? I think it's picking up empty tag but not completely missing ones. Might need to be improved to take that case into account...

jamiegau commented 2 years ago

Clairmeta gave no errors. And yes, the tag is completely absent of the CPL.xml file. So yes, would update check to flag that issue as well. And considering, would flag as FAIL, (Can fail to play in some DCI players)

Bar3nd commented 2 years ago

Hi,

So I was the one running into this issue with a DCP that would not ingest on a Christie CP4220 with an IMB-2 (due to not having the tag in the CPL xml.

Even though technically the DCP was in SMPTE spec, it would be useful to flag this with at least a warning.

Best,

Barend

remia commented 2 years ago

Thanks for the feedback, we will include that as part of #207 for the next release.