Skip to main content
Guia de Codificação de Vídeo: H.264, H.265 e AV1 para Artistas 3D

Guia de Codificação de Vídeo: H.264, H.265 e AV1 para Artistas 3D

BySuperRenders Farm Team
Published 21 de mar de 202613 min read
Como escolher a codificação de vídeo para renders 3D — H.264, H.265, AV1 e ProRes com definições práticas.

Quando renderizamos recursos 3D em After Effects, Blender ou Cinema 4D, estamos a trabalhar com ficheiros de vídeo ou sequências de imagens. O passo final—codificar essas renderizações num formato entregável—muitas vezes determina se os clientes utilizarão efetivamente o nosso trabalho e se será transmitido sem problemas em todas as plataformas. O After Effects CC 2014+ removeu os exportadores de vídeo diretos, o que forçou muitos artistas a aprender fluxos de trabalho de codificação em ferramentas como Adobe Media Encoder ou FFmpeg. Hoje, enfrentamos mais escolhas de codec do que nunca: H.264 continua sendo o padrão da indústria, H.265 oferece melhor compressão, e AV1 está a emergir como a opção com prova de futuro. Neste guia, percorreremos as decisões práticas de codificação que tomamos na Super Renders Farm, desde compreender as diferenças de codec até configurar saídas de renderização para exportação contínua.

Compreender Codecs de Vídeo: O Que Realmente Precisamos

Um codec é um algoritmo de compressão. Define como os dados de vídeo são comprimidos em ficheiros menores sem (idealmente) perder a qualidade visual que importa para o nosso trabalho. Os três codecs que dominam os fluxos de trabalho de artistas 3D são H.264, H.265 e AV1. ProRes ocupa um nicho diferente—é projetado para edição e pós-produção, não para entrega, mas vamos abordá-lo, pois as saídas de render farm às vezes o utilizam como formato intermediário.

H.264 (MPEG-4 AVC): Lançado em 2003, H.264 ainda é o codec mais amplamente suportado em dispositivos, plataformas e serviços de transmissão. Quase todos os telemóveis, navegadores e leitores de mídia compreendem H.264. Para entregas de clientes onde não temos controlo sobre o ambiente de reprodução, H.264 é a escolha segura. O compromisso: não é o mais eficiente. Um ficheiro H.264 em 4K com qualidade de transmissão é maior do que o mesmo conteúdo em H.265.

H.265 (HEVC): O padrão mais recente de 2013 oferece aproximadamente 50% de melhor compressão do que H.264 com qualidade visual equivalente. Para ficheiro, trabalho de portfólio e armazenamento interno, H.265 é atraente—poupamos espaço significativo em disco rígido. No entanto, o licenciamento de patentes de H.265 é mais complexo, e alguns dispositivos (particularmente hardware mais antigo e certos navegadores) não o suportam nativamente.

AV1: Desenvolvido pela Alliance for Open Media, AV1 é isento de direitos e oferece compressão entre H.265 e H.264, dependendo da taxa de bits. Está a ganhar adopção no YouTube e plataformas de transmissão, mas a codificação é intensiva em CPU e o suporte de reprodução ainda está a ser implementado em dispositivos do consumidor. Para proteger o conteúdo para o futuro, AV1 vale a pena aprender.

ProRes: Não é um codec de entrega, mas um formato intermediário profissional. Ficheiros ProRes são maiores do que H.264 ou H.265, mas foram concebidos para edição rápida e gradação de cor. Utilizamos ProRes quando a nossa saída se dirige para um pipeline de pós-produção, não diretamente para clientes.

Comparação de Codecs: Quando Utilizamos O Quê

CodecCompressãoSuporte de DispositivoCaso de UsoTaxa de Bits (1080p)
H.264PadrãoExcelente (98%+)Web, entrega de cliente, ficheiros5–12 Mbps
H.26550% melhorBom (85%)Portfólio, armazenamento interno, 4K2,5–6 Mbps
AV1Semelhante a H.265Emergente (60%)YouTube, prova de futuro1,5–4 Mbps
ProRes 422 HQGrandeSistemas de ediçãoIntermediário/pós-produção80–150 Mbps

Escolher o Seu Codec por Contexto de Entrega

Entrega de Cliente e Web: Predefinição para H.264. Os clientes não perguntam qual codec utilizámos—perguntam se é reproduzido. H.264 é reproduzido em todo o lado. Codificamos em 8–10 Mbps para 1080p, 15–20 Mbps para 4K, ajustando com base na complexidade do conteúdo (movimento, efeitos de partículas, detalhe fino).

