SMPTE / ST377-1-full-revision

2 stars 0 forks source link

Relationship of Stored, Sampled and Display size in modern infrastructure #20

Open gzander opened 4 years ago

gzander commented 4 years ago

What is the intention of Stored, Sampled and Display Size in a modern infrastructure for compressed video?

SMPTE-standards commented 4 years ago

Historically they all applied to uncompressed images. When compression was introduced, different mappings have probably done slightly different things. We need to audit this as part of the 377-1 revision.

My opinion is:

As we revise MXF, I think Display and Sampled Rectangles should be required and the status Stored Rectangle is codec dependent and probably optional for everything except Uncompressed.

mrmxf commented 4 years ago

Further information from an email thread discussing whether DisplayF2Offset or SampledF2Offset should be used to indicate Topness:

The most common case nowadays is when Stored Rectangle = Sampled Rectangle and (Sampled Y Offset == Displayed Y Offset == 0 ). I think this is the case for all ProRes files. In compression system, I have viewed the Stored and Sample rectangles as internal to the compression engine and thus are nearly always the same thing Any attempt to make them different has traditionally caused confusion and interop issues (e.g. rectangle heights of 1088 or 1080). The safest thing for consistent behaviour, I feel, is to use Display F2 Offset. This will give consistent results if the Display rectangle is changed. Using StoredF2 Offset creates an ambiguous corner case when the Display rectangle is used to crop an interlaced source resulting in both DisplayF2Offset and StoredF2Offset being -1. Although Luis captured this in his spreadsheet, I don't think that the standard unambiguously supports that interpretation.

Bottom line - use DisplayF2Offset. The standard is ambiguous in best practise, but not in interprestation.

thomasheritage commented 1 year ago

Note that https://github.com/SMPTE/st2067-2/issues/54#issuecomment-732334805 explains how Display Rectangle and Production Aperture have been considered equivalent by MXF implementers (RP 187 describes the Production Aperture as the "maximum possible image area that can be supported by the video standard").

So, I think it's the case that:

palemieux commented 1 year ago

You wouldn't use the Display Rectangle as a mechanism to arbitrarily crop an image (for example to remove black bars from "letterboxed" content).

Definitely. IMF introduces an explicit Active Area Rectangle for that use case: Annex G at https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=9097478