Guia OTT para codecs, formatos de contêiner e transcodificação
Se o título deste artigo já não fizer a sua cabeça doer, então o resto definitivamente o fará. Bem, espero que eu possa explicar de uma forma que faça sentido para a pessoa não técnica. Eu estou escrevendo este artigo sobre codecs de vídeo / áudio porque eu me encontrei confuso ao tentar explicar isso para um amigo um dia.
O que exatamente é um codec? Eu sei que você precisa deles para tocar um filme aqui e ali, mas o que diabos é isso realmente? O que realmente me confundiu foram todos os termos que eu ouvi falar, mas nunca entendi realmente: H.264, DivX, MP4, AVI, MPEG-2, AVCHD, AAC, OGG, MKV, etc, etc. Eram todos esses codecs? Depois de muita leitura e aprendizado, percebi que o mundo dos codecs de áudio e vídeo e dos formatos de contêiner é muito confuso. Na verdade, eu nem sabia a diferença entre um codec e um formato de container até eu começar a pesquisar.
Eu não vou entrar em muitos detalhes, só porque o tópico começa a ficar muito rápido. Você realmente se importa se 1 hora de vídeo não comprimido de 60 quadros por segundo de 1080p RAW consumir quase 500 GB de espaço de armazenamento? Provavelmente não.
O que é um codec?
Então, o que exatamente é um codec e o que ele faz? Nos termos mais simples possíveis, um codec é um codificador / decodificador ou, em sua forma original, um compressor (co) descompressor (dec). Isso é exatamente o que um codec faz: ele pega um arquivo digital e o compacta (ou codifica) para armazenamento e descompacta (ou decodifica) para visualização ou transcodificação. Eu vou te dizer o que a transcodificação é um pouco mais tarde, não vamos nos confundir tão cedo.
O importante é entender que um codec é como uma especificação de como o fluxo de bits deve ser. O que é um fluxo de bits? Para não ficar muito técnico, é como a sequência de bytes deve ser organizada para esse codec específico. Cada codec tem um conjunto específico de diretrizes. Por exemplo, ele pode especificar a largura, a altura, a proporção, etc. Confira esta página, mas não leia muito ou sua cabeça vai doer:
http://www.cs.cf.ac.uk/Dave/Multimedia/node262.html
Porque é uma especificação, pode-me muitas maneiras de converter dados para esse formato. Portanto, pode haver muitos codificadores para um codec. Vou explicar mais sobre codificadores na seção Popular Codecs abaixo.
Então, por que precisamos de toda essa compressão e descompressão? Bem como eu mencionei acima, um arquivo 1080p não comprimido RAW é quase um gritante 500GB por apenas uma hora. Você precisaria do seu próprio data center para armazenar todos os seus vídeos da família se tudo estivesse gravado nesse formato. É aí que as compressões entram em jogo. Existem diferentes tipos de compactação, que se traduzem em diferentes tipos de codecs. Então, quais são alguns codecs populares?
Codecs Populares
H.264 (MPEG-4 Parte 10 AVC) - Isso também é oficialmente conhecido como MPEG-4 Part 10, mas o H.264 é o que você ouve normalmente. Sim, também há vários nomes para a mesma coisa. O H.264 é de longe o formato mais popular para codificar vídeos. O H.264 oferece o melhor de todos os mundos: tamanhos de arquivo menores com maior qualidade.
Novamente, lembre-se, o H.264 é apenas o codec, você não encontrará nenhum arquivo com extensões .h264. É para isso que servem os formatos de contêineres, o que explicarei na seção abaixo. Este codec é usado em todo o lugar de smartphones para filmadoras digitais para discos Blu-ray. Ele também é usado para fornecer muitos vídeos da Web hoje, por causa de sua capacidade de oferecer excelente qualidade de imagem com alta taxa de compactação e baixa taxa de bits, o que significa menos esforço nos servidores de streaming.
Também é altamente suportado e provavelmente será o codec mais popular por um longo tempo. É suportado pela Apple, YouTube, HTML 5 e até mesmo no Adobe Flash.
A única desvantagem do H.264 é que os algoritmos de compactação são tão bons que é muito mais lento codificar um vídeo nesse formato. Você vai descobrir mais sobre isso quando falamos de transcodificação abaixo.
Como eu mencionei acima, existem vários codificadores para um único codec. Para o codec H.264, um dos codificadores mais populares é x264 da VideoLAN, as mesmas pessoas que criam o VLC Media Player. O x264 é gratuito e de código aberto, mas há muitos codificadores H.264 comerciais também. Não importa como o fluxo de vídeo é convertido neste formato, qualquer decodificador H.264 (como o VLC) poderá visualizar o arquivo.
MPEG-2 - Ainda tem uma grande coleção de DVD? Tudo isso é feito usando o codec MPEG-2. É muito antigo, mas muito comum. O outro lugar onde você encontra a compressão MPEG-2 é quando assiste a esses canais em HD transmitindo pelo ar. Isso é tudo compressão MPEG-2. Coisas interessantes para saber, certo?
Como o algoritmo para compressão usando MPEG-2 é muito inferior ao H.264, ele tem a vantagem de ser muito mais rápido para codificar. No entanto, nunca funcionou para streaming na web porque, com uma taxa de bits mais baixa, a qualidade rapidamente diminuía e você acabaria com um vídeo pixelado. É por isso que eles vieram com o MPEG-4 Parte 2.
MPEG-4 parte 2 - Você provavelmente se lembra dos dias em que tudo falava sobre DivX e Xvid, certo? Esses eram codificadores para o formato MPEG-4 Part 2, também conhecido como H.263. Um monte de filmes que você baixou de volta no dia foram compactados usando este codec porque lhe deu um bom tamanho de arquivo e manteve uma qualidade razoável. No entanto, o único grande problema é que o conteúdo de alta definição ainda sofreu em termos de qualidade de imagem e é aí que o H.264 que eu mencionei acima assumiu.
Vídeo do Windows Media - Esta é basicamente a versão da Microsoft dos codecs MPEG-4. O WMV 7 foi introduzido em 1999 e era uma cópia do MPEG-4 Part 2. Mais tarde, o WMV 8 e 9 veio, seguido pelo VC-1, um codec que copia principalmente o MPEG-4 Part 10 e é usado atualmente em Blu-ray. discos também. Os únicos outros locais em que você vê o WMV e o VC-1 são principalmente os produtos relacionados à Microsoft, como o Windows Movie Maker, o Silverlight, o HD DVD e o Microsoft Expression Encoder, etc..
Estes são apenas os codecs de vídeo populares, você também tem seus codecs de áudio, que entram em jogo quando falamos sobre contêineres abaixo. Os codecs de áudio populares incluem FLAC, AC3, Dolby Digital Plus, DTS-HD, ALAC, etc. Tal como acontece com o vídeo, os codecs de áudio têm seus próprios formatos de contêiner, como AIFF, WAV, etc..
Estes não são de forma alguma todos os codecs existentes, é apenas uma lista de alguns dos mais populares. Agora vamos falar sobre formatos de contêiner.
Formatos de contêiner
Quando você reproduz um arquivo no Windows Media Player ou no VLC ou no Quicktime ou qualquer que seja o seu reprodutor de mídia de sua escolha, normalmente você está abrindo um formato de contêiner. Um formato de contêiner ou wrapper é basicamente um pacote de um ou mais codecs, vídeo ou áudio ou ambos. Um contêiner é usado para adicionar áudio junto com o vídeo e para garantir que o áudio e o vídeo estejam perfeitamente sincronizados. O contêiner também conterá outras informações necessárias por um servidor de streaming ou pelo media player. Os fluxos de bits de vídeo e áudio são apenas envolvidos em outro fluxo de bits.
Formatos de contêineres são onde você vê as extensões de arquivo comuns que todos nós usamos também como MP4, MOV, WMV, AVI, etc. Vamos ver alguns dos contêineres mais comuns:
MP4 - Você provavelmente baixou uma música que tinha uma extensão .MP4, que é um invólucro para muitos codecs de vídeo e áudio. Mais comumente, é usado para envolver vídeo codificado em H.264 e áudio codificado por AAC. Ele também suporta codecs de vídeo MPEG-4 Parte 2 e MPEG-2 também. Além disso, o áudio pode ser codificado usando outros codecs que não sejam AAC.
AVI - Este é um formato de contêiner da Microsoft de 1992. Foi muito popular no meu dia e ainda está por aí. Se você fizer alguma codificação, nunca mais deverá usar o formato de contêiner AVI. Em primeiro lugar, não suporta codecs mais recentes como o H.264. Ele também tem alguns outros grandes problemas e é por isso que não é mais usado.
ASF - O Advanced Systems Format da Microsoft normalmente não usa a extensão de arquivo .ASF. Em vez disso, você verá que a maioria dos contêineres ASF usa .WMA ou .WMV. Você verá esses arquivos se estiver usando todos os produtos da Microsoft. Depois de sair do mundo da Microsoft, você encontrará problemas ao reproduzir os arquivos, especialmente se usar o codec H.264.
AVCHD - AVCHD é o formato de contêiner mais comum para camcorders HD. O vídeo normalmente será H.264 com áudio AC3 (Dolby Digital) ou PCM Linear.
MKV - Baixe um filme ultimamente? É provavelmente no formato de contêiner MKV, que abriga arquivos de vídeo H.264. Muitas ferramentas suportam MKV como o Boxee, o PS3 Media Server, o XMBC, o VLC, etc., mas não são tão amplamente suportadas como outros formatos de contêineres ainda.
FLV - Este é o Adobe Flash, que suporta muitos codecs diferentes, sendo os mais comuns H.264 e AAC. O vídeo em Flash é uma das maneiras mais populares pelas quais os vídeos são transmitidos pela Internet. Está perdendo terreno devido ao HTML 5 e ao fato de que a Apple não permite que o flash seja executado em qualquer um dos iDevices, mas ainda é muito comum.
Existem outros formatos de contêineres como o formato de arquivo QuickTime, OGG, WebM, etc, mas você meio que consegue a foto agora.
Transcodificação
A última coisa a entender sobre tudo isso é que você provavelmente terá que converter o vídeo AVCHD que você baixou de sua camcorder para um formato diferente que você pode importar para o iTunes e reproduzir no seu iPhone. Como existem muitos codecs e formatos de contêiner e cada formato de contêiner pode ter diferentes combinações de codecs de áudio e vídeo, você precisa de um transcodificador para obter o tipo de arquivo desejado para o dispositivo em questão..
Existem muitos transcodificadores, também conhecidos como conversores de vídeo: HandBrake, FFmpeg, SUPER, VirtualDub, etc. Alguns são pagos e outros são ferramentas gratuitas de código aberto. Algumas ferramentas, como o HandBrake, fornecem predefinições para que você possa simplesmente escolher o arquivo de origem e escolher um formato de saída, como o iPod ou iPhone, e clicar em Iniciar. Ele irá escolher todas as configurações, container, codec, etc para você. No entanto, esperamos que, depois de ler este post, você compreenda um pouco mais e possa converter vídeos entre formatos e entender um pouco melhor o processo subjacente. Apreciar!