-
Notifications
You must be signed in to change notification settings - Fork 16
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Clarify luminance gain prose (#1117). #1156
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would also welcome the input of @jmccrossan-fox who raised the original issue here.
@@ -11485,12 +11485,14 @@ of the paragraph.</p> | |||
</div3> | |||
<div3 id="style-attribute-luminanceGain"> | |||
<head>tts:luminanceGain</head> | |||
<p>The <att>tts:luminanceGain</att> attribute is used to specify the absolute luminance of a region when | |||
<p>The <att>tts:luminanceGain</att> attribute is used to determine the absolute luminance of a region when |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think it is specifying, not determining. However to compute the end value, some additional calculation is needed.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No, it doesn't specify the absolute luminance. It specifies a relative gain to apply to a reference absolute luminance to determine the desired absolute luminance, which is why I changed specified to determined in this context.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't understand the difference between those two things @skynavga . Isn't it only a difference in the unit of luminance?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
tts:luminanceGain
specifies a unit-less gain multiplier which, when multiplied by 80 cd/m2, determines, i.e., is used to calculate, an absolute luminance; tts:luminanceGain
does not specify a value that is equal to absolute luminance, in which case it would have been incorrectly named (as a gain), and should be renamed to tts:luminance
.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Are you making the distinction between an attribute value that includes a units component vs one that does not?
Since there's no established symbol for the "80cd.m-2" unit, it's hard for authors to write it down. I've been thinking of it as something that has these units which just happen to be defined by specification instead of including them in the value. But it still ends up with units one way or another. I think there's a term for this kind of "dancing around terminology distinctions", and it's probably not very complimentary! We probably shouldn't spend too long doing it. (we already have)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No. By units and unit-less, I am talking physics, not ttml syntax. If we had an attribute that specified absolute luminance, then it would be called tts:luminance
not tts:luminanceGain
, and it would specify a number that has an implied physical unit of candelas per square meter, e.g., tts:luminance="80"
would mean a specified absolute luminance of 80 cd/m2. But that is not what we have, so we can't say that tts:luminanceGain
specifies an absolute luminance. It expresses a multiplier (like ttp:frameRateMultiplier
) that is multiplied by 80 cd/m2 to obtain an absolute luminance.
its presentation requires a greater dynamic range than that provided by the <bibref ref="srgb"/> color space, | ||
and when that presentation requires an absolute luminance value.</p> | ||
<note role="clarification"> | ||
<p>The <bibref ref="srgb"/> color space specifies an absolute reference white point luminance of 80 cd∙m<sup>-2</sup>. | ||
As a result, colors specified in the <bibref ref="srgb"/> space cannot be | ||
<p>Absolute luminance is determined by means of a gain multiplier applied to the absolute reference white |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There's another layer of potential confusion here, since some presentation systems may not be able to present the specified absolute luminance. In this case I think we're providing a rule for calculating the used value, which may then be further modified to become an actual value based on the capabilities and settings of the presentation device.
Using the phrasing "Absolute luminance is determined by" does not make it clear which value is being specified or determined.
Therefore I'd suggest that we express this in terms of the used value being computed by multiplying the value of the attribute by the 80cd.m-2 specified by [[SRGB]] as an alternative to the wording proposed here.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Here, it is the computed value that is determined which happens to be the same as the used value; however, the actual value may be different. This is the default reading that applies to all of our style definitions, so we don't bother to repeat it under each style.
spec/ttml2.xml
Outdated
@@ -11551,7 +11553,7 @@ images whose processing generates <bibref ref="srgb"/> pixel values, and an abso | |||
only the <bibref ref="srgb"/> pixel values are transformed.</p></note> | |||
<p>When applying <att>tts:luminanceGain</att>, the linear optical output values | |||
(C<sub>r</sub>, C<sub>g</sub>, C<sub>b</sub>) of the <loc href="#terms-component">components</loc> of a pixel of a region are defined as | |||
80 ∙ <att>tts:luminanceGain</att> ∙ (r, g, b), where (r, g, b) are the normalized linear <bibref ref="srgb"/> <loc href="#terms-component">components</loc> of the pixel. | |||
80 cd m<sup>-2</sup> ∙ <att>tts:luminanceGain</att> ∙ (r, g, b), where (r, g, b) are the normalized linear <bibref ref="srgb"/> <loc href="#terms-component">components</loc> of the pixel. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please remove the units attached to 80
per #283 (comment)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Marking this for discussion at TPAC.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
My request for discussion is predicated on a need to understand #283 (comment). In particular, my understanding of the current expression
80 ∙ tts:luminanceGain ∙ (r, g, b)
is that (r, g, b) is a vector (triplet), which means that the result of this calculation is also a vector, where each component of the calculated vector is itself an absolute luminance with respect to each component's color alone (in cd/m2); in any case, if we say that we are computing absolute luminance, then the resulting value must be in cd/m2; otherwise, it is not absolute luminance.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Addressed in 858e508.
<p>Absolute luminance is determined by means of a gain multiplier applied to the absolute reference white | ||
point luminance of 80 cd∙m<sup>-2</sup> of the <bibref ref="srgb"/> color space (and not the actual white luminance | ||
of some output display device).</p> | ||
<p>Without the ability to specify this gain, colors specified in the <bibref ref="srgb"/> space cannot be |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I suggest writing:
_ applied to the constant absolute reference white point luminance of 80 cd∙m-2 of the [SRGB] color space (and not the actual white luminance of the ultimate output display device, which can vary across devices and viewing environments and configurations)._
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This expansion doesn't add anything to the original parenthetical, i.e., "ultimate" is redundant, and "which can vary across ..." is obviously implied.
The Timed Text Working Group just discussed
The full IRC log of that discussion<cyril> Topic: Clarify luminance gain prose (#1117). #1156<cyril> github: https://github.com//pull/1156 <cyril> nigel: I had a philosphical debate about "determine" <cyril> pal: I prefer "determine" <cyril> glenn: I can take out the cd/m2 unit <cyril> glenn: the other comment I'm not sure it's good <cyril> pal: fine, you can ignore it, it is not that important <cyril> SUMMARY: Glenn to update the PR to remove the extraneous units and Pierre to approve, and Glenn to merge |
@palemieux pls resolve conversations and approve |
Closes #1117.