Exemplos
Receitas cURL prontas pra colar pros casos mais comuns de FFmpeg.
7 receitas que você cola direto no terminal. Troca YOUR_API_KEY pelo token de /dashboard/api-keys e a URL de entrada pela sua.
Se sua entrada é arquivo local, faz upload primeiro — veja Upload de arquivos.
Não quer escrever código? Cada receita abaixo tem versão visual em /tools: Comprimir · Converter · Extrair áudio · Vídeo → GIF · Cortar · Mesclar · Marca d'água. Arrasta o arquivo, clica no botão, pronto.
1. Comprimir vídeo
H.264 + CRF 28 reduz o tamanho 5–10× com perda de qualidade quase imperceptível. CRF maior = arquivo menor.
curl -X POST https://api.ffhub.io/v1/tasks \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"command": "ffmpeg -i https://storage.ffhub.io/sample.mp4 -c:v libx264 -preset fast -crf 28 -c:a aac -b:a 96k output.mp4"
}'
2. Converter formato (MOV → MP4)
Quando os codecs já encaixam, copia os streams sem reencodar — instantâneo e sem perda.
curl -X POST https://api.ffhub.io/v1/tasks \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"command": "ffmpeg -i https://storage.ffhub.io/sample.mov -c:v copy -c:a copy output.mp4"
}'
3. Extrair áudio (MP4 → MP3)
-vn descarta o vídeo, libmp3lame codifica em MP3 com bitrate decente.
curl -X POST https://api.ffhub.io/v1/tasks \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"command": "ffmpeg -i https://storage.ffhub.io/sample.mp4 -vn -c:a libmp3lame -q:a 2 audio.mp3"
}'
4. Vídeo pra GIF
10 fps, 480px de largura, loop infinito. Quanto menor o scale, menor o GIF.
curl -X POST https://api.ffhub.io/v1/tasks \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"command": "ffmpeg -i https://storage.ffhub.io/sample.mp4 -vf fps=10,scale=480:-1 -loop 0 output.gif"
}'
5. Cortar um trecho
Corta de 10s até 40s (30s de duração). -c copy pula reencodar, fica quase instantâneo.
curl -X POST https://api.ffhub.io/v1/tasks \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"command": "ffmpeg -ss 00:00:10 -i https://storage.ffhub.io/sample.mp4 -t 00:00:30 -c copy output.mp4"
}'
6. Mesclar dois vídeos
Os dois inputs precisam ter codec / resolução / fps iguais. O filtro concat é seguro; o demuxer é mais rápido mas mais chato.
curl -X POST https://api.ffhub.io/v1/tasks \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"command": "ffmpeg -i https://storage.ffhub.io/a.mp4 -i https://storage.ffhub.io/b.mp4 -filter_complex [0:v][0:a][1:v][1:a]concat=n=2:v=1:a=1[v][a] -map [v] -map [a] output.mp4"
}'
7. Adicionar marca d'água
PNG com transparência, ancorado a 10px do canto superior direito.
curl -X POST https://api.ffhub.io/v1/tasks \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"command": "ffmpeg -i https://storage.ffhub.io/sample.mp4 -i https://storage.ffhub.io/logo.png -filter_complex overlay=W-w-10:10 -c:a copy output.mp4"
}'
Precisa de algo que não está aqui? FFHub roda qualquer comando FFmpeg — manda o seu. Referência completa de filter / option em ffmpeg.org/ffmpeg.html.