Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions changelog/2026-03-20.mdx
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
title: "Documentation site launch, 2026-03-20"
description: "View the initial docs launch with the raw.ffmpeg reference, webhook guide, and MCP integration docs. Powered by Mintlify with AI-optimized content."
description: "View the initial docs launch with the FFmpeg reference, webhook guide, and MCP integration docs. Powered by Mintlify with AI-optimized content."
icon: "sparkles"
keywords: ["rendobar changelog", "rendobar releases", "docs launch", "rendobar 2026"]
---
Expand All @@ -13,7 +13,7 @@ keywords: ["rendobar changelog", "rendobar releases", "docs launch", "rendobar 2
"@type": "TechArticle",
"@id": "https://rendobar.com/docs/changelog/2026-03-20/#article",
"headline": "Documentation site launch, 2026-03-20",
"description": "Initial docs launch: raw.ffmpeg reference, webhook guide, and MCP integration docs.",
"description": "Initial docs launch: FFmpeg reference, webhook guide, and MCP integration docs.",
"datePublished": "2026-03-20",
"dateModified": "2026-05-24",
"author": { "@type": "Organization", "@id": "https://rendobar.com/#organization" },
Expand All @@ -24,13 +24,13 @@ keywords: ["rendobar changelog", "rendobar releases", "docs launch", "rendobar 2
/>

<Update label="2026-03-20" description="Docs site live">
Rendobar documentation is now live at [rendobar.com/docs](https://rendobar.com/docs). Includes the [`raw.ffmpeg` reference](/job-types/raw-ffmpeg), a [webhooks guide](/guides/webhooks), and [MCP integration docs](/mcp/overview) for AI agents. The site is powered by Mintlify with an interactive API playground and AI-optimized content.
Rendobar documentation is now live at [rendobar.com/docs](https://rendobar.com/docs). Includes the [`ffmpeg` reference](/job-types/ffmpeg), a [webhooks guide](/guides/webhooks), and [MCP integration docs](/mcp/overview) for AI agents. The site is powered by Mintlify with an interactive API playground and AI-optimized content.
</Update>

## Related

- [Quickstart](/quickstart): submit your first job in under five minutes
- [raw.ffmpeg reference](/job-types/raw-ffmpeg): the live job type and its parameters
- [FFmpeg reference](/job-types/ffmpeg): the live job type and its parameters
- [MCP overview](/mcp/overview): connect any MCP-compatible agent to Rendobar
- [Full release history](https://rendobar.com/changelog/): every shipped update on the marketing site
- [Pricing](https://rendobar.com/pricing/): Free vs Pro and credit packs
4 changes: 2 additions & 2 deletions cli/ci-cd.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -159,7 +159,7 @@ sudo mv rb /usr/local/bin/rb

## Idempotency

The CLI does not expose `--idempotency-key`. If a retried CI step shouldn't double-charge, submit via the [SDK](https://www.npmjs.com/package/@rendobar/sdk) or [`POST /jobs`](/job-types/raw-ffmpeg) directly with an `idempotencyKey` field.
The CLI does not expose `--idempotency-key`. If a retried CI step shouldn't double-charge, submit via the [SDK](https://www.npmjs.com/package/@rendobar/sdk) or [`POST /jobs`](/job-types/ffmpeg) directly with an `idempotencyKey` field.

## See also

Expand All @@ -173,5 +173,5 @@ The CLI does not expose `--idempotency-key`. If a retried CI step shouldn't doub
- [CLI overview](/cli/overview): pick between CLI, SDK, and raw HTTP
- [Authentication](/cli/authentication): `RENDOBAR_API_KEY` as the only CI-safe auth path
- [Commands reference](/cli/commands): exit codes for boolean assertions
- [raw.ffmpeg reference](/job-types/raw-ffmpeg): the API the CLI invokes per run
- [FFmpeg reference](/job-types/ffmpeg): the API the CLI invokes per run
- [Changelog](https://rendobar.com/changelog/): pin a release tag with confidence
2 changes: 1 addition & 1 deletion cli/commands.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -188,5 +188,5 @@ Exits `2` if not authenticated, `1` if the API call fails.
- [CLI overview](/cli/overview): narrative quickstart for `rb ffmpeg`
- [Authentication](/cli/authentication): `rb login` flow and credential storage
- [CI/CD](/cli/ci-cd): parse `--json` output and authenticate from a secret
- [raw.ffmpeg reference](/job-types/raw-ffmpeg): the underlying API call
- [FFmpeg reference](/job-types/ffmpeg): the underlying API call
- [Changelog](https://rendobar.com/changelog/): release notes for every `rb` version
8 changes: 4 additions & 4 deletions cli/overview.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ rb login
rb ffmpeg -i input.mp4 -vf scale=1280:720 -c:v libx264 -crf 23 output.mp4
```

The binary is called `rb`. It auto-uploads local inputs, submits a [`raw.ffmpeg`](/job-types/raw-ffmpeg) job, and downloads the result to the path your `ffmpeg` command names.
The binary is called `rb`. It auto-uploads local inputs, submits an [`ffmpeg`](/job-types/ffmpeg) job, and downloads the result to the path your `ffmpeg` command names.

## CLI or SDK

Expand All @@ -45,7 +45,7 @@ The binary is called `rb`. It auto-uploads local inputs, submits a [`raw.ffmpeg`
| A shell or CI script | CLI |
| A Node.js / TypeScript program | [SDK](https://www.npmjs.com/package/@rendobar/sdk) |

The CLI covers `raw.ffmpeg` and the auth + diagnostics around it. The SDK covers every endpoint with typed responses, webhooks, and batch orchestration.
The CLI covers `ffmpeg` and the auth + diagnostics around it. The SDK covers every endpoint with typed responses, webhooks, and batch orchestration.

## Install

Expand Down Expand Up @@ -82,7 +82,7 @@ rb ffmpeg -i ./clip.mp4 -vf scale=1280:720 -c:v libx264 -crf 23 out.mp4

## Scope

The CLI does one thing: run FFmpeg jobs. It does not bundle filter chaining, batch primitives, or the other [job types](/job-types/raw-ffmpeg). Submit those via the [SDK](https://www.npmjs.com/package/@rendobar/sdk) or [`POST /jobs`](/job-types/raw-ffmpeg).
The CLI does one thing: run FFmpeg jobs. It does not bundle filter chaining, batch primitives, or the other [job types](/job-types/ffmpeg). Submit those via the [SDK](https://www.npmjs.com/package/@rendobar/sdk) or [`POST /jobs`](/job-types/ffmpeg).

## See also

Expand All @@ -97,5 +97,5 @@ The CLI does one thing: run FFmpeg jobs. It does not bundle filter chaining, bat
- [Installation](/cli/installation): one-line install, pin a version, Docker, uninstall
- [Commands reference](/cli/commands): every `rb` subcommand, flag, and exit code
- [CI/CD](/cli/ci-cd): GitHub Actions, GitLab CI, and Docker recipes
- [raw.ffmpeg reference](/job-types/raw-ffmpeg): the API the CLI calls under the hood
- [FFmpeg reference](/job-types/ffmpeg): the API the CLI calls under the hood
- [FFmpeg in the cloud](https://rendobar.com/ffmpeg/): supported operations on the marketing site
6 changes: 3 additions & 3 deletions concepts/credits.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ Per-job billing from a prepaid credit balance. New accounts get $5 free. Every t
| Output retention | 7 days | 30 days |
| Priority queue | No | Yes |

`raw.ffmpeg`, MCP, and webhooks are on both plans. Full limits table: [Limits](/support/limits).
`ffmpeg`, MCP, and webhooks are on both plans. Full limits table: [Limits](/support/limits).

For a full pricing breakdown and plan comparison, see [rendobar.com/pricing/](https://rendobar.com/pricing/).

Expand Down Expand Up @@ -69,7 +69,7 @@ Because the submit gate checks `balance > 0` rather than an estimate, a single l

## Cost model

`raw.ffmpeg` bills per compute second, which is the wall-clock time FFmpeg ran your command, excluding upload and download. Typical cost: ~$0.05/min. The same per-second rate applies whether the job completes successfully or fails partway through.
`ffmpeg` bills per compute second, which is the wall-clock time FFmpeg ran your command, excluding upload and download. Typical cost: ~$0.05/min. The same per-second rate applies whether the job completes successfully or fails partway through.

If your balance is at or below zero when you submit:

Expand Down Expand Up @@ -117,7 +117,7 @@ Returns daily usage by job type: count, amount charged, and compute seconds.

- [Job lifecycle](/concepts/job-lifecycle): where the debit happens
- [Limits](/support/limits): full quota table
- [raw.ffmpeg reference](/job-types/raw-ffmpeg): the live cost model
- [FFmpeg reference](/job-types/ffmpeg): the live cost model

## Related

Expand Down
2 changes: 1 addition & 1 deletion concepts/job-lifecycle.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -96,5 +96,5 @@ Two ways to stop polling:
- [Webhooks](/guides/webhooks): push status changes to your server instead of polling
- [Credits and billing](/concepts/credits): when and how the terminal debit lands
- [Error codes](/support/errors): every `error.code` returned by failed jobs
- [Raw FFmpeg](/guides/raw-ffmpeg): what runs between `dispatched` and `complete`
- [FFmpeg](/guides/ffmpeg): what runs between `dispatched` and `complete`
- [Changelog](https://rendobar.com/changelog/): platform changes that affect job behavior
12 changes: 10 additions & 2 deletions docs.json
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@
{
"group": "Guides",
"pages": [
"guides/raw-ffmpeg",
"guides/ffmpeg",
"guides/webhooks"
]
},
Expand All @@ -59,7 +59,7 @@
{
"group": "Reference",
"pages": [
"job-types/raw-ffmpeg",
"job-types/ffmpeg",
"job-types/captions-animate",
"job-types/caption-burn"
]
Expand Down Expand Up @@ -120,6 +120,14 @@
{
"source": "/guides/captions",
"destination": "/job-types/captions-animate"
},
{
"source": "/job-types/raw-ffmpeg",
"destination": "/job-types/ffmpeg"
},
{
"source": "/guides/raw-ffmpeg",
"destination": "/guides/ffmpeg"
}
],
"navbar": {
Expand Down
28 changes: 14 additions & 14 deletions guides/raw-ffmpeg.mdx → guides/ffmpeg.mdx
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
---
title: "Raw FFmpeg guide"
sidebarTitle: "Raw FFmpeg"
title: "FFmpeg command guide"
sidebarTitle: "FFmpeg"
description: "Run any FFmpeg command in the cloud. ~120 whitelisted flags, 8-layer sandboxed execution, signed download URL. Same FFmpeg syntax you know."
icon: "terminal"
keywords: ["ffmpeg guide", "ffmpeg in cloud", "ffmpeg sandboxed execution", "ffmpeg flags whitelist", "raw ffmpeg api"]
keywords: ["ffmpeg guide", "ffmpeg in cloud", "ffmpeg sandboxed execution", "ffmpeg flags whitelist", "ffmpeg command api"]
---

<script
Expand All @@ -12,8 +12,8 @@ keywords: ["ffmpeg guide", "ffmpeg in cloud", "ffmpeg sandboxed execution", "ffm
__html: JSON.stringify({
"@context": "https://schema.org",
"@type": "TechArticle",
"@id": "https://rendobar.com/docs/guides/raw-ffmpeg/#article",
"headline": "Raw FFmpeg guide",
"@id": "https://rendobar.com/docs/guides/ffmpeg/#article",
"headline": "FFmpeg command guide",
"description": "Run any FFmpeg command in the cloud. Whitelisted flags, sandboxed execution, signed download URL. Same FFmpeg syntax you already know.",
"datePublished": "2026-03-20",
"dateModified": "2026-05-24",
Expand All @@ -31,7 +31,7 @@ curl -X POST https://api.rendobar.com/jobs \
-H "Authorization: Bearer rb_YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{
"type": "raw.ffmpeg",
"type": "ffmpeg",
"inputs": {},
"params": {
"command": "ffmpeg -i https://example.com/video.mp4 -vf scale=1280:720 -c:v libx264 -crf 23 output.mp4"
Expand All @@ -56,7 +56,7 @@ From a shell? Use [the CLI](/cli/overview): `rb ffmpeg -i input.mp4 -vf scale=12

| Field | Type | Required | Default | Notes |
|---|---|---|---|---|
| `type` | string | yes | - | `"raw.ffmpeg"` |
| `type` | string | yes | - | `"ffmpeg"` |
| `inputs` | object | yes | - | `{}` when URLs are inline in the command. Otherwise a name→URL map matching filenames in the command |
| `params.command` | string | yes | - | Real FFmpeg command starting with `ffmpeg`. Input URLs go in `-i` positions |
| `params.outputFormat` | string | no | inferred | Override container format. Inferred from trailing filename if omitted |
Expand Down Expand Up @@ -121,7 +121,7 @@ Plan timeouts: 5 min (Free), 15 min (Pro). See [plan limits](/support/limits) fo

```json
{
"type": "raw.ffmpeg",
"type": "ffmpeg",
"inputs": {},
"params": {
"command": "ffmpeg -i https://example.com/video.mp4 -vf scale=1280:720 -c:v libx264 -preset fast -crf 23 output.mp4"
Expand All @@ -133,7 +133,7 @@ Plan timeouts: 5 min (Free), 15 min (Pro). See [plan limits](/support/limits) fo

```json
{
"type": "raw.ffmpeg",
"type": "ffmpeg",
"inputs": {},
"params": {
"command": "ffmpeg -i https://example.com/video.mp4 -vn -c:a aac -b:a 128k output.m4a"
Expand All @@ -145,7 +145,7 @@ Plan timeouts: 5 min (Free), 15 min (Pro). See [plan limits](/support/limits) fo

```json
{
"type": "raw.ffmpeg",
"type": "ffmpeg",
"inputs": {},
"params": {
"command": "ffmpeg -i https://example.com/video.mp4 -ss 00:01:00 -t 00:00:30 -c:v libx264 -c:a aac output.mp4"
Expand All @@ -157,7 +157,7 @@ Plan timeouts: 5 min (Free), 15 min (Pro). See [plan limits](/support/limits) fo

```json
{
"type": "raw.ffmpeg",
"type": "ffmpeg",
"inputs": {},
"params": {
"command": "ffmpeg -i https://example.com/video.mp4 -i https://example.com/narration.mp3 -c:v libx264 -c:a aac -map 0:v -map 1:a output.mp4"
Expand All @@ -176,14 +176,14 @@ FFmpeg exits non-zero → job fails with `PROVIDER_ERROR`:
Disallowed flag → rejected before dispatch with `VALIDATION_ERROR`:

```json
{ "error": { "code": "VALIDATION_ERROR", "message": "Flag '-protocol_whitelist' is not allowed in raw FFmpeg commands" } }
{ "error": { "code": "VALIDATION_ERROR", "message": "Flag '-protocol_whitelist' is not allowed in FFmpeg commands" } }
```

Full error catalogue: [Error codes](/support/errors).

## See also

- [raw.ffmpeg reference](/job-types/raw-ffmpeg)
- [FFmpeg reference](/job-types/ffmpeg)
- [CLI](/cli/overview)
- [Webhooks](/guides/webhooks): push instead of poll
- [Credits and billing](/concepts/credits)
Expand All @@ -192,7 +192,7 @@ For a full list of FFmpeg-based operations supported by the API, see [rendobar.c

## Related

- [raw.ffmpeg reference](/job-types/raw-ffmpeg): typed parameters, response shape, plan caps
- [FFmpeg reference](/job-types/ffmpeg): typed parameters, response shape, plan caps
- [CLI overview](/cli/overview): run the same job from your terminal with `rb ffmpeg`
- [Error codes](/support/errors): `VALIDATION_ERROR`, `PROVIDER_ERROR`, `PROVIDER_TIMEOUT`
- [Webhooks](/guides/webhooks): receive `job.completed` instead of polling
Expand Down
4 changes: 2 additions & 2 deletions guides/webhooks.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -174,14 +174,14 @@ curl https://api.rendobar.com/webhook-endpoints/YOUR_ENDPOINT_ID/deliveries \
## See also

- [Job lifecycle](/concepts/job-lifecycle)
- [Raw FFmpeg](/guides/raw-ffmpeg)
- [FFmpeg](/guides/ffmpeg)
- [Error codes](/support/errors)
- [MCP](/mcp/overview): alternative push channel for AI agents

## Related

- [Job lifecycle](/concepts/job-lifecycle): what each status means before `job.completed` fires
- [Error codes](/support/errors): codes you'll see inside `job.failed` payloads
- [Raw FFmpeg](/guides/raw-ffmpeg): the job type that drives most webhook traffic
- [FFmpeg](/guides/ffmpeg): the job type that drives most webhook traffic
- [MCP overview](/mcp/overview): alternative push channel for AI agent clients
- [Changelog](https://rendobar.com/changelog/): webhook payload changes and new events
5 changes: 3 additions & 2 deletions job-types/caption-burn.mdx
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
---
title: "caption.burn"
description: "Permanently burn styled subtitles into a video from an SRT, VTT, or ASS file, or auto-transcribe in any language. Web-hex styling, deterministic sizing."
title: "Burn captions into a video"
sidebarTitle: "caption.burn"
description: "Burn styled subtitles into a video from an SRT, VTT, or ASS file, or auto-transcribe in any language. Web-hex styling, deterministic sizing."
icon: "closed-captioning"
tag: "Live"
---
Expand Down
2 changes: 1 addition & 1 deletion job-types/captions-animate.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -133,6 +133,6 @@ $0.10 per input minute. Billed against your [credit balance](/concepts/credits)

- [Job lifecycle](/concepts/job-lifecycle): the six statuses captioning jobs move through
- [Credits and billing](/concepts/credits): how the per-minute charge debits your balance
- [raw.ffmpeg](/job-types/raw-ffmpeg): the lower-level job for custom subtitle workflows
- [ffmpeg](/job-types/ffmpeg): the lower-level job for custom subtitle workflows
- [Webhooks](/guides/webhooks): get `job.completed` instead of polling captioning jobs
- [Caption-styling features](https://rendobar.com/features/): every preset and visual option
20 changes: 10 additions & 10 deletions job-types/raw-ffmpeg.mdx → job-types/ffmpeg.mdx
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
---
title: "raw.ffmpeg reference"
sidebarTitle: "raw.ffmpeg"
title: "FFmpeg reference"
sidebarTitle: "FFmpeg"
description: "Execute a custom FFmpeg command via API with ~120 whitelisted flags, sandboxed execution, and signed output URL. Live on all plans, ~$0.05/min."
icon: "terminal"
tag: "Live"
keywords: ["raw ffmpeg", "ffmpeg api reference", "ffmpeg cloud", "ffmpeg sandboxed", "ffmpeg rest api"]
keywords: ["ffmpeg api reference", "ffmpeg cloud", "ffmpeg sandboxed", "ffmpeg rest api", "ffmpeg command api"]
---

<script
Expand All @@ -13,8 +13,8 @@ keywords: ["raw ffmpeg", "ffmpeg api reference", "ffmpeg cloud", "ffmpeg sandbox
__html: JSON.stringify({
"@context": "https://schema.org",
"@type": "TechArticle",
"@id": "https://rendobar.com/docs/job-types/raw-ffmpeg/#article",
"headline": "raw.ffmpeg reference",
"@id": "https://rendobar.com/docs/job-types/ffmpeg/#article",
"headline": "FFmpeg reference",
"description": "Execute a custom FFmpeg command with whitelisted flags, sandboxed execution, and signed output URL. Live on all plans.",
"datePublished": "2026-03-20",
"dateModified": "2026-05-24",
Expand Down Expand Up @@ -44,7 +44,7 @@ curl -X POST https://api.rendobar.com/jobs \
-H "Authorization: Bearer rb_YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{
"type": "raw.ffmpeg",
"type": "ffmpeg",
"inputs": {},
"params": {
"command": "ffmpeg -i https://cdn.rendobar.com/assets/examples/sample.mp4 -vf scale=1280:720 -c:v libx264 -crf 23 -preset fast output.mp4"
Expand All @@ -60,7 +60,7 @@ const res = await fetch("https://api.rendobar.com/jobs", {
"Content-Type": "application/json",
},
body: JSON.stringify({
type: "raw.ffmpeg",
type: "ffmpeg",
inputs: {},
params: {
command: "ffmpeg -i https://cdn.rendobar.com/assets/examples/sample.mp4 -vf scale=1280:720 -c:v libx264 -crf 23 -preset fast output.mp4",
Expand All @@ -76,7 +76,7 @@ res = requests.post(
"https://api.rendobar.com/jobs",
headers={"Authorization": "Bearer rb_YOUR_KEY"},
json={
"type": "raw.ffmpeg",
"type": "ffmpeg",
"inputs": {},
"params": {
"command": "ffmpeg -i https://cdn.rendobar.com/assets/examples/sample.mp4 -vf scale=1280:720 -c:v libx264 -crf 23 -preset fast output.mp4",
Expand Down Expand Up @@ -111,13 +111,13 @@ Poll `GET /jobs/{id}` until `status: "complete"`, then read `outputUrl` (signed,

## See also

- [Raw FFmpeg guide](/guides/raw-ffmpeg): security model, allowed flags, examples
- [FFmpeg guide](/guides/ffmpeg): security model, allowed flags, examples
- [CLI](/cli/overview): same job, terminal interface
- [Job lifecycle](/concepts/job-lifecycle)

## Related

- [Raw FFmpeg guide](/guides/raw-ffmpeg): security layers, allowed flags, worked examples
- [FFmpeg guide](/guides/ffmpeg): security layers, allowed flags, worked examples
- [CLI overview](/cli/overview): the same job from your terminal with `rb ffmpeg`
- [Credits and billing](/concepts/credits): per-compute-second pricing detail
- [Plan limits](/support/limits): file-size caps, timeouts, and concurrency per plan
Expand Down
Loading
Loading