Portfólio e Auto-Promoção: H.265 se a nossa audiência utiliza dispositivos modernos (provável para portfólios de design/criativo). Poupamos 40–50% de armazenamento sem perda de qualidade visível. Se a distribuição é incerta, manter-se com H.264.

Ficheiro e Saída de Render Farm: H.265 ou ProRes. Quando armazenamos renderizações a longo prazo, a compressão importa. H.265 oferece-nos ficheiro eficiente; ProRes oferece-nos ficheiros intermediários compatíveis com edição se o conteúdo será utilizado em pós-produção.

Exportar Vídeo do After Effects e Media Encoder

O After Effects CC 2014+ não inclui exportadores de vídeo diretos. Em vez disso, utilizamos Adobe Media Encoder como uma aplicação separada, que processa tarefas de codificação para After Effects, Premiere Pro e projetos autónomos.

Fluxo de trabalho: After Effects → Queue for Media Encoder → Media Encoder aplica configurações de codificação → Ficheiro de vídeo codificado.

Abra After Effects, clique com o botão direito da rede na sua composição na cronologia e selecione "Add to Adobe Media Encoder Queue". Media Encoder inicia-se automaticamente (ou abre se já estiver em execução). No Media Encoder, selecione a sua composição na fila e clique no menu suspenso de predefinição junto a "Format".

O Adobe fornece predefinições para H.264 (chamadas "High Quality 1080p" ou semelhante) e ProRes. Estas predefinições são padrões seguros, mas geralmente as customizamos:

Para Entrega H.264 Web (1080p):

  • Formato: H.264
  • Predefinição: Personalizado
  • Taxa de bits: 10 Mbps (variável)
  • Taxa de fotogramas: Correspondente à composição (tipicamente 24p ou 30p)
  • Intervalo de fotograma-chave: A cada 2 segundos (120 fotogramas em 60fps)

Para Portfólio H.265 (1080p):

  • Formato: HEVC (H.265)
  • Taxa de bits: 5 Mbps variável
  • Perfil: Principal
  • Taxa de fotogramas: Corresponde à fonte
  • Intervalo de fotograma-chave: A cada 2 segundos

No painel direito, clique em "Export Settings" para customizar taxa de bits, taxa de fotogramas e outros parâmetros. Sempre defina a taxa de bits como "Variável" (VBR) em vez de constante—taxa de bits variável aloca mais bits a cenas complexas e menos a simples, melhorando a qualidade percebida na mesma taxa média de bits.

Media Encoder coloca em fila múltiplas composições. Frequentemente renderizamos um conjunto inteiro de recursos de projeto, colocamos todos os trabalhos de codificação em fila à noite e revisamos a saída na manhã seguinte. Este é um dos fluxos de trabalho típicos da nossa farm: renderizar todos os entregáveis de cliente simultaneamente em After Effects, colocar todos em fila no Media Encoder e afastar-se.

Codificar Sequências de Imagens do Blender

As renderizações do Blender tipicamente saem como sequências de imagem (EXR, OpenEXR ou fotogramas PNG) em vez de ficheiros de vídeo. O Blender tem opções de exportação de vídeo, mas são limitadas—o verdadeiro poder vem do compositor do Blender ou ferramentas de codificação externas.

Dentro do Blender: Nas propriedades de Saída, defina o formato de imagem (EXR para qualidade máxima e gama dinâmica). Render a sequência. Depois, no VSE (Video Sequence Editor), importe a sequência de imagem como uma tira, aplique correcção de cor ou efeitos se necessário, e exporte como H.264 ou outros formatos diretamente do VSE.

Configurações de Exportação do VSE do Blender:

  • Ir para Render → Output Format
  • Codec: H.264 (ou codecs FFmpeg se FFmpeg estiver instalado)
  • Taxa de bits: 8000–15000 kbps para 1080p
  • Contentor: MP4 ou Matroska (MKV)
  • Predefinição: Codificação mais lenta = melhor qualidade (troca de tempo de CPU por tamanho de ficheiro)

Para trabalho profissional de render farm, geralmente não codificamos no Blender—exportamos a sequência EXR e codificamos externamente com FFmpeg ou Media Encoder, onde temos controlo mais fino.

Codificação em Lote com FFmpeg

