CodeKitHub
Ferramentas do dia a dia

Comprima um vídeo para um tamanho de arquivo exato

Última atualização:

Esta ferramenta reduz um vídeo até o tamanho de arquivo que você escolher — 8 MB, 25 MB ou qualquer valor personalizado — calculando a taxa de bits exata necessária e recodificando com o ffmpeg rodando diretamente no seu navegador (via ffmpeg.wasm), de modo que o vídeo nunca é enviado a um servidor. O cálculo segue a fórmula padrão de codificação de vídeo (taxa de bits alvo = tamanho alvo ÷ duração), a mesma abordagem recomendada pela própria documentação do Handbrake para codificações com restrição de tamanho. Se você está esbarrando no limite de 8 MB do plano gratuito do Discord, use o predefinido de 8 MB; se um provedor de e-mail estiver rejeitando um anexo grande demais, use o predefinido de 25 MB (o limite do Gmail); para qualquer outro caso, informe um tamanho personalizado.

O que é esta ferramenta?

Um compressor de vídeo por tamanho alvo recodifica um vídeo com a taxa de bits necessária para chegar (ou ficar logo abaixo) de um tamanho de arquivo escolhido, em vez de usar um controle genérico de 'qualidade' que produz um tamanho imprevisível. Essa diferença importa quando o limite é imposto por outra parte — o plano gratuito do Discord limita anexos a 8 MB, e a maioria dos provedores de e-mail, incluindo o Gmail, limita anexos a 25 MB — e não pela aparência que se quer dar ao vídeo.

Esta ferramenta mede a duração do vídeo, calcula o orçamento total de taxa de bits para o tamanho alvo, divide esse orçamento entre as faixas de vídeo e áudio, e recodifica com ffmpeg.wasm — a versão em WebAssembly do codificador open source FFmpeg — executada inteiramente dentro da aba do seu navegador. Nada é enviado; a codificação acontece no seu próprio dispositivo.

Por que usar?

  • 100% local: o arquivo de vídeo nunca sai do seu dispositivo — sem upload para servidor, sem limite de tamanho imposto por uma cota de hospedagem.
  • Feito para limites reais: 8 MB (plano gratuito do Discord) e 25 MB (Gmail e a maioria dos provedores de e-mail) são predefinições de um clique, além de um campo de tamanho personalizado para qualquer outro limite.
  • Usa a fórmula padrão de taxa de bits a partir da duração em vez de tentativa e erro, com uma margem de segurança embutida para que o resultado final raramente ultrapasse o seu alvo.
  • Barra de progresso em tempo real durante a codificação — o processamento com ffmpeg.wasm pode levar um tempo em clipes mais longos, então você sempre sabe que está funcionando, e não travado.
  • Mostra o tamanho de saída exato após a compressão, para que você possa confirmar que ele respeita o limite antes de enviá-lo ou anexá-lo em outro lugar.

Como usar

  1. Clique na área de soltar (ou arraste um arquivo até ela) para carregar seu vídeo — a ferramenta lê primeiro o tamanho e a duração.
  2. Escolha um alvo: 8 MB para Discord, 25 MB para e-mail/Gmail, ou digite um tamanho personalizado em MB.
  3. Clique em Comprimir vídeo e acompanhe a barra de progresso — a codificação roda no seu navegador e pode levar de alguns segundos a alguns minutos, dependendo da duração do vídeo e do seu dispositivo.
  4. Quando terminar, confira o tamanho de saída informado e clique em Baixar.

Exemplo

Entrada

clip.mp4 — 42 MB, 0:35 duration

Resultado

clip-8MB.mp4 — 7.6 MB

O alvo era 8 MB (Discord); a ferramenta calculou uma taxa de bits de vídeo de ~1,5 Mbps para o clipe de 35 segundos, codificou com uma margem de segurança de 10% e ficou abaixo do limite com folga.

Como a taxa de bits alvo é calculada

A fórmula principal é simples: taxa de bits total (kbps) = tamanho de arquivo alvo (em kilobits) ÷ duração (segundos). A ferramenta aplica uma margem de segurança de cerca de 10% ao orçamento de bytes antes desse cálculo, e depois subtrai uma taxa de bits de áudio reservada (128 kbps normalmente, reduzida para 96 ou 64 kbps em alvos muito pequenos para que o áudio não consuma demais de um orçamento apertado) para chegar à taxa de bits de vídeo. Essa taxa de bits de vídeo é passada ao codificador do ffmpeg com um limite máximo rígido (`-maxrate`) e um tamanho de buffer (`-bufsize`), para que rajadas curtas de movimento complexo não estourem o alvo.

