View Revisions: Bug #1798

Summary 0001798: Comply with (or at least warn about deviations from) SMPTE Bv2.1 application profile
Revision 2021-01-18 09:41 by carl
Description

Things to think about / investigate

  • [6.1] Everything should be SMPTE (ST-429-2); default to SMPTE and warn about Interop
  • [7.1] Hint about or hide behind "advanced" setting: all 30fps, 50fps, 60fps; everything but 24/2D in 4K.
  • Should there be a single "conform to SMPTE Bv2.1" checkbox? Allow, warn, disallow?
  • Does asdcplib do the MIC [10.1]?
  • Looks like numgbits in openjpeg is always 2? [10.2.1]
  • Check out SPcod, SPcoc = 0b00000000
  • Check other JPEG stuff in [10.2.1]
  • Audio stuff in [10.3.2]
  • Timed text stuff in [10.4]

Need a review of the messages in libdcp:verify.cc, especially where they mention Bv2.1; perhaps BV21_ERROR do not need to mention Bv2.1 in the message (and perhaps we need a Bv2.1 warning...). Also some messages probably should give details (e.g. what sample rate is being specified which is not 48kHz?). check_verify_result needs to be used to check for the no-error case. Tidy up the use of verify_ and check_ as method prefixes. Lots of dcp:: in verify.cc not necessary.

Have missed out part of [8.3.1] - MainCaption and ClosedSubtitle shall not be used.
Missed out [8.6.1] as it doesn't really say anything.

Revision 2021-01-18 09:41 by carl
Description

Things to think about / investigate

  • [6.1] Everything should be SMPTE (ST-429-2); default to SMPTE and warn about Interop
  • [7.1] Hint about or hide behind "advanced" setting: all 30fps, 50fps, 60fps; everything but 24/2D in 4K.
  • Should there be a single "conform to SMPTE Bv2.1" checkbox? Allow, warn, disallow?
  • Does asdcplib do the MIC [10.1]?
  • Looks like numgbits in openjpeg is always 2? [10.2.1]
  • Check out SPcod, SPcoc = 0b00000000
  • Check other JPEG stuff in [10.2.1]
  • Audio stuff in [10.3.2]
  • Timed text stuff in [10.4]

Need a review of the messages in libdcp:verify.cc, especially where they mention Bv2.1; perhaps BV21_ERROR do not need to mention Bv2.1 in the message (and perhaps we need a Bv2.1 warning...). Also some messages probably should give details (e.g. what sample rate is being specified which is not 48kHz?). check_verify_result needs to be used to check for the no-error case. Tidy up the use of verify_ and check_ as method prefixes. Lots of dcp:: in verify.cc not necessary.

Have missed out part of [8.3.1] - MainCaption and ClosedSubtitle shall not be used.

Revision 2021-01-18 09:40 by carl
Description

Things to think about / investigate

  • [6.1] Everything should be SMPTE (ST-429-2); default to SMPTE and warn about Interop
  • [7.1] Hint about or hide behind "advanced" setting: all 30fps, 50fps, 60fps; everything but 24/2D in 4K.
  • Should there be a single "conform to SMPTE Bv2.1" checkbox? Allow, warn, disallow?
  • Does asdcplib do the MIC [10.1]?
  • Looks like numgbits in openjpeg is always 2? [10.2.1]
  • Check out SPcod, SPcoc = 0b00000000
  • Check other JPEG stuff in [10.2.1]
  • Audio stuff in [10.3.2]
  • Timed text stuff in [10.4]

Need a review of the messages in libdcp:verify.cc, especially where they mention Bv2.1; perhaps BV21_ERROR do not need to mention Bv2.1 in the message (and perhaps we need a Bv2.1 warning...). Also some messages probably should give details (e.g. what sample rate is being specified which is not 48kHz?). check_verify_result needs to be used to check for the no-error case. Tidy up the use of verify_ and check_ as method prefixes.

Have missed out part of [8.3.1] - MainCaption and ClosedSubtitle shall not be used.

Revision 2021-01-17 21:10 by carl
Description

