Publicly accessible URL of the input video
Overview
Bria's Video Editing APIs empowers builders with powerful tools for programmatically transforming video content while maintaining original quality.
Asynchronous Requests and the Status Service
Bria API v2 endpoints process requests asynchronously by default. When you make an asynchronous request, the API immediately returns a request_id
and a status_url
instead of the final result. Use the Status Service to track the request's progress until it reaches a completed state.
See the full guide at Status Service Documentation for complete details and usage examples.
https://engine.prod.bria-api.com/v2/video/edit/
Request
Initiates an asynchronous resolution upscaling job for a video. Upscales up to 8K output!
Response behavior:
- Returns HTTP 202 with
request_id
andstatus_url
- Check job status by polling
status_url
or by calling the Status Service with therequest_id
until a terminal status is returned
Supported input containers:
- .mp4, .mov, .webm, .avi, .gif
Supported input codecs:
- H.264, H.265 (HEVC), VP9, AV1, PhotoJPEG
Input attributes preserved in output:
- Aspect Ratio
- Frame Rate
- Color Bit Depth
- Audio if present
- Transparency if present and supported by the selected output preset
Limits:
- Max input duration: 30 seconds
- Max output resolution: 7680x4320 (8K). If the selected
desired_increase
would exceed this limit the server returns 422 Unprocessable Entity.
Encoding:
- Bitrate is adjusted automatically to match the target resolution to preserve quality.
https://engine.prod.bria-api.com/v2/video/edit/increase_resolution
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X POST \
https://engine.prod.bria-api.com/v2/video/edit/increase_resolution \
-H 'Content-Type: application/json' \
-H 'api_token: string' \
-d '{
"video": "example",
"desired_increase": 2,
"output_container_and_codec": "mp4_h265"
}'
{ "request_id": "string", "status_url": "string" }
Request
Initiates an asynchronous background removal job for a video.
Response behavior:
- Returns HTTP 202 with
request_id
andstatus_url
- Check job status by polling
status_url
or by calling the Status Service with therequest_id
until a terminal status is returned
Supported input containers:
- .mp4, .mov, .webm, .avi, .gif
Supported input codecs:
- H.264, H.265 (HEVC), VP9, AV1, PhotoJPEG
Input attributes preserved in output:
- Aspect Ratio and resolution
- Frame Rate
- Audio if present
Limits:
- Max input duration: 30 seconds
- Resolutions: Input resolution up to 16000x16000 (16K). Inputs larger than this return 413 Payload Too Large. Output resolution matches the input resolution.
Background and transparency control:
background_color
must be one of the predefined string values listed below. Hex values are not supported. Default isTransparent
.- If
background_color
isTransparent
, the selected output preset must support alpha. Otherwise the server responds with 422 Unprocessable Entity.
Output transparency support by preset:
- Alpha supported:
webm_vp9
,mov_proresks
,mkv_vp9
,mkv_raw
,gif
,mov_h265
when encoded as HEVC with Alpha - Alpha not supported:
mp4_h264
,mp4_h265
,mkv_h264
,mkv_h265
,avi_h264
Publicly accessible URL of the input video. Input resolution supported up to 16000x16000 (16K)
Predefined string only - one of the enum values below. Hex values are not supported
https://engine.prod.bria-api.com/v2/video/edit/remove_background
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X POST \
https://engine.prod.bria-api.com/v2/video/edit/remove_background \
-H 'Content-Type: application/json' \
-H 'api_token: string' \
-d '{
"video": "example"
}'
{ "request_id": "string", "status_url": "string" }