Capture filters - CESNET/UltraGrid GitHub Wiki

You can use some predefined capture filters to modify captured video frames. Basic usage is following:

uv --capture-filter <filter>[:<params>] -t <vidcap> <receiver>

Note: Please keep in mind that --capture-filter option needs to precede -t option. This is because there can be multiple -t options on the command line (eg. for Video Switcher).

blank

Blanks supplied regions of video. Sample usage:

uv --capture-filter blank:100:100:50:200

uv --capture-filter blank:10%:10%:3%:2%

(the first example uses value in pixels while the second relative values).

every

Selectively drops video frames allowing frame rate adjustment:

uv --capture-filter every:2

drops every second frame making video with a half framerate (eg. 25p from 50p)

flip

This filter flips (vertically) captured video.

grayscale

This filter makes captured video grayscale. Please note that original codec is kept, i.e. full-color video is still sent.

logo

Places a logo (or arbitrary image) into the video.

uv --capture-filter logo:my_logo.pam:1850:1000

Image my_logo.pam is rendered at coordinates +1850+1000 of video. It needs to be in Netpbm PAM format (can be converted by eg. Imagemagick), supported are only RGB and RGBA images.

mirror

This filter mirrors (horizontally) captured video.

resize

Resizes captured frames:

uv --capture-filter resize:1/2 -t testcard <receiver>

Downscales input frame size by a scale factor of 2.

uv --capture-filter resize:1920x1080 -t testcard <receiver>

Scales the input image to 1920x1080 (no matter which resolution original image had).

uv --capture-filter resize:720x576i -t testcard <receiver>

Scales the input image to PAL, overriding interlacing. To be correct PAL, original frame rate must have been 25 frames per second (25p or 50i)

text

Note: This module is currently experimental. Requires MagickWand. You can add text to received video using text video capture filter. Usage is simple:

uv --capture-filter text:<your_text> -t <your_capturer> <receiver_address>

If your text contains spaces, you can enclose entire argument with apostrophes, eg.:

uv --capture-filter "text:Your text with spaces" -t decklink <receiver_address>

⚠️ **GitHub.com Fallback** ⚠️