Há um detalhe de conversão de unidades que importa para quem usa essas predefinições com precisão: limites de upload de plataformas como os '8 MB' do Discord costumam ser megabytes binários (1 MB = 1.048.576 bytes, às vezes chamados de MiB), de forma consistente com como limites de armazenamento e transferência costumam ser especificados. O cálculo de orçamento de bytes desta ferramenta é deliberadamente conservador — ela usa o megabyte menor e mais rígido, com base 1000, para o orçamento alvo, e ainda soma a margem de segurança em cima — de modo que o resultado fique abaixo do limite em qualquer uma das interpretações de 'MB'.

Escolhendo um alvo para plataformas comuns

Se não tiver certeza de qual limite se aplica, confira a mensagem de erro que a plataforma exibiu — a maioria das rejeições por tamanho de anexo informa o teto exato, que você pode inserir diretamente como tamanho personalizado.

DestinoLimite típicoAlvo recomendado
Discord (plano gratuito)8 MB por anexoPredefinido de 8 MB
Discord Nitro50–100 MB dependendo do planoTamanho personalizado
Gmail / a maioria dos provedores de e-mail25 MB por mensagemPredefinido de 25 MB
Slack (workspace gratuito)1 GB (mas arquivos grandes deixam o upload lento)Tamanho personalizado, se realmente necessário

Do nosso próprio teste

Geramos um clipe de teste sintético com o FFmpeg na linha de comando (um vídeo de 12 segundos em 1280×720 com áudio em tom, codificado a ~800 kbps para produzir um arquivo de origem realista de vários megabytes) e o processamos nesta ferramenta usando o predefinido de 8 MB para Discord. A saída ficou abaixo de 8 MB como esperado, confirmando que o cálculo de taxa de bits e a margem de segurança se sustentam diante de uma codificação real, e não apenas na teoria.

Perguntas frequentes

Meu vídeo é enviado para algum lugar?

Não. A compressão roda com ffmpeg.wasm, uma versão em WebAssembly do FFmpeg, executada dentro da aba do seu navegador. O arquivo de vídeo é lido localmente e nunca é enviado a um servidor — você pode até desconectar da internet depois que a página e seu mecanismo forem carregados uma primeira vez.

Por que a primeira compressão demora um pouco para começar?

A ferramenta carrega o mecanismo ffmpeg.wasm (cerca de 30 MB) na primeira vez que você executa uma compressão em uma sessão. Depois desse carregamento inicial, as compressões seguintes na mesma página começam imediatamente.

O resultado sempre ficará abaixo do meu tamanho alvo?

A ferramenta reserva uma margem de segurança (o orçamento real de taxa de bits mira cerca de 90% do tamanho escolhido), porque codificadores reais não acertam uma taxa de bits exata em todo quadro. No raro caso de o resultado ainda ficar um pouco acima, escolha um tamanho personalizado menor para adicionar mais margem — a ferramenta vai avisar se isso acontecer.

Por que exatamente 8 MB para o Discord?

O plano gratuito (sem Nitro) do Discord limita o envio de arquivos a 8 MB por anexo; assinantes do Nitro têm limites maiores (50 MB ou 100 MB, dependendo do plano). O predefinido de 8 MB mira o limite do plano gratuito, que é o que a maioria das pessoas enfrenta.

Por que 25 MB para e-mail?

25 MB é o limite de anexos do Gmail e um teto comum entre a maioria dos outros grandes provedores. Se o seu provedor tiver um limite diferente, use o campo de tamanho personalizado.

Comprimir prejudica a qualidade do vídeo?

Sim, necessariamente — atingir um tamanho de arquivo muito menor que o original significa uma taxa de bits mais baixa, o que reduz os detalhes e pode gerar artefatos de compressão visíveis, especialmente em cenas com movimento rápido ou muito detalhe. A ferramenta escolhe automaticamente a divisão da taxa de bits (vídeo versus áudio) para manter a maior qualidade possível dentro do tamanho alvo, mas um clipe de 42 MB forçado a 8 MB vai parecer visivelmente mais suave que o original.

Qual formato de vídeo e áudio ela gera na saída?

A saída é sempre MP4 com vídeo H.264 e áudio AAC — a combinação mais amplamente compatível para Discord, clientes de e-mail e a maioria das plataformas sociais.

Ferramentas relacionadas