FFmpeg é a espinha dorsal dos nossos pipelines de codificação automatizados. É baseado em linha de comandos, gratuito e processa quase todas as combinações de codec de que possamos precisar. Para render farms que processam centenas de shots, scripts FFmpeg são indispensáveis.

Codificação H.264 básica a partir de uma sequência de imagem:

ffmpeg -framerate 24 -i frame_%04d.exr -c:v libx264 -crf 18 -preset slow output.mp4

Este comando toma uma sequência de fotogramas numerados (frame_0001.exr, frame_0002.exr, etc.), codifica em 24fps com H.264, nível de qualidade 18 (inferior = melhor, escala 0–51) e utiliza codificação lenta (mais compressão). A saída é um ficheiro MP4.

Codificação H.265 (compressão superior):

ffmpeg -framerate 24 -i frame_%04d.exr -c:v libx265 -crf 20 -preset slow output.mp4

CRF (Constant Rate Factor) é uma escala de qualidade. Para H.264, CRF 18–22 oferece qualidade de transmissão. Para H.265, utilize CRF 20–26 para qualidade percebida semelhante (H.265 é mais eficiente, então o mesmo valor CRF parece ligeiramente pior).

Codificação AV1 (mais lenta mas com prova de futuro):

ffmpeg -framerate 24 -i frame_%04d.exr -c:v libaom-av1 -crf 30 -preset 4 output.mp4

Os valores CRF de AV1 executam 0–63 (superior = qualidade inferior). CRF 28–35 é típico para trabalho de qualidade. As predefinições 0–8 controlam a velocidade de codificação; a predefinição 4 é um equilíbrio razoável entre qualidade e tempo de codificação.

Codificação com taxa de bits explícita (em vez de CRF):

ffmpeg -framerate 24 -i frame_%04d.exr -c:v libx264 -b:v 10M output.mp4

A bandeira -b:v 10M define a taxa de bits em 10 Mbps. Isto é útil quando tem requisitos de tamanho de ficheiro rigorosos ou quando trabalha com clientes que especificam objetivos de taxa de bits.

O FFmpeg também pode ler de ficheiros de vídeo, não apenas sequências. Para transcodificar um ficheiro H.264 existente para H.265:

ffmpeg -i input.mp4 -c:v libx265 -crf 20 -preset slow output.mp4

Configurações de Taxa de Bits e Qualidade para Diferentes Propósitos

Taxa de bits é a quantidade de dados codificados por segundo, medida em quilobits por segundo (kbps) ou megabits por segundo (Mbps). Taxa de bits superior = ficheiros maiores mas melhor qualidade. A nossa farm define a taxa de bits com base no tipo de conteúdo:

Taxa de Bits de Entrega H.264 em 1080p:

  • Qualidade mínima (redes sociais, pré-visualização): 3–5 Mbps
  • Qualidade padrão (web, portfólio): 8–10 Mbps
  • Alta qualidade (transmissão, ficheiro): 12–15 Mbps

Taxa de Bits de Entrega H.264 em 4K:

  • Padrão: 25–30 Mbps
  • Alta qualidade: 35–50 Mbps

Taxas de Bits H.265 (reduzir em ~50% para qualidade equivalente):

  • 1080p padrão: 4–5 Mbps
  • 1080p alta: 6–8 Mbps
  • 4K padrão: 12–15 Mbps
  • 4K alta: 18–25 Mbps

Quando tem dúvida, codificamos um clip de teste de 10 segundos em múltiplas taxas de bits, comparamos no dispositivo de reprodução real e escolhemos a taxa de bits mais baixa onde a qualidade é visualmente aceitável. Isto é mais rápido do que adivinhar e ajuda-nos a calibrar configurações para cada expectativa de cliente.

Processar Saída de Render Farm: De Sequências para Vídeo

A nossa farm renderiza milhares de fotogramas diariamente. O pipeline é: motor de renderização → sequência de imagem (EXR) → armazenamento distribuído → codificação em lote → entregável final.

Cada trabalho de renderização produz uma sequência de fotogramas numerados: render_shot_001_0001.exr, render_shot_001_0002.exr, etc. Depois executamos trabalhos de codificação que convertem estas sequências em ficheiros H.264, H.265 ou ProRes. Para eficiência, codificamos múltiplos shots em paralelo nos nós da farm.

Um script típico de codificação de farm:

#!/bin/bash
for shot in /farm/renders/shot_*/; do
  shotname=$(basename "$shot")
  ffmpeg -framerate 24 \
    -i "$shot/frame_%04d.exr" \
    -c:v libx264 -crf 18 -preset slow \
    "/deliverables/${shotname}_final.mp4" &
