Audio/video filters
The available options can depend on the version of the underlying encoding tools that Transloadit uses for the following Robots:
- 🤖/audio/artwork
- 🤖/audio/concat
- 🤖/audio/split
- 🤖/audio/encode
- 🤖/audio/loop
- 🤖/audio/merge
- 🤖/audio/waveform
- 🤖/meta/write
- 🤖/video/adaptive
- 🤖/video/artwork
- 🤖/video/concat
- 🤖/video/encode
- 🤖/video/merge
- 🤖/video/split
- 🤖/video/subtitle
- 🤖/video/thumbs
Transloadit recommends having: ffmpeg_stack: "v7" in these Robots’ Assembly Instructions. We are intimately aware of how important continuity is for our customers, so stack version upgrades are always opt-in. Stack versions are typically supported for many years before we start issuing deprecation warnings (for example, we had been supporting "v1.0.0" for 11 years before we deprecated it).
Page 2 of 3
v5 | v6 | v7 | |||||
|---|---|---|---|---|---|---|---|
| Name | Description | Read | Write | Read | Write | Read | Write |
dejudder | Remove judder produced by pullup. | Yes | Yes | Yes | Yes | Yes | Yes |
delogo | Remove logo from input video. | Yes | Yes | Yes | Yes | Yes | Yes |
denoise_vaapi | VAAPI VPP for de-noise | Yes | Yes | Yes | Yes | Yes | Yes |
derain | Apply derain filter to the input. | Yes | Yes | Yes | Yes | Yes | Yes |
deshake | Stabilize shaky video. | Yes | Yes | Yes | Yes | Yes | Yes |
deshake_opencl | Feature-point based video stabilization filter | No | No | Yes | Yes | Yes | Yes |
despill | Despill video. | Yes | Yes | Yes | Yes | Yes | Yes |
detelecine | Apply an inverse telecine pattern. | Yes | Yes | Yes | Yes | Yes | Yes |
dialoguenhance | Audio Dialogue Enhancement. | No | No | Yes | Yes | Yes | Yes |
dilation | Apply dilation effect. | Yes | Yes | Yes | Yes | Yes | Yes |
dilation_opencl | Apply dilation effect | No | No | Yes | Yes | Yes | Yes |
displace | VVV->V Displace pixels. | No | No | No | No | No | No |
dnn_classify | Apply DNN classify filter to the input. | Yes | Yes | Yes | Yes | Yes | Yes |
dnn_detect | Apply DNN detect filter to the input. | Yes | Yes | Yes | Yes | Yes | Yes |
dnn_processing | Apply DNN processing filter to the input. | Yes | Yes | Yes | Yes | Yes | Yes |
doubleweave | Weave input video fields into double number of frames. | Yes | Yes | Yes | Yes | Yes | Yes |
drawbox | Draw a colored box on the input video. | Yes | Yes | Yes | Yes | Yes | Yes |
drawgraph | Draw a graph using input video metadata. | Yes | Yes | Yes | Yes | Yes | Yes |
drawgrid | Draw a colored grid on the input video. | Yes | Yes | Yes | Yes | Yes | Yes |
drawtext | Draw text on top of video frames using libfreetype library. | Yes | Yes | Yes | Yes | Yes | Yes |
drmeter | Measure audio dynamic range. | Yes | Yes | Yes | Yes | Yes | Yes |
dynaudnorm | Dynamic Audio Normalizer. | Yes | Yes | Yes | Yes | Yes | Yes |
earwax | Widen the stereo image. | Yes | Yes | Yes | Yes | Yes | Yes |
ebur128 | EBU R128 scanner. | No | No | No | No | No | No |
edgedetect | Detect and draw edge. | Yes | Yes | Yes | Yes | Yes | Yes |
elbg | Apply posterize effect, using the ELBG algorithm. | Yes | Yes | Yes | Yes | Yes | Yes |
entropy | Measure video frames entropy. | Yes | Yes | Yes | Yes | Yes | Yes |
epx | Scale the input using EPX algorithm. | Yes | Yes | Yes | Yes | Yes | Yes |
eq | Adjust brightness, contrast, gamma, and saturation. | Yes | Yes | Yes | Yes | Yes | Yes |
equalizer | Apply two-pole peaking equalization (EQ) filter. | Yes | Yes | Yes | Yes | Yes | Yes |
erosion | Apply erosion effect. | Yes | Yes | Yes | Yes | Yes | Yes |
erosion_opencl | Apply erosion effect | No | No | Yes | Yes | Yes | Yes |
estdif | Apply Edge Slope Tracing deinterlace. | Yes | Yes | Yes | Yes | Yes | Yes |
exposure | Adjust exposure of the video stream. | Yes | Yes | Yes | Yes | Yes | Yes |
extractplanes | Extract planes as grayscale frames. | Yes | No | Yes | No | Yes | No |
extrastereo | Increase difference between stereo audio channels. | Yes | Yes | Yes | Yes | Yes | Yes |
fade | Fade in/out input video. | Yes | Yes | Yes | Yes | Yes | Yes |
feedback | Apply feedback video filter. | No | No | Yes | Yes | Yes | Yes |
fftdnoiz | Denoise frames using 3D FFT. | Yes | Yes | Yes | Yes | Yes | Yes |
fftfilt | Apply arbitrary expressions to pixels in frequency domain. | Yes | Yes | Yes | Yes | Yes | Yes |
field | Extract a field from the input video. | Yes | Yes | Yes | Yes | Yes | Yes |
fieldhint | Field matching using hints. | Yes | Yes | Yes | Yes | Yes | Yes |
fieldmatch | Field matching for inverse telecine. | No | Yes | No | Yes | No | Yes |
fieldorder | Set the field order. | Yes | Yes | Yes | Yes | Yes | Yes |
fifo | Buffer input images and send them when they are requested. | Yes | Yes | Yes | Yes | No | No |
fillborders | Fill borders of the input video. | Yes | Yes | Yes | Yes | Yes | Yes |
find_rect | Find a user specified object. | Yes | Yes | Yes | Yes | Yes | Yes |
firequalizer | Finite Impulse Response Equalizer. | Yes | Yes | Yes | Yes | Yes | Yes |
flanger | Apply a flanging effect to the audio. | Yes | Yes | Yes | Yes | Yes | Yes |
flip_vulkan | Flip both horizontally and vertically | Yes | Yes | Yes | Yes | Yes | Yes |
flite | Synthesize voice from text using libflite. | No | No | Yes | Yes | Yes | Yes |
floodfill | Fill area with same color with another color. | Yes | Yes | Yes | Yes | Yes | Yes |
format | Convert the input video to one of the specified pixel formats. | Yes | Yes | Yes | Yes | Yes | Yes |
fps | Force constant framerate. | Yes | Yes | Yes | Yes | Yes | Yes |
framepack | Generate a frame packed stereoscopic video. | Yes | Yes | Yes | Yes | Yes | Yes |
framerate | Upsamples or downsamples progressive source between specified frame rates. | Yes | Yes | Yes | Yes | Yes | Yes |
framestep | Select one frame every N frames. | Yes | Yes | Yes | Yes | Yes | Yes |
freezedetect | Detects frozen video input. | Yes | Yes | Yes | Yes | Yes | Yes |
freezeframes | Freeze video frames. | Yes | Yes | Yes | Yes | Yes | Yes |
frei0r | Apply a frei0r effect. | Yes | Yes | Yes | Yes | Yes | Yes |
frei0r_src | Generate a frei0r source. | Yes | Yes | Yes | Yes | Yes | Yes |
fspp | Apply Fast Simple Post-processing filter. | Yes | Yes | Yes | Yes | Yes | Yes |
fsync | Synchronize video frames from external source. | No | No | No | No | Yes | Yes |
gblur | Apply Gaussian Blur filter. | Yes | Yes | Yes | Yes | Yes | Yes |
gblur_vulkan | Gaussian Blur in Vulkan | Yes | Yes | Yes | Yes | Yes | Yes |
geq | Apply generic equation to each pixel. | Yes | Yes | Yes | Yes | Yes | Yes |
gradfun | Debands video quickly using gradients. | Yes | Yes | Yes | Yes | Yes | Yes |
gradients | Draw a gradients. | Yes | Yes | Yes | Yes | Yes | Yes |
graphmonitor | Show various filtergraph stats. | Yes | Yes | Yes | Yes | Yes | Yes |
grayworld | Adjust white balance using LAB gray world algorithm | Yes | Yes | Yes | Yes | Yes | Yes |
greyedge | Estimates scene illumination by grey edge assumption. | Yes | Yes | Yes | Yes | Yes | Yes |
guided | Apply Guided filter. | No | Yes | No | Yes | No | Yes |
haas | Apply Haas Stereo Enhancer. | Yes | Yes | Yes | Yes | Yes | Yes |
haldclut | Adjust colors using a Hald CLUT. | Yes | Yes | Yes | Yes | Yes | Yes |
haldclutsrc | Provide an identity Hald CLUT. | Yes | Yes | Yes | Yes | Yes | Yes |
hdcd | Apply High Definition Compatible Digital (HDCD) decoding. | Yes | Yes | Yes | Yes | Yes | Yes |
headphone | Apply headphone binaural spatialization with HRTFs in additional streams. | Yes | Yes | Yes | Yes | Yes | Yes |
hflip | Horizontally flip the input video. | Yes | Yes | Yes | Yes | Yes | Yes |
hflip_vulkan | Horizontally flip the input video in Vulkan | Yes | Yes | Yes | Yes | Yes | Yes |
highpass | Apply a high-pass filter with 3dB point frequency. | Yes | Yes | Yes | Yes | Yes | Yes |
highshelf | Apply a high shelf filter. | Yes | Yes | Yes | Yes | Yes | Yes |
hilbert | Generate a Hilbert transform FIR coefficients. | Yes | Yes | Yes | Yes | Yes | Yes |
histeq | Apply global color histogram equalization. | Yes | Yes | Yes | Yes | Yes | Yes |
histogram | Compute and draw a histogram. | Yes | Yes | Yes | Yes | Yes | Yes |
hqdn3d | Apply a High Quality 3D Denoiser. | Yes | Yes | Yes | Yes | Yes | Yes |
hqx | Scale the input by 2, 3 or 4 using the hq*x magnification algorithm. | Yes | Yes | Yes | Yes | Yes | Yes |
hstack | Stack video inputs horizontally. | No | Yes | No | Yes | No | Yes |
hstack_qsv | "Quick Sync Video" hstack | No | No | No | Yes | No | Yes |
hstack_vaapi | "VA-API" hstack | No | No | No | Yes | No | Yes |
hsvhold | Turns a certain HSV range into gray. | Yes | Yes | Yes | Yes | Yes | Yes |
hsvkey | Turns a certain HSV range into transparency. Operates on YUV colors. | Yes | Yes | Yes | Yes | Yes | Yes |
hue | Adjust the hue and saturation of the input video. | Yes | Yes | Yes | Yes | Yes | Yes |
huesaturation | Apply hue-saturation-intensity adjustments. | Yes | Yes | Yes | Yes | Yes | Yes |
hwdownload | Download a hardware frame to a normal frame | Yes | Yes | Yes | Yes | Yes | Yes |
hwmap | Map hardware frames | Yes | Yes | Yes | Yes | Yes | Yes |
hwupload | Upload a normal frame to a hardware frame | Yes | Yes | Yes | Yes | Yes | Yes |
hwupload_cuda | Upload a system memory frame to a CUDA device. | Yes | Yes | Yes | Yes | Yes | Yes |
hysteresis | Grow first stream into second stream by connecting components. | Yes | Yes | Yes | Yes | Yes | Yes |
identity | Calculate the Identity between two video streams. | Yes | Yes | Yes | Yes | Yes | Yes |
idet | Interlace detect Filter. | Yes | Yes | Yes | Yes | Yes | Yes |
il | Deinterleave or interleave fields. | Yes | Yes | Yes | Yes | Yes | Yes |
inflate | Apply inflate effect. | Yes | Yes | Yes | Yes | Yes | Yes |
interlace | Convert progressive video into interlaced. | Yes | Yes | Yes | Yes | Yes | Yes |
interleave | Temporally interleave video inputs. | No | Yes | No | Yes | No | Yes |
join | Join multiple audio streams into multi-channel output. | Yes | Yes | Yes | Yes | Yes | Yes |
kerndeint | Apply kernel deinterlacing to the input. | Yes | Yes | Yes | Yes | Yes | Yes |
kirsch | Apply kirsch operator. | Yes | Yes | Yes | Yes | Yes | Yes |
ladspa | Apply LADSPA effect. | Yes | Yes | Yes | Yes | Yes | Yes |
lagfun | Slowly update darker pixels. | Yes | Yes | Yes | Yes | Yes | Yes |
latency | Report video filtering latency. | Yes | Yes | Yes | Yes | Yes | Yes |
lenscorrection | Rectify the image by correcting for lens distortion. | Yes | Yes | Yes | Yes | Yes | Yes |
libplacebo | Apply various GPU filters from libplacebo | No | No | No | Yes | No | Yes |
libvmaf | Calculate the VMAF between two video streams. | Yes | Yes | Yes | Yes | Yes | Yes |
life | Create life. | Yes | Yes | Yes | Yes | Yes | Yes |
limitdiff | Apply filtering with limiting difference. | No | Yes | No | Yes | No | Yes |
limiter | Limit pixels components to the specified range. | Yes | Yes | Yes | Yes | Yes | Yes |
loop | Loop video frames. | Yes | Yes | Yes | Yes | Yes | Yes |
loudnorm | EBU R128 loudness normalization | Yes | Yes | Yes | Yes | Yes | Yes |
lowpass | Apply a low-pass filter with 3dB point frequency. | Yes | Yes | Yes | Yes | Yes | Yes |
lowshelf | Apply a low shelf filter. | Yes | Yes | Yes | Yes | Yes | Yes |
lumakey | Turns a certain luma into transparency. | Yes | Yes | Yes | Yes | Yes | Yes |
lut | Compute and apply a lookup table to the RGB/YUV input video. | Yes | Yes | Yes | Yes | Yes | Yes |
lut1d | Adjust colors using a 1D LUT. | Yes | Yes | Yes | Yes | Yes | Yes |
lut2 | Compute and apply a lookup table from two video inputs. | Yes | Yes | Yes | Yes | Yes | Yes |
lut3d | Adjust colors using a 3D LUT. | Yes | Yes | Yes | Yes | Yes | Yes |
lutrgb | Compute and apply a lookup table to the RGB input video. | Yes | Yes | Yes | Yes | Yes | Yes |
lutyuv | Compute and apply a lookup table to the YUV input video. | Yes | Yes | Yes | Yes | Yes | Yes |
mandelbrot | Render a Mandelbrot fractal. | Yes | Yes | Yes | Yes | Yes | Yes |
maskedclamp | VVV->V Clamp first stream with second stream and third stream. | No | No | No | No | No | No |
maskedmax | VVV->V Apply filtering with maximum difference of two streams. | No | No | No | No | No | No |
maskedmerge | VVV->V Merge first stream with second stream using third stream as mask. | No | No | No | No | No | No |
maskedmin | VVV->V Apply filtering with minimum difference of two streams. | No | No | No | No | No | No |
maskedthreshold | Pick pixels comparing absolute difference of two streams with threshold. | Yes | Yes | Yes | Yes | Yes | Yes |
maskfun | Create Mask. | Yes | Yes | Yes | Yes | Yes | Yes |
mcdeint | Apply motion compensating deinterlacing. | No | No | Yes | Yes | Yes | Yes |
mcompand | Multiband Compress or expand audio dynamic range. | Yes | Yes | Yes | Yes | Yes | Yes |
median | Apply Median filter. | Yes | Yes | Yes | Yes | Yes | Yes |
mergeplanes | Merge planes. | No | Yes | No | Yes | No | Yes |
mestimate | Generate motion vectors. | Yes | Yes | Yes | Yes | Yes | Yes |
metadata | Manipulate video frame metadata. | Yes | Yes | Yes | Yes | Yes | Yes |
midequalizer | Apply Midway Equalization. | Yes | Yes | Yes | Yes | Yes | Yes |
minterpolate | Frame rate conversion using Motion Interpolation. | Yes | Yes | Yes | Yes | Yes | Yes |
mix | Mix video inputs. | No | Yes | No | Yes | No | Yes |
monochrome | Convert video to gray using custom color filter. | Yes | Yes | Yes | Yes | Yes | Yes |
morpho | Apply Morphological filter. | Yes | Yes | Yes | Yes | Yes | Yes |
movie | Read from a movie source. | Yes | No | Yes | No | Yes | No |
mpdecimate | Remove near-duplicate frames. | Yes | Yes | Yes | Yes | Yes | Yes |
mptestsrc | Generate various test pattern. | Yes | Yes | Yes | Yes | Yes | Yes |
msad | Calculate the MSAD between two video streams. | Yes | Yes | Yes | Yes | Yes | Yes |
multiply | Multiply first video stream with second video stream. | No | No | Yes | Yes | Yes | Yes |
negate | Negate input video. | Yes | Yes | Yes | Yes | Yes | Yes |
nlmeans | Non-local means denoiser. | Yes | Yes | Yes | Yes | Yes | Yes |
nlmeans_opencl | Non-local means denoiser through OpenCL | No | No | Yes | Yes | Yes | Yes |
nlmeans_vulkan | Non-local means denoiser (Vulkan) | No | No | Yes | Yes | Yes | Yes |
nnedi | Apply neural network edge directed interpolation intra-only deinterlacer. | Yes | Yes | Yes | Yes | Yes | Yes |
noformat | Force libavfilter not to use any of the specified pixel formats for the input to the next filter. | Yes | Yes | Yes | Yes | Yes | Yes |
noise | Add noise. | Yes | Yes | Yes | Yes | Yes | Yes |
normalize | Normalize RGB video. | Yes | Yes | Yes | Yes | Yes | Yes |
null | Pass the source unchanged to the output. | Yes | Yes | Yes | Yes | Yes | Yes |
nullsink | Do absolutely nothing with the input video. | Yes | Yes | Yes | Yes | Yes | Yes |
nullsrc | Null video source, return unprocessed video frames. | Yes | Yes | Yes | Yes | Yes | Yes |
openclsrc | Generate video using an OpenCL program | No | No | Yes | Yes | Yes | Yes |
oscilloscope | 2D Video Oscilloscope. | Yes | Yes | Yes | Yes | Yes | Yes |
overlay | Overlay a video source on top of the input. | Yes | Yes | Yes | Yes | Yes | Yes |
overlay_cuda | Overlay one video on top of another using CUDA | No | No | Yes | Yes | Yes | Yes |
overlay_opencl | Overlay one video on top of another | No | No | Yes | Yes | Yes | Yes |
overlay_qsv | Quick Sync Video overlay. | Yes | Yes | Yes | Yes | Yes | Yes |
overlay_vaapi | Overlay one video on top of another | No | No | Yes | Yes | Yes | Yes |
overlay_vulkan | Overlay a source on top of another | Yes | Yes | Yes | Yes | Yes | Yes |
owdenoise | Denoise using wavelets. | Yes | Yes | Yes | Yes | Yes | Yes |
pad | Pad the input video. | Yes | Yes | Yes | Yes | Yes | Yes |
pad_opencl | Pad the input video. | No | No | Yes | Yes | Yes | Yes |
pal100bars | Generate PAL 100% color bars. | Yes | Yes | Yes | Yes | Yes | Yes |
pal75bars | Generate PAL 75% color bars. | Yes | Yes | Yes | Yes | Yes | Yes |
palettegen | Find the optimal palette for a given stream. | Yes | Yes | Yes | Yes | Yes | Yes |
paletteuse | Use a palette to downsample an input video stream. | Yes | Yes | Yes | Yes | Yes | Yes |
pan | Remix channels with coefficients (panning). | Yes | Yes | Yes | Yes | Yes | Yes |
perms | Set permissions for the output video frame. | Yes | Yes | Yes | Yes | Yes | Yes |
perspective | Correct the perspective of video. | Yes | Yes | Yes | Yes | Yes | Yes |
phase | Phase shift fields. | Yes | Yes | Yes | Yes | Yes | Yes |
photosensitivity | Filter out photosensitive epilepsy seizure-inducing flashes. | Yes | Yes | Yes | Yes | Yes | Yes |
pixdesctest | Test pixel format definitions. | Yes | Yes | Yes | Yes | Yes | Yes |
pixelize | Pixelize video. | No | No | Yes | Yes | Yes | Yes |
pixscope | Pixel data analysis. | Yes | Yes | Yes | Yes | Yes | Yes |
pp | Filter video using libpostproc. | Yes | Yes | Yes | Yes | Yes | Yes |
pp7 | Apply Postprocessing 7 filter. | Yes | Yes | Yes | Yes | Yes | Yes |
premultiply | PreMultiply first stream with first plane of second stream. | No | Yes | No | Yes | No | Yes |
prewitt | Apply prewitt operator. | Yes | Yes | Yes | Yes | Yes | Yes |
prewitt_opencl | Apply prewitt operator | No | No | Yes | Yes | Yes | Yes |
procamp_vaapi | ProcAmp (color balance) adjustments for hue, saturation, brightness, contrast | Yes | Yes | Yes | Yes | Yes | Yes |
program_opencl | Filter video using an OpenCL program | No | No | No | Yes | No | Yes |
pseudocolor | Make pseudocolored video frames. | Yes | Yes | Yes | Yes | Yes | Yes |
psnr | Calculate the PSNR between two video streams. | Yes | Yes | Yes | Yes | Yes | Yes |
pullup | Pullup from field sequence to frames. | Yes | Yes | Yes | Yes | Yes | Yes |
qp | Change video quantization parameters. | Yes | Yes | Yes | Yes | Yes | Yes |
qrencode | Draw a QR code on top of video frames. | No | No | No | No | Yes | Yes |
qrencodesrc | Generate a QR code. | No | No | No | No | Yes | Yes |
quirc | Decode and show QR codes content. | No | No | No | No | Yes | Yes |
random | Return random frames. | Yes | Yes | Yes | Yes | Yes | Yes |
readeia608 | Read EIA-608 Closed Caption codes from input video and write them to frame metadata. | Yes | Yes | Yes | Yes | Yes | Yes |