---
title: FFmpeg | Runware Docs
url: https://runware.ai/docs/models/ffmpeg
description: Raw FFmpeg processing for video, audio and image files
---
# FFmpeg

![FFmpeg](https://assets.runware.ai/covers/ffmpeg.jpg)

FFmpeg is a media processing tool that runs one FFmpeg command over files you pass by URL and returns a single output file. It takes up to 10 video, audio or image inputs and accepts raw input options, output options, filter graphs and stream maps. It fits transcoding, trimming, scaling, overlays, audio extraction and format conversion between generation steps.

- **Status**: live
- **ID**: `runware:ffmpeg@0`
- Try in Playground
- **Release Date**: December 20, 2000
- **Capabilities**: Media Process

## Request Parameters

**API Options**

Platform-level options for task execution and delivery.

### [taskType](https://runware.ai/docs/models/ffmpeg#request-tasktype)

- **Type**: `string`
- **Required**: true
- **Value**: `tools`

Identifier for the type of task being performed.

### [taskUUID](https://runware.ai/docs/models/ffmpeg#request-taskuuid)

- **Type**: `string`
- **Required**: true
- **Format**: `UUID v4`

UUID v4 identifier for tracking tasks and matching async responses. Must be unique per task.

### [webhookURL](https://runware.ai/docs/models/ffmpeg#request-webhookurl)

- **Type**: `string`
- **Format**: `uri`

Webhook URL that receives JSON responses via HTTP POST when generation tasks complete. For batch requests with multiple results, each completed item triggers a separate webhook call as it becomes available.

**Learn more** (1 resource):

- [Webhooks](https://runware.ai/docs/models-api/webhooks) (platform)

### [deliveryMethod](https://runware.ai/docs/models/ffmpeg#request-deliverymethod)

- **Type**: `string`
- **Default**: `sync`

Determines how the API delivers task results.

**Allowed values**:

- `sync` Returns complete results directly in the API response.
- `async` Returns an immediate acknowledgment with the task UUID. Poll for results using getResponse.

**Learn more** (1 resource):

- [Task Polling](https://runware.ai/docs/models-api/task-polling) (platform)

### [ttl](https://runware.ai/docs/models/ffmpeg#request-ttl)

- **Type**: `integer`
- **Min**: `60`

Time-to-live (TTL) in seconds for the output files.

### [includeCost](https://runware.ai/docs/models/ffmpeg#request-includecost)

- **Type**: `boolean`

Include task cost in the response.

**Inputs**

Input resources for the task (images, audio, etc). These must be nested inside the \`inputs\` object.

### [media](https://runware.ai/docs/models/ffmpeg#request-inputs-media)

- **Path**: `inputs.media`
- **Type**: `array of objects (2 properties)`
- **Required**: true
- **Min items**: `1`
- **Max items**: `10`
- **File size (each)**: `up to 5 GB`

Ordered list of video, audio or image inputs. The position of each item is the FFmpeg input index that `settings.filterComplex` and `settings.maps` reference.

#### [options](https://runware.ai/docs/models/ffmpeg#request-inputs-media-options)

- **Path**: `inputs.media.options`
- **Type**: `array of strings`

Raw FFmpeg input options placed before this input, one token per element. `-i` is not accepted.

#### [url](https://runware.ai/docs/models/ffmpeg#request-inputs-media-url)

- **Path**: `inputs.media.url`
- **Type**: `string`
- **Required**: true

Publicly accessible URL of the input file. UUIDs are not supported.

**Core Parameters**

Primary parameters that define the task output.

### [outputFormat](https://runware.ai/docs/models/ffmpeg#request-outputformat)

- **Type**: `string`
- **Default**: `MP4`

File format for the output file. Image formats return a single frame.

**Allowed values**: `MP4` `WEBM` `MOV` `MKV` `MP3` `WAV` `AAC` `FLAC` `OGG` `PNG` `JPG` `WEBP`

### [model](https://runware.ai/docs/models/ffmpeg#request-model)

- **Type**: `string`
- **Required**: true
- **Value**: `runware:ffmpeg@0`

Identifier of the tool to run.

**Learn more** (3 resources):

- [Text To Image: Model Selection](https://runware.ai/docs/learn/text-to-image#model-selection) (learn)
- [Image Inpainting: Model Specialized Inpainting Models](https://runware.ai/docs/learn/image-inpainting#model-specialized-inpainting-models) (learn)
- [Image Outpainting: Other Critical Parameters](https://runware.ai/docs/learn/image-outpainting#other-critical-parameters) (learn)

**Settings**

Technical parameters to fine-tune the inference process. These must be nested inside the \`settings\` object.

### [filterComplex](https://runware.ai/docs/models/ffmpeg#request-settings-filtercomplex)

- **Path**: `settings.filterComplex`
- **Type**: `string`

Raw FFmpeg `-filter_complex` graph. Inputs are referenced by their index in `inputs.media`.

### [maps](https://runware.ai/docs/models/ffmpeg#request-settings-maps)

- **Path**: `settings.maps`
- **Type**: `array of strings`

Streams written to the output file (`-map`), as filter labels from `settings.filterComplex` or `input:stream` specifiers. FFmpeg selects the streams when omitted.

### [outputOptions](https://runware.ai/docs/models/ffmpeg#request-settings-outputoptions)

- **Path**: `settings.outputOptions`
- **Type**: `array of strings`

Raw FFmpeg output options, one token per element. `-i`, `-attach` and `-progress` are not accepted. Must produce a single file, so `-f` followed by `hls`, `segment`, `dash` or `image2` is not accepted.

## Response Parameters

### [taskType](https://runware.ai/docs/models/ffmpeg#response-tasktype)

- **Type**: `string`
- **Required**: true
- **Value**: `tools`

Identifier for the type of task this response belongs to.

### [taskUUID](https://runware.ai/docs/models/ffmpeg#response-taskuuid)

- **Type**: `string`
- **Required**: true
- **Format**: `UUID v4`

UUID v4 identifier echoed from the original request, used to match async responses to their tasks.

### [cost](https://runware.ai/docs/models/ffmpeg#response-cost)

- **Type**: `float`

Task cost in USD. Present when `includeCost` is set to `true` in the request.

### [outputs](https://runware.ai/docs/models/ffmpeg#response-outputs)

- **Path**: `outputs.files`
- **Type**: `object (3 properties)`
- **Required**: true

Generated output artifacts.

#### [files](https://runware.ai/docs/models/ffmpeg#response-outputs-files)

- **Path**: `outputs.files`
- **Type**: `array of objects (2 properties)`
- **Required**: true
- **Min items**: `1`

Generated output files.

##### [uuid](https://runware.ai/docs/models/ffmpeg#response-outputs-files-uuid)

- **Path**: `outputs.files.uuid`
- **Type**: `string`
- **Required**: true
- **Format**: `UUID v4`

UUID of the output file.

##### [url](https://runware.ai/docs/models/ffmpeg#response-outputs-files-url)

- **Path**: `outputs.files.url`
- **Type**: `string`
- **Required**: true
- **Format**: `uri`

URL of the output file.