Everyframe · TypeScript SDK reference

combine: multi-stream ops

Ops that take two or more streams: apply analysis back onto video (redact, annotate), or composite (overlay, xfade, concat, stacks). Methods on the primary stream: video.redact(detections, opts).

@jtdigital/renderbox-sdk on npm →

acrossfade

FFmpeg
Audio + Audio Audio
AudioStream.acrossfade(b: AudioStream, opts?: AcrossfadeOpts): AudioStream

Cross-fade between two audio streams

Param Type Description
d number

amix

FFmpeg
Audio Audio
AudioStream.amix(rest: AudioStream[], opts?: AmixOpts): AudioStream

Mix multiple audio streams

Param Type Description
normalize boolean
duration 'longest' | 'shortest' | 'first'

anchorGraphic

OpenCV
Video + Pose Video
VideoStream.anchorGraphic(b: PoseStream, opts: AnchorGraphicOpts): VideoStream

Anchor graphic overlay to pose keypoint

Param Type Description
keypoint required string
offset_x number
offset_y number

annotate

OpenCV
Video + Detection Video
VideoStream.annotate(b: DetectionStream, opts?: AnnotateOpts): VideoStream

Draw detection annotations on video

Param Type Description
style 'bbox' | 'label' | 'bbox+label' | 'mask' What to draw for each detection. 'mask' forbids thickness/fontsize/fontcolor (a TypeScript error if supplied).
thickness number Outline thickness in pixels.
show_confidence boolean Append the confidence score to labels.
fontsize number Label font size.
fontcolor string Label text color.
color string Box/label color (single color for all classes).
class_colors Record<string, ParamValue> Per-class color map, e.g. { person: '#22c55e' }.

blend

FFmpeg
Video + Video Video
VideoStream.blend(b: VideoStream, opts?: BlendOpts): VideoStream

Blend two video streams with a blend mode per component

Param Type Description
all_mode string
all_opacity number
all_expr string

classifyDetections

ONNX
Video + Detection Detection
VideoStream.classifyDetections(b: DetectionStream, opts: ClassifyDetectionsOpts): DetectionStream

Classify detection crops with a secondary model

Param Type Description
model required string
crop_region number
Range: [0, 1]
padding number
Range: at least 0
attribute string
threshold number
Range: [0, 1]
labels string
crop_anchor string
crop_height_ratio number
Range: [0, 1]
norm string

concat

FFmpeg
Video Video
VideoStream.concat(rest: VideoStream[], opts?: ConcatOpts): VideoStream

Concatenate videos

Param Type Description
a number Number of audio streams per segment.
v number Number of video streams per segment.

containsDetections

Rust
Detection + Detection Detection
DetectionStream.containsDetections(b: DetectionStream, opts?: ContainsDetectionsOpts): DetectionStream

Spatial containment test between detection sets

Param Type Description
min_containment number
Range: [0, 1]
region string

densityOverlay

OpenCV
Video + Density Video
VideoStream.densityOverlay(b: DensityStream, opts?: DensityOverlayOpts): VideoStream

Overlay density heatmap on video

Param Type Description
colormap string
alpha number
Range: [0, 1]

depthBlur

OpenCV
Video + Depth Video
VideoStream.depthBlur(b: DepthStream, opts?: DepthBlurOpts): VideoStream

Depth-based blur effect

Param Type Description
max_blur number Blur strength at the far plane.
Range: at least 0
near_plane number Depth treated as fully sharp.
far_plane number Depth treated as fully blurred.

depthFog

OpenCV
Video + Depth Video
VideoStream.depthFog(b: DepthStream, opts?: DepthFogOpts): VideoStream

Depth-based fog effect

Param Type Description
density number
Range: [0, 1]
color string
near_plane number
far_plane number

drawSkeleton

OpenCV
Video + Pose Video
VideoStream.drawSkeleton(b: PoseStream, opts?: DrawSkeletonOpts): VideoStream