Things to think about / investigate

  • [6.1] Everything should be SMPTE (ST-429-2); default to SMPTE and warn about Interop
  • [7.1] Hint about or hide behind "advanced" setting: all 30fps, 50fps, 60fps; everything but 24/2D in 4K.
  • Should there be a single "conform to SMPTE Bv2.1" checkbox? Allow, warn, disallow?
  • Does asdcplib do the MIC [10.1]?
  • Looks like numgbits in openjpeg is always 2? [10.2.1]
  • Check out SPcod, SPcoc = 0b00000000
  • Check other JPEG stuff in [10.2.1]
  • Audio stuff in [10.3.2]
  • Timed text stuff in [10.4]

Need a review of the messages in libdcp:verify.cc, especially where they mention Bv2.1; perhaps BV21_ERROR do not need to mention Bv2.1 in the message (and perhaps we need a Bv2.1 warning...). Also some messages probably should give details (e.g. what sample rate is being specified which is not 48kHz?). check_verify_result needs to be used to check for the no-error case.

Have missed out part of [8.3.1] - MainCaption and ClosedSubtitle shall not be used.

Revision 2021-01-14 22:41 by carl
Description

Things to think about / investigate

  • [6.1] Everything should be SMPTE (ST-429-2); default to SMPTE and warn about Interop
  • [7.1] Hint about or hide behind "advanced" setting: all 30fps, 50fps, 60fps; everything but 24/2D in 4K.
  • Should there be a single "conform to SMPTE Bv2.1" checkbox? Allow, warn, disallow?
  • Does asdcplib do the MIC [10.1]?
  • Looks like numgbits in openjpeg is always 2? [10.2.1]
  • Check out SPcod, SPcoc = 0b00000000
  • Check other JPEG stuff in [10.2.1]
  • Audio stuff in [10.3.2]
  • Timed text stuff in [10.4]

Need a review of the messages in libdcp:verify.cc, especially where they mention Bv2.1; perhaps BV21_ERROR do not need to mention Bv2.1 in the message (and perhaps we need a Bv2.1 warning...). Also some messages probably should give details (e.g. what sample rate is being specified which is not 48kHz?)

Have missed out part of [8.3.1] - MainCaption and ClosedSubtitle shall not be used.

Revision 2021-01-14 22:03 by carl
Description

Things to think about / investigate

  • [6.1] Everything should be SMPTE (ST-429-2); default to SMPTE and warn about Interop
  • [7.1] Hint about or hide behind "advanced" setting: all 30fps, 50fps, 60fps; everything but 24/2D in 4K.
  • Should there be a single "conform to SMPTE Bv2.1" checkbox? Allow, warn, disallow?
  • Does asdcplib do the MIC [10.1]?
  • Looks like numgbits in openjpeg is always 2? [10.2.1]
  • Check out SPcod, SPcoc = 0b00000000
  • Check other JPEG stuff in [10.2.1]
  • Audio stuff in [10.3.2]
  • Timed text stuff in [10.4]

Need a review of the messages in libdcp:verify.cc, especially where they mention Bv2.1; perhaps BV21_ERROR do not need to mention Bv2.1 in the message (and perhaps we need a Bv2.1 warning...). Also some messages probably should give details (e.g. what sample rate is being specified which is not 48kHz?)

Revision 2021-01-14 22:03 by carl
Description

Things to think about / investigate

  • [6.1] Everything should be SMPTE (ST-429-2); default to SMPTE and warn about Interop
  • [7.1] Hint about or hide behind "advanced" setting: all 30fps, 50fps, 60fps; everything but 24/2D in 4K.
  • Should there be a single "conform to SMPTE Bv2.1" checkbox? Allow, warn, disallow?
  • Does asdcplib do the MIC [10.1]?
  • Looks like numgbits in openjpeg is always 2? [10.2.1]
  • Check out SPcod, SPcoc = 0b00000000
  • Check other JPEG stuff in [10.2.1]
  • Audio stuff in [10.3.2]
  • Timed text stuff in [10.4]

Need a review of the messages in libdcp:verify.cc, especially where they mention Bv2.1; perhaps BV21_ERROR do not need to mention Bv2.1 in the message (and perhaps we need a Bv2.1 warning...)

Revision 2020-09-06 23:29 by carl
Description

