This api lets you upload your video on assets and use URL for your video input.
Uploaded Video
Bad Request
Insufficient Credit
Validation Error
{- "data": {
- "id": "ASSET_ID",
- "customer_id": "CUSTOMER_ID",
- "primary_user_id": "CUSTOMER_ID",
- "args": { },
- "results": [
- "result_url1",
- "result_url2"
], - "thumbnails": [ ],
- "status": "success",
- "mime_type": "MIMETYPE",
- "app_name": "FUNCTION_NAME",
- "created_at": "2025-05-06 16:35:59.840508+00:00",
- "updated_at": "2025-05-06 16:35:59.840508+00:00",
- "history": [ ]
}
}
You can change aspect ratio of your input video.
import requests
url = "https://api.vimmerse.net/video/crop-to-aspect-ratio"
files=[
('video_file', ('video.mp4', open('/path/to/video.mp4','rb'), 'video.mp4'))
]
headers = {
'X-Api-Key': 'YOUR_API_KEY'
}
payload={
"aspect_ratio": "16:9"
}
response = requests.request("POST", url, headers=headers, data=payload, files=files)
print(response.text)
Change Video Aspect Ratio
Bad Request
Insufficient Credit
Validation Error
{- "data": {
- "id": "ASSET_ID",
- "customer_id": "CUSTOMER_ID",
- "primary_user_id": "CUSTOMER_ID",
- "args": { },
- "results": [
- "result_url1",
- "result_url2"
], - "thumbnails": [ ],
- "status": "success",
- "mime_type": "MIMETYPE",
- "app_name": "FUNCTION_NAME",
- "created_at": "2025-05-06 16:35:59.840508+00:00",
- "updated_at": "2025-05-06 16:35:59.840508+00:00",
- "history": [ ]
}
}
You can reframe your input video. Please reference this URL for more details.
import requests
url = "https://api.vimmerse.net/video/reframe"
files=[
('video_file', ('video.mp4', open('/path/to/video.mp4','rb'), 'video.mp4'))
]
headers = {
'X-Api-Key': 'YOUR_API_KEY'
}
payload={
"aspect_ratio": "16:9"
}
response = requests.request("POST", url, headers=headers, data=payload, files=files)
print(response.text)
Reframed Video
Bad Request
Insufficient Credit
Validation Error
{- "data": {
- "id": "ASSET_ID",
- "customer_id": "CUSTOMER_ID",
- "primary_user_id": "CUSTOMER_ID",
- "args": { },
- "results": [
- "result_url1",
- "result_url2"
], - "thumbnails": [ ],
- "status": "success",
- "mime_type": "MIMETYPE",
- "app_name": "FUNCTION_NAME",
- "created_at": "2025-05-06 16:35:59.840508+00:00",
- "updated_at": "2025-05-06 16:35:59.840508+00:00",
- "history": [ ]
}
}
You can get upscaled or better quality video.
import requests
url = "https://api.vimmerse.net/video/enhance"
files=[
('video_file', ('video.mp4', open('/path/to/video.mp4','rb'), 'video.mp4'))
]
headers = {
'X-Api-Key': 'YOUR_API_KEY'
}
payload={
'option': '4X&DeepClean'
}
response = requests.request("POST", url, headers=headers, data=payload, files=files)
print(response.text)
Enhance video
Bad Request
Insufficient Credit
Validation Error
{- "data": {
- "id": "ASSET_ID",
- "customer_id": "CUSTOMER_ID",
- "primary_user_id": "CUSTOMER_ID",
- "args": { },
- "results": [
- "result_url1",
- "result_url2"
], - "thumbnails": [ ],
- "status": "success",
- "mime_type": "MIMETYPE",
- "app_name": "FUNCTION_NAME",
- "created_at": "2025-05-06 16:35:59.840508+00:00",
- "updated_at": "2025-05-06 16:35:59.840508+00:00",
- "history": [ ]
}
}
You can add sound effect to video.
import requests
url = "https://api.vimmerse.net/video/sound-effect"
files=[
('video_file', ('video.mp4', open('/path/to/video.mp4','rb'), 'video.mp4'))
]
headers = {
'X-Api-Key': 'YOUR_API_KEY'
}
payload={
'prompt': 'Add ringtone from the phone.'
}
response = requests.request("POST", url, headers=headers, data=payload, files=files)
print(response.text)
Video with sound effect
Bad Request
Insufficient Credit
Validation Error
{- "data": {
- "id": "ASSET_ID",
- "customer_id": "CUSTOMER_ID",
- "primary_user_id": "CUSTOMER_ID",
- "args": { },
- "results": [
- "result_url1",
- "result_url2"
], - "thumbnails": [ ],
- "status": "success",
- "mime_type": "MIMETYPE",
- "app_name": "FUNCTION_NAME",
- "created_at": "2025-05-06 16:35:59.840508+00:00",
- "updated_at": "2025-05-06 16:35:59.840508+00:00",
- "history": [ ]
}
}
You can generate Lip-Sync video from selected avatar and voice.
avatar_id | string (Avatar ID) Default: "" You can get list of avatars from 'https://api.vimmerse.net/video/avatars/avatars?age_range=adult&gender=m&location=indoor' endpoint. You can also update or remove query parameters to filter avatars. |
voice_id | string (Voice ID) Default: "" You can get list of voices from 'https://api.vimmerse.net/video/avatars/voices' endpoint. |
prompt | string (Prompt) Default: "" Prompt of the speech. |
bg_image_file | string <binary> (Background Image) |
bg_image_url | string (Background Image URL) Default: "" |
audio_file | string <binary> (Background Audio) |
audio_url | string (Background Audio URL) Default: "" |
aspect_ratio | string (Aspect Ratio) Default: "16:9" Aspect ratio of your video. Available values are '1:1', '16:9' and '9:16'. |
show_caption | string (Show Caption) Default: "On" Available values are |
Lip Sync Video
Bad Request
Insufficient Credit
Validation Error
{- "data": {
- "id": "ASSET_ID",
- "customer_id": "CUSTOMER_ID",
- "primary_user_id": "CUSTOMER_ID",
- "args": { },
- "results": [
- "result_url1",
- "result_url2"
], - "thumbnails": [ ],
- "status": "success",
- "mime_type": "MIMETYPE",
- "app_name": "FUNCTION_NAME",
- "created_at": "2025-05-06 16:35:59.840508+00:00",
- "updated_at": "2025-05-06 16:35:59.840508+00:00",
- "history": [ ]
}
}
You can generate Lip-Sync video from image, video, audio and prompt.
You need to upload any of image, image_url or video, video_url to generate Lip-Sync Video. You also need to upload any of prompt, audio or audio_url to generate Lip-Sync Audio.
Lip Sync Video
Bad Request
Insufficient Credit
Validation Error
{- "data": {
- "id": "ASSET_ID",
- "customer_id": "CUSTOMER_ID",
- "primary_user_id": "CUSTOMER_ID",
- "args": { },
- "results": [
- "result_url1",
- "result_url2"
], - "thumbnails": [ ],
- "status": "success",
- "mime_type": "MIMETYPE",
- "app_name": "FUNCTION_NAME",
- "created_at": "2025-05-06 16:35:59.840508+00:00",
- "updated_at": "2025-05-06 16:35:59.840508+00:00",
- "history": [ ]
}
}
You can generate video effect from image(s) and effect prompt.
You need to upload any of image, image_url and select teh desired effect to generate video accordingly.
Video
Bad Request
Insufficient Credit
Validation Error
{- "data": {
- "id": "ASSET_ID",
- "customer_id": "CUSTOMER_ID",
- "primary_user_id": "CUSTOMER_ID",
- "args": { },
- "results": [
- "result_url1",
- "result_url2"
], - "thumbnails": [ ],
- "status": "success",
- "mime_type": "MIMETYPE",
- "app_name": "FUNCTION_NAME",
- "created_at": "2025-05-06 16:35:59.840508+00:00",
- "updated_at": "2025-05-06 16:35:59.840508+00:00",
- "history": [ ]
}
}
This api replaces video background with another video or image.
import requests
url = "https://api.vimmerse.net/video/replace-background"
payload = {
'video_url': 'https://path.to.your/main/video_file.mp4',
'bg_video_url': 'https://path.to.your/background/video_file.mp4'}
headers = {
'X-Api-Key': 'YOUR_API_KEY',
}
response = requests.request("POST", url, headers=headers, data=payload)
print(response.text)
video_file | string <binary> (Video input file) Input video file. |
video_url | string (Video input URL) Default: "" Input video URL. |
bg_image_file | string <binary> (Image input file) Input image file. |
bg_image_url | string (Image input URL) Default: "" Input image URL. |
bg_video_file | string <binary> (Background video file) Input video file. |
bg_video_url | string (Background video URL) Default: "" Input video URL. |
chroma_key_color | string (Chroma key color) Default: "origin" HTML color code of chroma key, use #FFFFFF for white, #80FF80 for green, #000000 for black, more codes can be found on https://htmlcolorcodes.com/. When set to 'origin', regular foreground masking is applied instead of chroma masking |
chroma_tolerance | string (Chroma tolerance) Default: "0.1" Tolerance percentage for the chroma color variations. A float string value between 0 and 1. |
overlay_scale | string (Overlay Scale) Default: "0.6666" The scale of the overlay with respect to the background. Should be a float string which is between 0 and 1 |
alignment | string (Alignment) Default: "center" Overlay Alignment. Available values are |
start_time | string (Start Time) Default: 0 The timestamp of the BG video to start the overlay on the it |
crop_to_content | boolean (Crop to content.) Default: true Crop the overlay video to its contents. |
x_offset | integer (X Offset) Default: 0 |
y_offset | integer (Y Offset) Default: 0 |
Replace Video Background.
Bad Request
Insufficient Credit
Validation Error
{- "data": {
- "id": "ASSET_ID",
- "customer_id": "CUSTOMER_ID",
- "primary_user_id": "CUSTOMER_ID",
- "args": { },
- "results": [
- "result_url1",
- "result_url2"
], - "thumbnails": [ ],
- "status": "success",
- "mime_type": "MIMETYPE",
- "app_name": "FUNCTION_NAME",
- "created_at": "2025-05-06 16:35:59.840508+00:00",
- "updated_at": "2025-05-06 16:35:59.840508+00:00",
- "history": [ ]
}
}
You can generate video from element images and prompt.
Video
Bad Request
Insufficient Credit
Validation Error
{- "data": {
- "id": "ASSET_ID",
- "customer_id": "CUSTOMER_ID",
- "primary_user_id": "CUSTOMER_ID",
- "args": { },
- "results": [
- "result_url1",
- "result_url2"
], - "thumbnails": [ ],
- "status": "success",
- "mime_type": "MIMETYPE",
- "app_name": "FUNCTION_NAME",
- "created_at": "2025-05-06 16:35:59.840508+00:00",
- "updated_at": "2025-05-06 16:35:59.840508+00:00",
- "history": [ ]
}
}
This API modifies a video with image and prompt-based editing
Modify Video
Bad Request
Insufficient Credit
Validation Error
{- "data": {
- "id": "ASSET_ID",
- "customer_id": "CUSTOMER_ID",
- "primary_user_id": "CUSTOMER_ID",
- "args": { },
- "results": [
- "result_url1",
- "result_url2"
], - "thumbnails": [ ],
- "status": "success",
- "mime_type": "MIMETYPE",
- "app_name": "FUNCTION_NAME",
- "created_at": "2025-05-06 16:35:59.840508+00:00",
- "updated_at": "2025-05-06 16:35:59.840508+00:00",
- "history": [ ]
}
}