Draw pose skeleton on video

Param Type Description
line_width number
Range: greater than 0
keypoint_radius number
Range: greater than 0
color string
min_confidence number
Range: [0, 1]
show_labels boolean

dynamicCrop

OpenCV
Video + Detection Video
VideoStream.dynamicCrop(b: DetectionStream, opts: DynamicCropOpts): VideoStream

Dynamically crop video tracking detected regions

Param Type Description
target_aspect_w required number Output aspect ratio width component (e.g. 9).
Range: greater than 0
target_aspect_h required number Output aspect ratio height component (e.g. 16).
Range: greater than 0
smoothing number Camera-path smoothing; higher is steadier.
Range: [0, 1]
padding number Extra margin around subjects, as a fraction of the crop.
Range: at least 0
subject string Class name to follow when multiple detections are present.

estimatePoseDetections

ONNX
Video + Detection Pose
VideoStream.estimatePoseDetections(b: DetectionStream, opts: EstimatePoseDetectionsOpts): PoseStream

Top-down pose keypoints per detected person (RTMPose)

Param Type Description
model required string
threshold number
Range: at least 0
padding number
Range: at least 0

hstack

FFmpeg
Video Video
VideoStream.hstack(rest: VideoStream[], opts?: HstackOpts): VideoStream

Stack videos horizontally

Param Type Description
shortest boolean

intersectionDetections

Rust
Detection + Detection Detection
DetectionStream.intersectionDetections(b: DetectionStream, opts?: IntersectionDetectionsOpts): DetectionStream

Intersection of detection sets

Param Type Description
iou_threshold number
Range: [0, 1]

intersectionSegmentations

Rust
Segmentation + Segmentation Segmentation
SegmentationStream.intersectionSegmentations(b: SegmentationStream): SegmentationStream

Intersection of segmentation masks

maskBlur

OpenCV
Video + Segmentation Video
VideoStream.maskBlur(b: SegmentationStream, opts?: MaskBlurOpts): VideoStream

Blur regions by segmentation mask

Param Type Description
radius number
Range: at least 0
sigma number
Range: at least 0
invert boolean

maskColorGrade

OpenCV
Video + Segmentation Video
VideoStream.maskColorGrade(b: SegmentationStream, opts?: MaskColorGradeOpts): VideoStream

Color grade by segmentation mask

Param Type Description
saturation number
brightness number
contrast number
hue number
invert boolean

maskComposite

OpenCV
Video + Segmentation Video
VideoStream.maskComposite(b: SegmentationStream, opts?: MaskCompositeOpts): VideoStream

Composite video with segmentation mask

Param Type Description
mode 'replace' | 'overlay' | 'multiply'
background string
opacity number
Range: [0, 1]

maskedmerge

FFmpeg
Video + Video Video
VideoStream.maskedmerge(b: VideoStream): VideoStream

Merge two video streams through an alpha/mask stream

overlay

FFmpeg
Video + Video Video
VideoStream.overlay(b: VideoStream, opts?: OverlayOpts): VideoStream

Overlay video on video

Param Type Description
x number | string Horizontal position of the overlaid stream (pixels or FFmpeg expression).
y number | string Vertical position (pixels or FFmpeg expression).
align 'top-left' | 'top' | 'top-right' | 'left' | 'center' | 'right' | 'bottom-left' | 'bottom' | 'bottom-right'
alpha number Overlay opacity.
Range: [0, 1]

overlayTranslation

OpenCV
Video + Text Video
VideoStream.overlayTranslation(b: TextStream, opts: OverlayTranslationOpts): VideoStream

Overlay translated text on video

Param Type Description
target_language required string
font_family string
font_size number
Range: greater than 0
background_color string

parallax

OpenCV
Video + Depth Video
VideoStream.parallax(b: DepthStream, opts?: ParallaxOpts): VideoStream