Things to think about / investigate

  • [6.1] Everything should be SMPTE (ST-429-2); default to SMPTE and warn about Interop
  • [7.1] Hint about or hide behind "advanced" setting: all 30fps, 50fps, 60fps; everything but 24/2D in 4K.
  • Should there be a single "conform to SMPTE Bv2.1" checkbox? Allow, warn, disallow?
  • Does asdcplib do the MIC [10.1]?
  • Looks like numgbits in openjpeg is always 2? [10.2.1]
  • Check out SPcod, SPcoc = 0b00000000
  • Check other JPEG stuff in [10.2.1]
  • Audio stuff in [10.3.2]
  • Timed text stuff in [10.4]
Revision 2020-08-18 23:05 by carl
Description

Things to think about / investigate

  • [6.1] Everything should be SMPTE (ST-429-2); default to it, hide interop behind an "advanced" setting, completely remove interop write support?
  • [7.1] Hint about or hide behind "advanced" setting: all 30fps, 50fps, 60fps; everything but 24/2D in 4K.
  • Should there be a single "conform to SMPTE Bv2.1" checkbox? Allow, warn, disallow?
  • Does asdcplib do the MIC [10.1]?
  • Looks like numgbits in openjpeg is always 2? [10.2.1]
  • Check out SPcod, SPcoc = 0b00000000
  • Check other JPEG stuff in [10.2.1]
  • Audio stuff in [10.3.2]
  • Timed text stuff in [10.4]
Revision 2020-08-18 23:03 by carl
Description

Have read up to start of section 9.

Things to think about / investigate

  • [6.1] Everything should be SMPTE (ST-429-2); default to it, hide interop behind an "advanced" setting, completely remove interop write support?
  • [7.1] Hint about or hide behind "advanced" setting: all 30fps, 50fps, 60fps; everything but 24/2D in 4K.
  • Should there be a single "conform to SMPTE Bv2.1" checkbox? Allow, warn, disallow?
  • Does asdcplib do the MIC [10.1]?
  • Looks like numgbits in openjpeg is always 2? [10.2.1]
  • Check out SPcod, SPcoc = 0b00000000
  • Check other JPEG stuff in [10.2.1]
  • Audio stuff in [10.3.2]
  • Timed text stuff in [10.4]
Revision 2020-08-18 23:03 by carl
Description

Have read up to start of section 9.

Things to think about / investigate

  • [6.1] Everything should be SMPTE (ST-429-2); default to it, hide interop behind an "advanced" setting, completely remove interop write support?
  • [7.1] Hint about or hide behind "advanced" setting: all 30fps, 50fps, 60fps; everything but 24/2D in 4K.
  • Should there be a single "conform to SMPTE Bv2.1" checkbox? Allow, warn, disallow?
  • Does asdcplib do the MIC [10.1]?
  • Looks like numgbits in openjpeg is always 2? [10.2.1]
  • Check out SPcod, SPcoc = 0b00000000
  • Check other JPEG stuff in [10.2.1]
  • Audio stuff in [10.3.2]
Revision 2020-08-18 22:53 by carl
Description

Have read up to start of section 9.

Things to think about / investigate

  • [6.1] Everything should be SMPTE (ST-429-2); default to it, hide interop behind an "advanced" setting, completely remove interop write support?
  • [7.1] Hint about or hide behind "advanced" setting: all 30fps, 50fps, 60fps; everything but 24/2D in 4K.
  • Should there be a single "conform to SMPTE Bv2.1" checkbox? Allow, warn, disallow?
  • Does asdcplib do the MIC [10.1]?
  • Looks like numgbits in openjpeg is always 2? [10.2.1]
  • Check out SPcod, SPcoc = 0b00000000
  • Check other JPEG stuff in [10.2.1]
Revision 2020-08-18 22:51 by carl
Description

Have read up to start of section 9.

Things to think about / investigate

  • [6.1] Everything should be SMPTE (ST-429-2); default to it, hide interop behind an "advanced" setting, completely remove interop write support?
  • [7.1] Hint about or hide behind "advanced" setting: all 30fps, 50fps, 60fps; everything but 24/2D in 4K.
  • Should there be a single "conform to SMPTE Bv2.1" checkbox? Allow, warn, disallow?
  • Does asdcplib do the MIC [10.1]?
  • Looks like numgbits in openjpeg is always 2? [10.2.1]
  • Check out SPcod, SPcoc = 0b00000000
