A Rendi alternative. Same aliases, or JSON.
Your Rendi commands already name files as {{in_...}} and {{out_...}}; Videxo takes them almost as they are. You also get JSON operations, signed webhooks per job and an MCP server that runs jobs.
curl "$VIDEXO_API_URL/v1/jobs" \
-H "Authorization: Bearer $VIDEXO_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"input_files": {
"in_video": "https://videxo.io/samples/talk.mp4"
},
"output_files": {
"out_main": "talk-720p.mp4"
},
"command": "-i {{in_video}} -vf scale=-2:720 -c:v libx264 -crf 23 -c:a copy {{out_main}}",
"metadata": {
"order": "1234"
}
}' const response = await fetch(`${process.env.VIDEXO_API_URL}/v1/jobs`, {
method: 'POST',
headers: {
Authorization: `Bearer ${process.env.VIDEXO_API_KEY}`,
'Content-Type': 'application/json',
},
body: JSON.stringify({
"input_files": {
"in_video": "https://videxo.io/samples/talk.mp4"
},
"output_files": {
"out_main": "talk-720p.mp4"
},
"command": "-i {{in_video}} -vf scale=-2:720 -c:v libx264 -crf 23 -c:a copy {{out_main}}",
"metadata": {
"order": "1234"
}
}),
});
const job = await response.json(); Side by side
Videxo and Rendi. Checked on Nov 5, 2026.
| Topic | Videxo | Rendi |
|---|---|---|
| Before the first job | An API key as a Bearer token. No bucket, role or queue to create. | An API key in the X-API-KEY header. |
| How a job is described | JSON operations, or the ffmpeg command you already run, checked before the job is created. | An ffmpeg command with input_files and output_files aliases. |
| Where outputs go | Stored for your plan’s retention, 7 days to 30 days, with signed download links that last up to an hour. | Kept in Rendi storage until you delete them; public URLs, or presigned links on paid plans. |
| When a job ends | A webhook URL per job or endpoints on your account, signed in the Standard Webhooks format and retried for about a day. | One webhook URL set in the dashboard. |
| Streaming formats, live, DRM | Files in, files out. Adaptive streaming (HLS) and a player Soon | HLS and DASH playlist outputs. |
| AI assistants (MCP) | An MCP server that checks, runs and waits for jobs with your API key. | A docs MCP server that lets coding agents search the docs. |
| Company | BEO TECHNOLOGY sp. z o.o., Poland, in the European Union. | Rendi Ltd.; its terms apply the laws of Israel. |
Videxo
- Before the first job
- An API key as a Bearer token. No bucket, role or queue to create.
- How a job is described
- JSON operations, or the ffmpeg command you already run, checked before the job is created.
- Where outputs go
- Stored for your plan’s retention, 7 days to 30 days, with signed download links that last up to an hour.
- When a job ends
- A webhook URL per job or endpoints on your account, signed in the Standard Webhooks format and retried for about a day.
- Streaming formats, live, DRM
- Files in, files out. Adaptive streaming (HLS) and a player Soon
- AI assistants (MCP)
- An MCP server that checks, runs and waits for jobs with your API key.
- Company
- BEO TECHNOLOGY sp. z o.o., Poland, in the European Union.
Rendi
- Before the first job
- An API key in the X-API-KEY header.
- How a job is described
- An ffmpeg command with input_files and output_files aliases.
- Where outputs go
- Kept in Rendi storage until you delete them; public URLs, or presigned links on paid plans.
- When a job ends
- One webhook URL set in the dashboard.
- Streaming formats, live, DRM
- HLS and DASH playlist outputs.
- AI assistants (MCP)
- A docs MCP server that lets coding agents search the docs.
- Company
- Rendi Ltd.; its terms apply the laws of Israel.
Rendi, as its own pages said on Nov 5, 2026: Rendi pricing Quick start Run an ffmpeg command API introduction Webhooks Private files Coding agents Terms and conditions
Moving over
What each part is called here. One request per job.
Every job returns the ffmpeg command it ran, so you can compare the output with what you have today, one job at a time.
Migrating from Rendi, step by step| Rendi | Videxo |
|---|---|
| POST /v1/run-ffmpeg-command | POST /v1/jobs with input_files, output_files and command |
| ffmpeg_command with {{in_1}} and {{out_1}} | command with {{in_1}} and {{out_1}}, checked before it runs |
| command_id, polled | Job id: GET /v1/jobs/{id}, or wait for the webhook |
| Chained commands | Several outputs in one job, or one job per step |
| Dashboard webhook URL | A webhook_url per job and an account endpoint, both signed |
| storage_url | A signed download_url; outputs kept for your plan’s retention |
Honestly
When Rendi fits better. Pick it then.
- You want HLS or DASH playlists out of a command today.
- Outputs should stay stored until you delete them.
- Your commands run longer than the longest job on our plans.
Questions, answered.
What are the limits?
On Pay as you go a job runs up to 10 min of ffmpeg with inputs up to 1 GB; on Scale up to 60 min with inputs up to 10 GB. Uploads from apps and browsers go up to 100 MB.
Which ffmpeg and which codecs?
ffmpeg 6.1.1, with H.264, H.265, VP8, VP9 and AV1 video, and AAC, MP3, Opus, FLAC and WAV audio, among others. The command rules list every option, filter and format a command can use.
Can I send my own ffmpeg command?
Yes. POST /v1/jobs takes input URLs, output names and an ffmpeg command that names files by alias. It is checked before the job exists; a refused command answers with a code for each problem and costs nothing.
How long are the files kept?
Outputs stay for your plan’s retention. Each download link is signed and lasts up to one hour; read the job again for a fresh one, or delete the files sooner with DELETE /v1/jobs/{id}/files.
How do I know a webhook came from you?
Each delivery is signed with your account’s secret in the Standard Webhooks format. Verify it with the standardwebhooks library or a few lines of code; the docs show both.
Who runs Videxo?
BEO TECHNOLOGY sp. z o.o., a limited company in Poland, in the European Union. Write to hello@videxo.io.