Parallax depth effect

Param Type Description
amplitude number
Range: at least 0
direction 'horizontal' | 'vertical' | 'zoom'
duration number

recognizeTextIn

ONNX
Video + Detection Text
VideoStream.recognizeTextIn(b: DetectionStream, opts: RecognizeTextInOpts): TextStream

OCR text recognition within detection bounding boxes

Param Type Description
model required string
threshold number
Range: [0, 1]
padding number
Range: at least 0

redact

OpenCV
Video + Detection Video
VideoStream.redact(b: DetectionStream, opts?: RedactOpts): VideoStream

Redact detected regions

Param Type Description
mode 'blur' | 'pixelate' | 'black' Redaction style applied inside each detection region. Variant-typed: 'blur' requires radius, 'black' forbids it — the wrong combination is a TypeScript error.
radius number Blur radius / pixelation block size in pixels. Required for 'blur', forbidden for 'black'.
Range: at least 0

redactText

OpenCV
Video + Text Video
VideoStream.redactText(b: TextStream, opts?: RedactTextOpts): VideoStream

Redact recognized text regions

Param Type Description
mode 'blur' | 'pixelate' | 'black'
radius number
Range: at least 0
padding number
Range: at least 0

renderHeatmap

OpenCV
Video + Density Video
VideoStream.renderHeatmap(b: DensityStream, opts?: RenderHeatmapOpts): VideoStream

Render density as colored heatmap

Param Type Description
colormap string
alpha number
Range: [0, 1]
radius number
Range: greater than 0
blur number

scale2ref

FFmpeg
Video + Video Video
VideoStream.scale2ref(b: VideoStream): VideoStream

Scale a video to match the dimensions of a reference stream

sceneColorGrade

OpenCV
Video + Scene Video
VideoStream.sceneColorGrade(b: SceneStream, opts?: SceneColorGradeOpts): VideoStream

Apply per-scene color grading

Param Type Description
preset string
intensity number
Range: [0, 1]
transition_frames number
Range: at least 0

sidechaincompress

FFmpeg
Audio + Audio Audio
AudioStream.sidechaincompress(b: AudioStream, opts?: SidechaincompressOpts): AudioStream

Compress main audio when sidechain signal exceeds threshold

Param Type Description
threshold number
ratio number
attack number
release number
level_sc number

slideshow

FFmpeg
Video Video
VideoStream.slideshow(rest: VideoStream[], opts?: SlideshowOpts): VideoStream

Create slideshow from images

Param Type Description
transition string
duration number
segment_duration number

union

Rust
Detection + Detection Detection
DetectionStream.union(b: DetectionStream): DetectionStream

Union of detection sets

unionSegmentations

Rust
Segmentation + Segmentation Segmentation
SegmentationStream.unionSegmentations(b: SegmentationStream): SegmentationStream

Union of segmentation masks

vstack

FFmpeg
Video Video
VideoStream.vstack(rest: VideoStream[], opts?: VstackOpts): VideoStream

Stack videos vertically

Param Type Description
shortest boolean

weightedDetections

Rust
Detection + Detection Detection
DetectionStream.weightedDetections(b: DetectionStream, opts?: WeightedDetectionsOpts): DetectionStream

Weighted union of detection sets

Param Type Description
weight_a number
Range: at least 0
weight_b number
Range: at least 0

xfade

FFmpeg
Video + Video Video
VideoStream.xfade(b: VideoStream, opts?: XfadeOpts): VideoStream

Cross-fade transition between two videos

Param Type Description
transition string Transition name (e.g. 'fade', 'dissolve', 'wipeleft').
duration number Transition length in seconds.
offset number Time into the first stream when the transition starts.

xstack

FFmpeg
Video Video
VideoStream.xstack(rest: VideoStream[], opts?: XstackOpts): VideoStream

Stack videos in custom grid layout

Param Type Description
layout string
fill string