Pular para o conteúdo
Whatplay
Todos os guias

Reprodução

Formatos de vídeo e áudio: contêineres, codecs e decodificação

5 min de leitura

Quando um aparelho diz que não consegue reproduzir um vídeo, quase nunca é porque o arquivo está corrompido: o mais comum é que ele não saiba ler alguma das peças. Um vídeo tem duas camadas: o contêiner, que é a caixa, e os codecs, que são a forma como a imagem e o som vão compactados lá dentro. Entender essa diferença poupa muita dor de cabeça.

O contêiner: a caixa

A extensão do arquivo (.mp4, .mkv, .ts) indica o contêiner. O contêiner junta em um só arquivo a faixa de vídeo, uma ou várias de áudio, as legendas, os capítulos e dados como o idioma de cada faixa. Ele não define a qualidade: um MKV e um MP4 com o mesmo conteúdo têm a mesma imagem.

  • MP4 (e sua variante M4V): o mais difundido. Abre em quase qualquer celular, navegador e TV.
  • MKV (Matroska): aberto e muito flexível. Aceita muitas faixas de áudio e legendas de quase qualquer tipo; por isso, é comum em acervos pessoais de vídeo. Algumas TVs e o Chromecast não o abrem do jeito que está.
  • TS (MPEG-TS): pensado para transmissões. Aguenta bem as falhas porque pode começar a ser lido em qualquer ponto. É o da televisão digital e o de muitos segmentos de HLS.
  • Outros: WebM (da web, com VP9 ou AV1), MOV (de muitas câmeras e celulares) e AVI ou FLV, mais antigos.

Os codecs de vídeo

Um codec compacta a imagem para que ela ocupe uma pequena parte do espaço que ocuparia sem compressão. Quanto mais moderno, mais qualidade por megabit, mas também mais trabalho para descompactar.

  • H.264 (AVC): o padrão universal há anos. Praticamente qualquer aparelho o decodifica por hardware. Se você quer que um vídeo rode em todo lugar, H.264 em MP4 é a aposta segura.
  • HEVC (H.265): chega a uma qualidade parecida com a do H.264 com um tamanho bem menor, e é comum em 4K e HDR. Os aparelhos recentes o decodificam por hardware; muitos antigos, não.
  • VP9: o codec aberto do Google, muito usado na web, com uma eficiência parecida com a do HEVC.
  • AV1: o mais recente e eficiente dos quatro, aberto e sem licenças pagas. Só os chips relativamente novos o decodificam por hardware.
  • Antigos: MPEG-2 (o dos DVDs e da televisão digital) e MPEG-4 Part 2 (Xvid, DivX). Ainda aparecem em arquivos antigos.

Um detalhe que dá trabalho é a profundidade de cor: um HEVC de 10 bits é mais exigente que um de 8 bits, e há aparelhos que abrem um e não o outro.

Os codecs de áudio

  • AAC: o áudio padrão do MP4 e de quase todo o streaming. Compatível com tudo.
  • AC-3 (Dolby Digital) e E-AC-3 (Dolby Digital Plus): som multicanal, 5.1 ou mais, de discos, transmissões de televisão e plataformas. Nem todos os celulares os decodificam.
  • DTS e TrueHD: áudio de alta qualidade dos discos Blu-ray. Poucos celulares os abrem sozinhos.
  • Opus: moderno, aberto e muito eficiente, frequente em WebM. Você também vai ver MP3, FLAC (sem perdas) e Vorbis.

Decodificar por hardware ou por software

Decodificar é descompactar o vídeo para exibi-lo. Um celular pode fazer isso de duas formas:

  • Por hardware: com um circuito do chip dedicado só a isso. Gasta pouca bateria, quase não esquenta e dá conta de resoluções altas, mas só conhece os codecs e perfis para os quais foi projetado. Quando falha, a imagem costuma ficar verde, preta ou em pedaços.
  • Por software: com o processador principal. Aceita mais formatos e é mais previsível, mas gasta mais bateria, esquenta e pode não dar conta de resoluções altas.

Como o Whatplay faz

O Whatplay usa os decodificadores do sistema e traz, além disso, um motor FFmpeg próprio para o que o celular não abre. Você escolhe em Configurações › Player › “Motor de reprodução” e, enquanto assiste a algo, em “Opções” › “Motor”:

  • Automático (o recomendado): primeiro os decodificadores do sistema; o FFmpeg entra só no que o sistema não abre, como DTS, TrueHD, MP2, AC-3 onde faltar ou o vídeo de 10 bits.
  • ExoPlayer: só o do sistema. Serve para descartar se um problema vem do FFmpeg.
  • FFmpeg: o FFmpeg na frente, também para o vídeo, por software. Para contornar um decodificador do celular que dá problemas.

Além disso, em Configurações › Player você tem “Decodificação por hardware” (“Desative se a imagem ficar verde ou preta”) e, em “Opções”, o seletor “Decodificador”, com Hardware ou Software. Se o decodificador do dispositivo falhar no meio, o Whatplay avisa (“O decodificador do dispositivo falhou: tentando o de software”) e continua sem que você precise fazer nada.

Para saber o que você está assistindo, abra “Opções” no player: abaixo do título aparecem a resolução, o codec, os Mb/s e os quadros por segundo, quando o vídeo informa esses dados. Cada faixa de áudio mostra o codec e os canais, por exemplo “AC3 5.1”.

E na TV

Ao enviar para um Chromecast, quem decodifica é a TV, não o celular. O que a TV não abre do jeito que está (um MKV, um Xvid, um HEVC em um Chromecast antigo), o celular converte enquanto você assiste, se Configurações › TV › “Converter vídeo para a TV” estiver ativado. Isso gasta mais bateria e esquenta o celular. Por enquanto, o vídeo HDR e o entrelaçado não são convertidos: se a TV não os abrir, eles só aparecem no celular. Há mais detalhes em A TV não abre um vídeo.

O que fazer se algo não aparece ou fica sem som

  1. Deixe o motor em Automático.
  2. Se há som mas não há imagem, ou se a imagem fica verde ou preta, mude o “Decodificador” para Software.
  3. Se há imagem mas não há som, teste o motor FFmpeg.
  4. Se nada funcionar, teste o mesmo vídeo em outro aparelho: se lá também não rodar, o problema está no arquivo ou na transmissão.

Se você vai preparar seus próprios vídeos, H.264 com áudio AAC em MP4 é a combinação que dá menos surpresas. A ajuda resume os formatos em Quais formatos ele reproduz?, e os termos técnicos estão no glossário de vídeo.

Outros guias

Não resolveu sua dúvida?

Escreva para a gente e nós ajudamos.

Fale com a gente

Telegram