Ir para o conteúdo

Transformação de Vídeos

Aplique transformações em vídeos sem precisar re-fazer upload. Todos os comandos de transformação usam a sintaxe do FFmpeg — a ferramenta padrão da indústria para processamento de vídeo e áudio.

Como funciona

Passe comandos do FFmpeg através do parâmetro de consulta format. O GFile executa a transformação, armazena em cache o resultado como sub-arquivo e retorna a saída processada. Use $INPUT e $OUTPUT.<ext> como marcadores para os arquivos de origem e destino.

/api/v1/tenants/:tenantId/buckets/:bucketId/files/:fileId/format?format=<comando-ffmpeg>&apiKey=<your-api-key>

Transformações disponíveis

Operação Comando Descrição
Extrair áudio -vn -acodec copy Remover vídeo, manter áudio
Recortar/clip -ss <início> -t <duração> Cortar um segmento do vídeo
Extrair quadro -ss <tempo> -frames:v 1 Capturar um quadro como imagem
Re-codificar -c:v libx264 -c:a aac Transcodificar para H.264/AAC
Mudar resolução -vf scale=1280:720 Redimensionar vídeo
Remover áudio -an Remover faixa de áudio
Mudar formato $OUTPUT.<ext> Converter contêiner (mp4, webm, avi)
Ajustar velocidade -filter:v "setpts=0.5*PTS" Acelerar vídeo (2x)
Extrair miniatura -vf "thumbnail" -frames:v 1 Auto-selecionar melhor quadro

Exemplos

Extrair áudio de um vídeo

Remove a faixa de vídeo e extrai apenas o fluxo de áudio.

curl "/api/v1/tenants/:tenantId/buckets/:bucketId/files/:fileId/format?format=-i $INPUT -vn -acodec copy $OUTPUT.aac&apiKey=<your-api-key>"
  • -i $INPUT especifica o vídeo de origem
  • -vn desativa a gravação de vídeo
  • -acodec copy copia o fluxo de áudio sem re-codificar (rápido, sem perda)
  • $OUTPUT.aac define o formato de saída para áudio AAC

Criar um clipe de um vídeo

Corta um segmento de tempo específico sem re-codificar.

curl "/api/v1/tenants/:tenantId/buckets/:bucketId/files/:fileId/format?format=-i $INPUT -ss 30 -t 10 -c copy $OUTPUT.mp4&apiKey=<your-api-key>"
  • -ss 30 posiciona na marca de 30 segundos como ponto de início
  • -t 10 limita a duração de saída a 10 segundos
  • -c copy copia os fluxos de áudio e vídeo sem re-codificar (rápido)

Extrair um quadro como imagem

Captura um único quadro em um timestamp específico.

curl "/api/v1/tenants/:tenantId/buckets/:bucketId/files/:fileId/format?format=-i $INPUT -ss 5 -frames:v 1 $OUTPUT.jpg&apiKey=<your-api-key>"
  • -ss 5 posiciona na marca de 5 segundos
  • -frames:v 1 extrai exatamente um quadro de vídeo
  • $OUTPUT.jpg salva o quadro como imagem JPEG

Redimensionar resolução do vídeo

Escala um vídeo para uma resolução diferente.

curl "/api/v1/tenants/:tenantId/buckets/:bucketId/files/:fileId/format?format=-i $INPUT -vf scale=1280:720 -c:a copy $OUTPUT.mp4&apiKey=<your-api-key>"
  • -vf scale=1280:720 redimensiona para 1280×720 (720p)
  • -c:a copy mantém o fluxo de áudio sem alterações

Converter formato de vídeo

Transcodifica um vídeo para um contêiner ou codec diferente.

curl "/api/v1/tenants/:tenantId/buckets/:bucketId/files/:fileId/format?format=-i $INPUT -c:v libx264 -c:a aac $OUTPUT.mp4&apiKey=<your-api-key>"
  • -c:v libx264 codifica vídeo com codec H.264
  • -c:a aac codifica áudio com codec AAC

Obter metadados de vídeo

Recupere informações técnicas detalhadas (duração, codecs, bitrate):

curl "/api/v1/tenants/:tenantId/buckets/:bucketId/files/:fileId/info?apiKey=<your-api-key>"

Retorna JSON do FFprobe com streams, formato, duração, codecs e bitrate.