FFmpeg
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.

API Reference
INTEGRATE
Complete technical specification for integration
RequestResponse
Examples4
CODE
Ready-to-use code snippets for common workflows
media-process
Perfume Campaign Retouching Still$0.000099~12s
import { createClient } from '@runware/sdk'
const client = await createClient({ apiKey: process.env.RUNWARE_API_KEY })
await client.connect()
const [result] = await client.run({
outputFormat: 'PNG',
model: 'runware:ffmpeg@0',
settings: {
maps: [
'0:v:0'
],
outputOptions: [
'-frames:v',
'1'
]
},
inputs: {
media: [
{
url: 'https://assets.runware.ai/assets/inputs/6e3abfa5-5010-4d1b-bbfb-6ba5779133ed.mp4'
}
]
}
})import asyncio
import os
from runware import Runware
async def main():
async with Runware(api_key=os.environ["RUNWARE_API_KEY"]) as client:
results = await client.run({
"outputFormat": "PNG",
"model": "runware:ffmpeg@0",
"settings": {
"maps": [
"0:v:0"
],
"outputOptions": [
"-frames:v",
"1"
]
},
"inputs": {
"media": [
{
"url": "https://assets.runware.ai/assets/inputs/6e3abfa5-5010-4d1b-bbfb-6ba5779133ed.mp4"
}
]
}
})
asyncio.run(main())curl https://api.runware.ai/v1 \
-H "Authorization: Bearer $RUNWARE_API_KEY" \
-H "Content-Type: application/json" \
-d '[
{
"taskType": "tools",
"taskUUID": "34d9cee5-1115-4f7c-b7b7-de8ff4f57827",
"outputFormat": "PNG",
"model": "runware:ffmpeg@0",
"settings": {
"maps": [
"0:v:0"
],
"outputOptions": [
"-frames:v",
"1"
]
},
"inputs": {
"media": [
{
"url": "https://assets.runware.ai/assets/inputs/6e3abfa5-5010-4d1b-bbfb-6ba5779133ed.mp4"
}
]
}
}
]'runware run runware:ffmpeg@0 \
outputFormat=PNG \
settings.maps.0=0:v:0 \
settings.outputOptions.0=-frames:v \
settings.outputOptions.1=1 \
inputs.media.0.url=https://assets.runware.ai/assets/inputs/6e3abfa5-5010-4d1b-bbfb-6ba5779133ed.mp4{
"taskType": "tools",
"taskUUID": "34d9cee5-1115-4f7c-b7b7-de8ff4f57827",
"outputFormat": "PNG",
"model": "runware:ffmpeg@0",
"settings": {
"maps": [
"0:v:0"
],
"outputOptions": [
"-frames:v",
"1"
]
},
"inputs": {
"media": [
{
"url": "https://assets.runware.ai/assets/inputs/6e3abfa5-5010-4d1b-bbfb-6ba5779133ed.mp4"
}
]
}
}Response
{
"taskType": "tools",
"taskUUID": "34d9cee5-1115-4f7c-b7b7-de8ff4f57827",
"cost": 0.000099,
"outputs": {
"files": [
{
"uuid": "ad226dea-c4ee-4b43-bf66-545b6e702fcd",
"url": "https://mm.runware.ai/media-storage/ws/10/id/ad226dea-c4ee-4b43-bf66-545b6e702fcd.png"
}
]
}
}media-process
Documentary Interview Dialogue Stem$0.000063~10simport { createClient } from '@runware/sdk'
const client = await createClient({ apiKey: process.env.RUNWARE_API_KEY })
await client.connect()
const [result] = await client.run({
model: 'runware:ffmpeg@0',
settings: {
maps: [
'0:a:0'
]
},
inputs: {
media: [
{
url: 'https://assets.runware.ai/assets/inputs/9234c25c-9627-407f-9d5c-c95c89dcf71f.mp4'
}
]
}
})import asyncio
import os
from runware import Runware
async def main():
async with Runware(api_key=os.environ["RUNWARE_API_KEY"]) as client:
results = await client.run({
"model": "runware:ffmpeg@0",
"settings": {
"maps": [
"0:a:0"
]
},
"inputs": {
"media": [
{
"url": "https://assets.runware.ai/assets/inputs/9234c25c-9627-407f-9d5c-c95c89dcf71f.mp4"
}
]
}
})
asyncio.run(main())curl https://api.runware.ai/v1 \
-H "Authorization: Bearer $RUNWARE_API_KEY" \
-H "Content-Type: application/json" \
-d '[
{
"taskType": "tools",
"taskUUID": "3e4e410c-7338-448e-a3ad-a81039d3c30e",
"model": "runware:ffmpeg@0",
"settings": {
"maps": [
"0:a:0"
]
},
"inputs": {
"media": [
{
"url": "https://assets.runware.ai/assets/inputs/9234c25c-9627-407f-9d5c-c95c89dcf71f.mp4"
}
]
}
}
]'runware run runware:ffmpeg@0 \
settings.maps.0=0:a:0 \
inputs.media.0.url=https://assets.runware.ai/assets/inputs/9234c25c-9627-407f-9d5c-c95c89dcf71f.mp4{
"taskType": "tools",
"taskUUID": "3e4e410c-7338-448e-a3ad-a81039d3c30e",
"model": "runware:ffmpeg@0",
"settings": {
"maps": [
"0:a:0"
]
},
"inputs": {
"media": [
{
"url": "https://assets.runware.ai/assets/inputs/9234c25c-9627-407f-9d5c-c95c89dcf71f.mp4"
}
]
}
}Response
{
"taskType": "tools",
"taskUUID": "3e4e410c-7338-448e-a3ad-a81039d3c30e",
"cost": 0.000063,
"outputs": {
"files": [
{
"uuid": "a09cd2f4-97d5-4c96-845f-de64b7970397",
"url": "https://mm.runware.ai/media-storage/ws/10/id/a09cd2f4-97d5-4c96-845f-de64b7970397.mp4"
}
]
}
}media-process
Boutique Hotel Social Reel Assembly$0.00335~24simport { createClient } from '@runware/sdk'
const client = await createClient({ apiKey: process.env.RUNWARE_API_KEY })
await client.connect()
const [result] = await client.run({
model: 'runware:ffmpeg@0',
inputs: {
media: [
{
url: 'https://assets.runware.ai/assets/inputs/e4298337-fab0-4af4-8ba4-fb4c1fd59e6e.mp4'
},
{
url: 'https://assets.runware.ai/assets/inputs/f8c6dc7b-545b-450b-954f-0d7f0b3be44e.mp4'
}
]
}
})import asyncio
import os
from runware import Runware
async def main():
async with Runware(api_key=os.environ["RUNWARE_API_KEY"]) as client:
results = await client.run({
"model": "runware:ffmpeg@0",
"inputs": {
"media": [
{
"url": "https://assets.runware.ai/assets/inputs/e4298337-fab0-4af4-8ba4-fb4c1fd59e6e.mp4"
},
{
"url": "https://assets.runware.ai/assets/inputs/f8c6dc7b-545b-450b-954f-0d7f0b3be44e.mp4"
}
]
}
})
asyncio.run(main())curl https://api.runware.ai/v1 \
-H "Authorization: Bearer $RUNWARE_API_KEY" \
-H "Content-Type: application/json" \
-d '[
{
"taskType": "tools",
"taskUUID": "97e91168-0865-4d8b-a9cf-d4021a769de3",
"model": "runware:ffmpeg@0",
"inputs": {
"media": [
{
"url": "https://assets.runware.ai/assets/inputs/e4298337-fab0-4af4-8ba4-fb4c1fd59e6e.mp4"
},
{
"url": "https://assets.runware.ai/assets/inputs/f8c6dc7b-545b-450b-954f-0d7f0b3be44e.mp4"
}
]
}
}
]'runware run runware:ffmpeg@0 \
inputs.media.0.url=https://assets.runware.ai/assets/inputs/e4298337-fab0-4af4-8ba4-fb4c1fd59e6e.mp4 \
inputs.media.1.url=https://assets.runware.ai/assets/inputs/f8c6dc7b-545b-450b-954f-0d7f0b3be44e.mp4{
"taskType": "tools",
"taskUUID": "97e91168-0865-4d8b-a9cf-d4021a769de3",
"model": "runware:ffmpeg@0",
"inputs": {
"media": [
{
"url": "https://assets.runware.ai/assets/inputs/e4298337-fab0-4af4-8ba4-fb4c1fd59e6e.mp4"
},
{
"url": "https://assets.runware.ai/assets/inputs/f8c6dc7b-545b-450b-954f-0d7f0b3be44e.mp4"
}
]
}
}Response
{
"taskType": "tools",
"taskUUID": "97e91168-0865-4d8b-a9cf-d4021a769de3",
"cost": 0.00335,
"outputs": {
"files": [
{
"uuid": "1725599e-a729-4ee2-bb79-ca06c44c2a32",
"url": "https://mm.runware.ai/media-storage/ws/10/id/1725599e-a729-4ee2-bb79-ca06c44c2a32.mp4"
}
]
}
}media-process
Thermal Inspection Picture-in-Picture Video$0.00328~24simport { createClient } from '@runware/sdk'
const client = await createClient({ apiKey: process.env.RUNWARE_API_KEY })
await client.connect()
const [result] = await client.run({
model: 'runware:ffmpeg@0',
settings: {
filterComplex: '[1:v][0:v]scale2ref=w=main_w*0.30:h=-2[pip][base];[pip]setsar=1,pad=iw+8:ih+8:4:4:color=white[pipb];[base][pipb]overlay=x=W-w-48:y=48:shortest=1[v]',
maps: [
'[v]',
'0:a?'
],
outputOptions: [
'-c:v',
'libx264',
'-c:a',
'aac',
'-movflags',
'+faststart',
'-f',
'mp4'
]
},
inputs: {
media: [
{
url: 'https://assets.runware.ai/assets/inputs/4fc9d86a-7df3-4f8d-a8f9-63e2eaa222c0.mp4'
},
{
url: 'https://assets.runware.ai/assets/inputs/94867852-81d0-45ad-8966-bd01cc5316f7.mp4'
}
]
}
})import asyncio
import os
from runware import Runware
async def main():
async with Runware(api_key=os.environ["RUNWARE_API_KEY"]) as client:
results = await client.run({
"model": "runware:ffmpeg@0",
"settings": {
"filterComplex": "[1:v][0:v]scale2ref=w=main_w*0.30:h=-2[pip][base];[pip]setsar=1,pad=iw+8:ih+8:4:4:color=white[pipb];[base][pipb]overlay=x=W-w-48:y=48:shortest=1[v]",
"maps": [
"[v]",
"0:a?"
],
"outputOptions": [
"-c:v",
"libx264",
"-c:a",
"aac",
"-movflags",
"+faststart",
"-f",
"mp4"
]
},
"inputs": {
"media": [
{
"url": "https://assets.runware.ai/assets/inputs/4fc9d86a-7df3-4f8d-a8f9-63e2eaa222c0.mp4"
},
{
"url": "https://assets.runware.ai/assets/inputs/94867852-81d0-45ad-8966-bd01cc5316f7.mp4"
}
]
}
})
asyncio.run(main())curl https://api.runware.ai/v1 \
-H "Authorization: Bearer $RUNWARE_API_KEY" \
-H "Content-Type: application/json" \
-d '[
{
"taskType": "tools",
"taskUUID": "89a51938-1393-4700-a85b-e3e87bc1501c",
"model": "runware:ffmpeg@0",
"settings": {
"filterComplex": "[1:v][0:v]scale2ref=w=main_w*0.30:h=-2[pip][base];[pip]setsar=1,pad=iw+8:ih+8:4:4:color=white[pipb];[base][pipb]overlay=x=W-w-48:y=48:shortest=1[v]",
"maps": [
"[v]",
"0:a?"
],
"outputOptions": [
"-c:v",
"libx264",
"-c:a",
"aac",
"-movflags",
"+faststart",
"-f",
"mp4"
]
},
"inputs": {
"media": [
{
"url": "https://assets.runware.ai/assets/inputs/4fc9d86a-7df3-4f8d-a8f9-63e2eaa222c0.mp4"
},
{
"url": "https://assets.runware.ai/assets/inputs/94867852-81d0-45ad-8966-bd01cc5316f7.mp4"
}
]
}
}
]'runware run runware:ffmpeg@0 \
settings.filterComplex="[1:v][0:v]scale2ref=w=main_w*0.30:h=-2[pip][base];[pip]setsar=1,pad=iw+8:ih+8:4:4:color=white[pipb];[base][pipb]overlay=x=W-w-48:y=48:shortest=1[v]" \
settings.maps.0=[v] \
settings.maps.1="0:a?" \
settings.outputOptions.0=-c:v \
settings.outputOptions.1=libx264 \
settings.outputOptions.2=-c:a \
settings.outputOptions.3=aac \
settings.outputOptions.4=-movflags \
settings.outputOptions.5=+faststart \
settings.outputOptions.6=-f \
settings.outputOptions.7=mp4 \
inputs.media.0.url=https://assets.runware.ai/assets/inputs/4fc9d86a-7df3-4f8d-a8f9-63e2eaa222c0.mp4 \
inputs.media.1.url=https://assets.runware.ai/assets/inputs/94867852-81d0-45ad-8966-bd01cc5316f7.mp4{
"taskType": "tools",
"taskUUID": "89a51938-1393-4700-a85b-e3e87bc1501c",
"model": "runware:ffmpeg@0",
"settings": {
"filterComplex": "[1:v][0:v]scale2ref=w=main_w*0.30:h=-2[pip][base];[pip]setsar=1,pad=iw+8:ih+8:4:4:color=white[pipb];[base][pipb]overlay=x=W-w-48:y=48:shortest=1[v]",
"maps": [
"[v]",
"0:a?"
],
"outputOptions": [
"-c:v",
"libx264",
"-c:a",
"aac",
"-movflags",
"+faststart",
"-f",
"mp4"
]
},
"inputs": {
"media": [
{
"url": "https://assets.runware.ai/assets/inputs/4fc9d86a-7df3-4f8d-a8f9-63e2eaa222c0.mp4"
},
{
"url": "https://assets.runware.ai/assets/inputs/94867852-81d0-45ad-8966-bd01cc5316f7.mp4"
}
]
}
}Response
{
"taskType": "tools",
"taskUUID": "89a51938-1393-4700-a85b-e3e87bc1501c",
"cost": 0.003282,
"outputs": {
"files": [
{
"uuid": "f105c121-fce6-4716-8a94-4db01cd605c2",
"url": "https://mm.runware.ai/media-storage/ws/10/id/f105c121-fce6-4716-8a94-4db01cd605c2.mp4"
}
]
}
}