ColorBars

From Avisynth wiki
Revision as of 02:59, 17 October 2016 by Raffriff42 (Talk | contribs)

Jump to: navigation, search

Contents


SMPTE Color Bars-320x240.png

ColorBars

ColorBars ( [ int width, int height, string pixel_type ] )

Produces a video clip containing SMPTE color bars (Rec. ITU-R BT.801-1) scaled to any image size.

By default, a 640×480, RGB32, TV range, 29.97 fps, 1 hour long clip is produced.

int  width = 640
int  height = 480
Set size of the returned clip.
string  pixel_type = "RGB32"
Set color format of the returned clip.
May be any of the following: "YUY2", "YV12", "YV24" (v2.60), or (default) "RGB32".


SMPTE Color Bars16x9-320x180.png

ColorBarsHD

ColorBarsHD ( [ int width, int height, string pixel_type ] )

Added in v2.60, ColorBarsHD produces a video clip containing SMPTE color bars
(Rec. ITU-R BT.709 / arib std b28 v1.0) scaled to any image size.

By default, a 1288×720, YV24, TV range, 29.97 fps, 1 hour long clip is produced.

int  width = 1288
int  height = 720
Set size of the returned clip.
string  pixel_type = "YV24"
Set color format of the returned clip. Must be "YV24".

TV range

For both filters, in all color formats, luminance levels are TV range, where black=16
and white=235, within a total possible range of 0-255.

The table below show the TV-range values ColorBarsHD generates, and those same values as they should be after converting to full range.

Yfull = (Ytv-16)  × 255/(235-16) // (for R, G, B, Y)
Ufull = (Utv-128) × 255/(240-16) + 128 // (for U, V)
Ytv   = Yfull × (235-16)/255 + 16 // (for R, G, B, Y)
Utv   = (Ufull-128) × (240-16)/255 + 128 // (for U, V)
Color bar  TV range output (expanded to full range)
R G B Y U V R G B Y U V
75% White 180 180 180 180 128 128 191 191 191 191 128 128
75% Yellow 180 180 16 168 44 136 191 191 0 177 32 137
75% Cyan 16 180 180 145 147 44 0 191 191 150 149 32
75% Green 16 180 16 134 63 52 0 191 0 137 54 41
75% Magenta 180 16 180 63 193 204 191 0 191 55 201 214
75% Red 180 16 16 51 109 212 191 0 0 41 106 223
75% Bue 16 16 180 28 212 120 0 0 191 14 223 118

These colors are at "75%" of maximum, per common broadcast practice. You may occasionally see "100%" color bars.[1] They are rather useless, as you cannot detect gain or saturation that is too high on a signal that is already at maximum.

PLUGE

The lower part of the frame is called the PLUGE (also lowercase: "pluge") signal.
From left to right it consists of: -I, white, +Q, then a series of black and near-black bars: 0, -4, 0, +4 and 0 IRE relative to black.

Note 'IRE' is used here to mean 'percent luminance', on a scale from 0 (black) to 100 (white), ignoring the varying broadcast standards where black might be 0 IRE or 7.5 IRE depending on the country.

This section documents the ColorBars pluge only; ColorBarsHD's pluge is similar, but dispenses with -I and +Q

The table below show the TV-range values ColorBars generates, and those same values as they should be after converting to full range.

PLUGE Element  TV range output (expanded to full range)
R G B Y U V R G B Y U V
-I 0 58 98 16 158 95 -19 49 95 0 162 90
100% White 235 235 235 235 128 128 255 255 255 255 128 128
+Q 59 15 126 16 174 149 50 -1 128 0 180 151
Black 16 16 16 16 128 128 0 0 0 0 128 128
-4 IRE 7 7 7 7 128 128 -10 -10 -10 -10 128 128
Black 16 16 16 16 128 128 0 0 0 0 128 128
+4 IRE 25 25 25 25 128 128 10 10 10 10 128 128
Black 16 16 16 16 128 128 0 0 0 0 128 128
(negative values will be clipped to 0)

The -I and +Q bars are vestigial artifacts of NTSC analog TV and are not really used any more.

The -4, 0 and +4 IRE bars can be used to set your monitor brightness – assuming your playback chain expands TV range (16-235) to full-range (0-255) as shown in the images above. The -4 IRE and 0 IRE bars should have the same apparent brightness (they should be as dark as the monitor can display), and the +4 should be a little brighter. If you can see the -4 bar, your monitor brightness is set too high; if you cannot see the +4 bar, your monitor brightness is set too low.[2]

Note, the pluge signal goes out of 16-235 range in the -I and the -4 bars. These cannot be accurately converted to 0-255 range.

More information about the colorbars and the PLUGE can be found on the colorbars theory page.

Audio

For both filters, an audio tone is also generated. The tone is a 440Hz sine at 48KHz sample rate, 16 bit, stereo. The tone pulses in the right speaker, being turned on and off once every second. Level is 0 dBFS.

You can use Amplify to set a softer level (0dB can be a little deafening!)

ColorBarsHD
AmplifyDB(-20)

Broadcasting organizations usually specify an "alignment tone" accompanying colorbars at anywhere from -12 to -20 dBFS; if sending materials to another party, be sure to get their preferred alignment tone level. The exact level doesn't matter as long as all parties agree to it.

Miscellaneous

  • Note, that for example
ColorBars(pixel_type="YUY2")
...is equivalent to
ColorBars(pixel_type="RGB32")
ConvertToYUY2(matrix="PC.601")  
# "PC.601" / "PC.709" don't scale the luma range
  • When directly generating YUV format data, the color transitions are arranged to occur on a chroma-aligned boundary.

Changes

v2.60
  • Added pixel_type="YV24" to ColorBars.
  • Initial release of ColorBarsHD.
v2.56 Added pixel_type="YUY2"/"YV12".
Personal tools