fa6d2efc9689
Replace Background
Try out this capability in Bria's sandbox
Description
an asynchronous job that detects the video background and composites a user-provided image or video asset behind the subject. Size and duration mismatches between the input video and the background asset are handled automatically.
behavior:
-
Returns HTTP 202 with request_id and status_url
-
Check job status by polling status_url or by calling the Status Service with the request_id until a terminal status is returned
foreground input containers:
- .mp4, .mov, .webm, .avi, .gif
*foreground input codecs:
- H.264, H.265 (HEVC), VP9, AV1, PhotoJPEG
background input formats:
-
Image: .jpg, .png, .webp, .gif
-
Video: .mp4, .mov, .webm, .avi
attributes preserved in output:
-
Aspect Ratio and resolution (matches foreground video)
-
Frame Rate (matches foreground video)
-
Foreground audio if present and preserve_audio is true. Background audio is always discarded.
Limitations:
-
Max foreground duration: 60 seconds
-
Max background video duration: 60 seconds
-
Resolutions: Input resolution up to 16000x16000 (16K) for both foreground and background. Inputs larger than this return 413 Payload Too Large. Output resolution matches the foreground input resolution.
-
Video Background spect ratio: provided background video must be of same aspect ratio as the foeground video.
mismatch handling (image bakground):
- Background is scaled to cover the full frame, then center-cropped to exactly match the foreground resolution. Some background edges may be clipped.
mismatch handling (video backgrounds only):
-
Background video shorter than foreground: loop from 0s until foreground ends.
-
Background video longer than foreground: play from 0s, trim at foreground end.
Output transparency:
- Output is fully opaque (composited).
Headers
Request body
Response
Accepted