Netflix / photon

Photon is a Java implementation of the Interoperable Master Format (IMF) standard. IMF is a SMPTE standard whose core constraints are defined in the specification st2067-2:2013
Apache License 2.0
235 stars 77 forks source link

Virtual Track Conformance VideoLineMap #173

Closed pfirth3 closed 7 years ago

pfirth3 commented 7 years ago

When Photon validates an IMF package with a video track that defines VideoLineMap metadata, it seems like Photon inverts the order. Here is the output using the latest build:

24 Jan 2017 11:46:49,201 [INFO ] [IMPAnalyzer]: ========================================================================== 24 Jan 2017 11:46:49,201 [INFO ] [IMPAnalyzer]: Virtual Track Conformance 24 Jan 2017 11:46:49,201 [INFO ] [IMPAnalyzer]: ========================================================================== 24 Jan 2017 11:46:49,204 [INFO ] [IMPAnalyzer]: CPL_7f489cd9-a0ac-4916-ba1b-2c71d84e980c.xml Virtual Track Conformance has 1 errors and 0 warnings 24 Jan 2017 11:46:49,204 [ERROR] [IMPAnalyzer]: ERROR-EssenceDescriptor with Id 13ecd066-6ee8-43c6-b77c-e7645eec76e1 in the CPL's EssenceDescriptorList doesn't match any EssenceDescriptors within the IMFTrackFile resource that references it,

EssenceDescriptor in CPL EssenceDescriptorList with mismatching fields is as follows

<CDCIDescriptor xmlns="http://www.smpte-ra.org/reg/395/2014/13/1/aaf">
</CDCIDescriptor>
,

EssenceDescriptor found in the TrackFile resource with mismatching fields is as follows
<CDCIDescriptor xmlns="http://www.smpte-ra.org/reg/395/2014/13/1/aaf">
  <VideoLineMap xmlns="http://www.smpte-ra.org/reg/335/2012">
    <Int32>0</Int32 xmlns="http://www.smpte-ra.org/reg/2003/2012">
    <Int32>42</Int32 xmlns="http://www.smpte-ra.org/reg/2003/2012">
  </VideoLineMap>
</CDCIDescriptor>

The output of the same video file using RegXML dump produces the following snippet:

<r1:PictureCompression>urn:smpte:ul:060e2b34.0401010d.04010202.03010114<!--JPEG2000BroadcastContributionSingleTileProfileLevel4--></r1:PictureCompression>
              <r1:CodingEquations>urn:smpte:ul:060e2b34.04010101.04010101.02020000<!--CodingEquations_ITU709--></r1:CodingEquations>
              <r1:ColorPrimaries>urn:smpte:ul:060e2b34.04010106.04010101.03030000<!--ColorPrimaries_ITU709--></r1:ColorPrimaries>
              <r1:VideoLineMap>
                <r2:Int32>42</r2:Int32>
                <r2:Int32>0</r2:Int32>
              </r1:VideoLineMap>
              <r1:ComponentDepth>10</r1:ComponentDepth>
              <r1:HorizontalSubsampling>2</r1:HorizontalSubsampling>
              <r1:VerticalSubsampling>1</r1:VerticalSubsampling>
              <r1:BlackRefLevel>64</r1:BlackRefLevel>
              <r1:WhiteRefLevel>940</r1:WhiteRefLevel>
svenkatrav commented 7 years ago

Based on the error it looks like video line map entries are missing in CPL. Could you please verify this?

pfirth3 commented 7 years ago

Yes, it is missing the entry. I think the order difference confused me a bit.