Letterbox

Fills the top and bottom rows of each frame, and optionally the left and right columns, with black or color. This has several common uses:

  • Black out video noise from the existing black bands in an image that's already letterboxed.

  • Black out the video noise at the bottom of the frame in VHS tape sources.

  • Black out overscan areas in VCD or SVCD sources.

  • Create a quick rectangular mask for other filters – a so-called "garbage matte".

  • Optionally filters the transient areas. (3.7.4-)

See also: AddBorders, which increases frame size. Letterbox does not change frame size.

Actually, the functionality of Letterbox is performed with a combination of Crop and AddBorders, but Letterbox is easier to use.

Generally, it's better to Crop video noise off than to black it out; many older lossy compression algorithms don't deal well with solid-color borders, unless the border happens to fall on a macroblock boundary (16 pixels for MPEG). However, in some cases, particularly for certain hardware players, it's better to use Letterbox because it lets you keep a standard frame size.

Syntax and Parameters

Letterbox (clip, int top, int bottom, int "x1", int "x2", int "color", int "color_yuv"
           string "resample", float "param1", float "param2", float "param3", int "r" )
clip

Source clip; all color formats supported.

top, bottom

Number of top and bottom rows to blank out.

  • For YUV420 sources, top and bottom must be mod2 (divisible by 2).

top+bottom must be less than the frame height, or else the first phase (Crop) would result in error with a zero-height clip.

x1, x2

Number of left (x1) and right (x2) columns to blank out.

  • For YUV422 and YUV420 sources, left and right must be mod2 (divisible by 2).

  • For YUV411 sources, left and right must be mod4 (divisible by 4).

x1+x2 must be less than the frame width, or else the first phase (Crop) would result in error with a zero-width clip.

Default: 0, 0

color
Fill color specified as an RGB value in either hexadecimal or decimal notation.
Hex numbers must be preceded with a $. See the colors page for more information on specifying colors.
  • For YUV clips, colors are converted from full range (0–255) to limited range (16–235) Rec.601.

  • Use color_yuv to specify full range YUV values or a color with a different matrix.

Default: $000000

color_yuv
Specifies the color of the border using YUV values. Input clip must be YUV, otherwise it does nothing.
Similar to color_yuv in BlankClip
resample

string resample = "gauss"

When r radius is not zero, then determines which resampler is used in the transient filtering.

Default is "gauss".

For detailed description see AddBorders.

param1, param2, param3

These 'float' type parameters can be the additional parameters for the resampler.

For detailed description see AddBorders.

r

int r = 0

The radius of the transient treatment in pixels. The value is meant as +/- around the border line.

For detailed description see AddBorders.

Changelog

Version

Changes

3.7.4

Add filtering. resample, param1, param2, param3, r parameters

AviSynth+ 3.4.1

Added color_yuv option.

AviSynth+ r2487

Added support for RGB48/64 and all Planar RGB(A)/YUV(A) color formats.

AviSynth 2.0.7

Added color option.

AviSynth 2.0.6

Added optional left and right parameters (x1 and x2).

$Date: 2025/03/14 14:00:00 $