Limiter
Raffriff42 (Talk | contribs) m (one more touch-up) |
Raffriff42 (Talk | contribs) m ('show) |
||
Line 55: | Line 55: | ||
|- | |- | ||
| | | | ||
− | ! style="text-align:left;width:12em;"|{{FuncArg|show}}="luma" | + | ! style="text-align:left;width:12em;"| {{FuncArg|show}}="luma" |
− | ! style="text-align:left;width:12em;"|{{FuncArg|show}}="luma_grey" | + | ! style="text-align:left;width:12em;"| {{FuncArg|show}}="luma_grey" |
|- | |- | ||
| ''Y''j < {{FuncArg|min_luma}} | | ''Y''j < {{FuncArg|min_luma}} | ||
− | | red (pj) | + | | {{BoldColor|#FF0000|120|♦}} red (pj) |
− | | red (pj) | + | | {{BoldColor|#FF0000|120|♦}} red (pj) |
|- | |- | ||
| ''Y''j > {{FuncArg|max_luma}} | | ''Y''j > {{FuncArg|max_luma}} | ||
− | | green (pj) | + | | {{BoldColor|#00FF00|120|♦}} green (pj) |
− | | green (pj) | + | | {{BoldColor|#00FF00|120|♦}} green (pj) |
|- | |- | ||
| ''Y''j < {{FuncArg|min_luma}} and ''Y''k > {{FuncArg|max_luma}} | | ''Y''j < {{FuncArg|min_luma}} and ''Y''k > {{FuncArg|max_luma}} | ||
− | | yellow (pj and pk) | + | | {{BoldColor|#FFFF00|120|♦}} yellow (pj and pk) |
− | | puke (pj) | + | | {{BoldColor|#555501|120|♦}} puke (pj) {{BoldColor|#A0A04A|120|♦}} olive (pk) |
|- | |- | ||
| | | | ||
− | ! style="text-align:left;"|{{FuncArg|show}}="chroma" | + | ! style="text-align:left;"| {{FuncArg|show}}="chroma" |
− | ! style="text-align:left;"|{{FuncArg|show}}="chroma_grey" | + | ! style="text-align:left;"| {{FuncArg|show}}="chroma_grey" |
|- | |- | ||
| ''U'' < {{FuncArg|min_chroma}} | | ''U'' < {{FuncArg|min_chroma}} | ||
− | | yellow | + | | {{BoldColor|#FFFF00|120|♦}} yellow |
− | | yellow | + | | {{BoldColor|#FFFF00|120|♦}} yellow |
|- | |- | ||
| ''U'' > {{FuncArg|max_chroma}} | | ''U'' > {{FuncArg|max_chroma}} | ||
− | | yellow | + | | {{BoldColor|#FFFF00|120|♦}} yellow |
− | | blue | + | | {{BoldColor|#0000FF|120|♦}} blue |
|- | |- | ||
| ''V'' < {{FuncArg|min_chroma}} | | ''V'' < {{FuncArg|min_chroma}} | ||
− | | yellow | + | | {{BoldColor|#FFFF00|120|♦}} yellow |
− | | cyan | + | | {{BoldColor|#00FFFF|120|♦}} cyan |
|- | |- | ||
| ''V'' > {{FuncArg|max_chroma}} | | ''V'' > {{FuncArg|max_chroma}} | ||
− | | yellow | + | | {{BoldColor|#FFFF00|120|♦}} yellow |
− | | red | + | | {{BoldColor|#FF0000|120|♦}} red |
|- | |- | ||
| ''U'' < {{FuncArg|min_chroma}} and ''V'' < {{FuncArg|min_chroma}} | | ''U'' < {{FuncArg|min_chroma}} and ''V'' < {{FuncArg|min_chroma}} | ||
− | | yellow | + | | {{BoldColor|#FFFF00|120|♦}} yellow |
− | | green | + | | {{BoldColor|#00FF00|120|♦}} green |
|- | |- | ||
| ''U'' > {{FuncArg|max_chroma}} and ''V'' < {{FuncArg|min_chroma}} | | ''U'' > {{FuncArg|max_chroma}} and ''V'' < {{FuncArg|min_chroma}} | ||
− | | yellow | + | | {{BoldColor|#FFFF00|120|♦}} yellow |
− | | teal | + | | {{BoldColor|#008080|120|♦}} teal |
|- | |- | ||
| ''U'' < {{FuncArg|min_chroma}} and ''V'' > {{FuncArg|max_chroma}} | | ''U'' < {{FuncArg|min_chroma}} and ''V'' > {{FuncArg|max_chroma}} | ||
− | | yellow | + | | {{BoldColor|#FFFF00|120|♦}} yellow |
− | | orange | + | | {{BoldColor|#FFA500|120|♦}} orange |
|- | |- | ||
| ''U'' > {{FuncArg|max_chroma}} and ''V'' > {{FuncArg|max_chroma}} | | ''U'' > {{FuncArg|max_chroma}} and ''V'' > {{FuncArg|max_chroma}} | ||
− | | yellow | + | | {{BoldColor|#FFFF00|120|♦}} yellow |
− | | magenta | + | | {{BoldColor|#FF00FF|120|♦}} magenta |
|} | |} | ||
Revision as of 17:14, 23 January 2016
The standard known as Rec.601 or CCIR-601 (Studio Encoding Parameters of Digital Television...) defines standard quantization levels: for luminance, black is 16 and peak white is 235. This is the normal luminance range. For chrominance, the range is 16 to 240, or 128±112. "The signal may occasionally excurse beyond" these ranges according to Rec.601.BT.601-7 (Annex 1, Table 3)
Luminance or chrominance values outside their ranges are known to cause problems with some TV sets, so Limiter was created to clip them (or clamp them - both terms are used) to the ranges [min_luma, max_luma] and [min_chroma, max_chroma], which you may specify, but by default are the Rec.601 values listed above.
Limiter can also colorize out-of-range pixels (with show) to warn of a potential problem. See the example images below. Naturally, this option should not be enabled for final output.
Contents |
Syntax and Parameters
Limiter(clip clip [, int min_luma, int max_luma, int min_chroma, int max_chroma, string show ] )
- clip clip = (required)
- Source clip. YUV only.
- int min_luma = 16
- Y (luma) lower clamping limit.
- int max_luma = 235
- Y (luma) upper clamping limit.
- int min_chroma = 16
- U & V (chroma) lower clamping limit.
- int max_chroma = 240
- U & V (chroma) upper clamping limit.
- string show = (empty)
- Colorizes the pixels outside the specified [min_X, max_X] range.
- If set, show must take one of the following values:
show Effect "luma" colorizes out of bound luma "luma_grey" colorizes out of bound luma, and makes the remaining pixels grey "chroma" colorizes out of bound chroma "chroma_grey" colorizes out of bound chroma, and makes the remaining pixels grey
Pixel Condition Colorization show="luma" show="luma_grey" Yj < min_luma ♦ red (pj) ♦ red (pj) Yj > max_luma ♦ green (pj) ♦ green (pj) Yj < min_luma and Yk > max_luma ♦ yellow (pj and pk) ♦ puke (pj) ♦ olive (pk) show="chroma" show="chroma_grey" U < min_chroma ♦ yellow ♦ yellow U > max_chroma ♦ yellow ♦ blue V < min_chroma ♦ yellow ♦ cyan V > max_chroma ♦ yellow ♦ red U < min_chroma and V < min_chroma ♦ yellow ♦ green U > max_chroma and V < min_chroma ♦ yellow ♦ teal U < min_chroma and V > max_chroma ♦ yellow ♦ orange U > max_chroma and V > max_chroma ♦ yellow ♦ magenta
Examples
# 1. Original image FFmpegSource2("sintel.mp4") Trim(4685, 4685) ColorYUV(analyze=true)
# 2. Exaggerated luma and chroma range [...] Levels(16, 1.0, 255-16, 0, 255, coring=false) Tweak(sat=2.0, coring=false) ColorYUV(analyze=true)
Changes
v2.60 | Added support for YV24. |
v2.56 | Added show to show out of bound luma/chroma. |