done
wait

Isto cicla todos os directórios de shot, codifica cada um e executa-os em paralelo (o & no final de cada linha ffmpeg envia-o para o fundo). O comando wait garante que o script aguarda que todos os trabalhos de codificação terminem antes de terminar.

Para operações em larga escala, utilizamos FFmpeg com aceleração de hardware (NVIDIA NVENC ou AMD VCE) quando disponível, o que reduz drasticamente o tempo de codificação. Codificadores de hardware trocam uma eficiência de compressão por velocidade, mas numa farm a processar centenas de shots, a poupança de tempo justifica o compromisso.

Resumo Prático de Configurações de Codificação

Quando estamos a configurar codificação para um novo projeto:

  1. Confirmar restrições de entrega: O cliente especifica o codec? Em que dispositivos será reproduzido? É o tamanho do ficheiro uma preocupação?
  2. Escolher o seu codec: H.264 para compatibilidade máxima, H.265 para eficiência, AV1 para prova de futuro.
  3. Definir nível de qualidade: Utilize CRF para qualidade percebida, taxa de bits para objetivos de tamanho de ficheiro.
  4. Testar no hardware de reprodução: Sempre codifique uma sequência de teste curta e reproduza-a no dispositivo-alvo real.
  5. Documentar configurações: Guardar comandos ffmpeg ou predefinições do Media Encoder para reutilização. A consistência entre projectos importa.

Para entrega H.264 web em 1080p, predefinimos CRF 18–20 ou taxa de bits variável de 8–10 Mbps. Para 4K, utilizamos 35–40 Mbps. Estas configurações produzem consistentemente ficheiros que os clientes aceitam sem solicitar re-codificações.

FAQ

Devo utilizar H.264 ou H.265 para ficheiro?

H.265. Arquivo é sobre eficiência de armazenamento a longo prazo. H.265 utiliza metade do espaço com qualidade equivalente, e o suporte é estável em sistemas modernos. Se o conteúdo pode ser editado mais tarde, considere ProRes em vez disso—foi concebido para fluxos de trabalho de pós-produção.

Posso codificar em H.265 directamente do After Effects?

Não nativamente. After Effects não inclui exportação H.265. Adobe Media Encoder suporta HEVC se tem o codec apropriado instalado no seu sistema. Se HEVC não está disponível no Media Encoder, codifique para ProRes e utilize FFmpeg para transcodificar ProRes para H.265 depois.

Qual é a diferença entre CRF e taxa de bits?

CRF (Constant Rate Factor) tem como alvo qualidade percebida—o codificador ajusta a taxa de bits automaticamente com base na complexidade da cena. Taxa de bits é fixa—o codificador aloca a mesma quantidade de dados independentemente de a cena ser complexa ou simples. Utilize CRF para trabalho de qualidade; utilize taxa de bits quando tem requisitos rigorosos de tamanho de ficheiro.

Por que a codificação AV1 é tão lenta?

AV1 utiliza algoritmos mais complexos para alcançar melhor compressão do que H.264 ou H.265. Mais compressão significa mais cálculo. CPUs e GPUs modernas estão a ficar mais rápidas na codificação de AV1, mas ainda é intensiva em CPU em comparação com H.264. Para trabalho de render farm de alto volume, executamos codificação AV1 em nós dedicados quando o orçamento permite, ou mantemos H.265 para melhor proporção velocidade-compressão.

Devo codificar as minhas renderizações Blender como MP4 ou MOV?

MP4 e MOV são contentores (formatos de ficheiro). O codec dentro pode ser o mesmo (H.264, H.265, etc.). MP4 tem compatibilidade mais ampla; MOV é historicamente preferido no Final Cut Pro e alguns fluxos de trabalho Apple. Para a maioria dos entregáveis, MP4 é mais seguro. Se o cliente especificar, utilize o seu formato; caso contrário, MP4 é a nossa predefinição.


Leitura Relacionada: Para mais sobre optimização de fluxos de trabalho de render farm, explore o nosso guia completo de render farm. Se está a exportar imagens estáticas e sequências, verifique o nosso artigo sobre gestão de formatos de saída para renderizações 3D.

Recursos Externos: Para documentação detalhada de codec FFmpeg, visite o FFmpeg H.264 Encoding Guide e a Especificação de Codec AV1. A documentação de Media Encoder do Adobe cobre predefinições de exportação e configurações personalizadas.