Revision 2020-08-18 22:51 by carl
Description

Have read up to start of section 9.

Things to think about / investigate

  • [6.1] Everything should be SMPTE (ST-429-2); default to it, hide interop behind an "advanced" setting, completely remove interop write support?
  • [7.1] Hint about or hide behind "advanced" setting: all 30fps, 50fps, 60fps; everything but 24/2D in 4K.
  • Should there be a single "conform to SMPTE Bv2.1" checkbox? Allow, warn, disallow?
  • Does asdcplib do the MIC [10.1]?
  • Looks like numgbits in openjpeg is always 2? [10.2.1]
Revision 2020-08-18 22:48 by carl
Description

Have read up to start of section 9.

Things to think about / investigate

  • [6.1] Everything should be SMPTE (ST-429-2); default to it, hide interop behind an "advanced" setting, completely remove interop write support?
  • [7.1] Hint about or hide behind "advanced" setting: all 30fps, 50fps, 60fps; everything but 24/2D in 4K.
  • Should there be a single "conform to SMPTE Bv2.1" checkbox? Allow, warn, disallow?
  • Does asdcplib do the MIC [10.1]?
Revision 2020-08-18 19:57 by carl
Description

Have read up to start of section 9.

Things to think about

  • [6.1] Everything should be SMPTE (ST-429-2); default to it, hide interop behind an "advanced" setting, completely remove interop write support?
  • [7.1] Hint about or hide behind "advanced" setting: all 30fps, 50fps, 60fps; everything but 24/2D in 4K.
  • Should there be a single "conform to SMPTE Bv2.1" checkbox? Allow, warn, disallow?
Revision 2020-08-18 19:50 by carl
Description

Have read up to start of section 9.

Things to think about

  • [6.1] Everything should be SMPTE (ST-429-2); default to it, hide interop behind an "advanced" setting, completely remove interop write support?
  • [7.1] Hint about or hide behind "advanced" setting: all 30fps, 50fps, 60fps; everything but 24/2D in 4K.
  • Should there be a single "conform to SMPTE Bv2.1" checkbox? Allow, warn, disallow?

Mantis

Perhaps just run the verifier on every DCP the unit tests make?

[7.2] Timed text restrictions

Add everything to the verifier

[8.3.2] MainSubtitle / ClosedCaptions must always have EntryPoint of 0

[8.4] Must always be a <Hash>

[8.5] If it's a feature (FTR) FFEC and FFMC must be present.

[8.5] Always add FFOC (=1) and LFOC (=duration-1) markers

[8.6] Add <CompositionMetadata> with [8.6.4] MCA Sub Descriptors

[8.6.2] Add <VersionNumber>

[8.6.3] Add <cpl-meta:ExtensionMetadata>

Revision 2020-08-18 19:50 by carl
Description

Have read up to start of section 9.

Things to think about

  • [6.1] Everything should be SMPTE (ST-429-2); default to it, hide interop behind an "advanced" setting, completely remove interop write support?

[7.1] Hint about or hide behind "advanced" setting: all 30fps, 50fps, 60fps; everything but 24/2D in 4K.

Should there be a single "conform to SMPTE Bv2.1" checkbox? Allow, warn, disallow?

Maybe should have unit tests for all this stuff
Perhaps just run the verifier on every DCP the unit tests make?

Mantis

[7.2] Timed text restrictions

Add everything to the verifier

[8.3.2] MainSubtitle / ClosedCaptions must always have EntryPoint of 0

[8.4] Must always be a <Hash>

[8.5] If it's a feature (FTR) FFEC and FFMC must be present.

[8.5] Always add FFOC (=1) and LFOC (=duration-1) markers

[8.6] Add <CompositionMetadata> with [8.6.4] MCA Sub Descriptors

[8.6.2] Add <VersionNumber>

[8.6.3] Add <cpl-meta:ExtensionMetadata>

Revision 2020-08-14 16:22 by carl
Description

[]