TL; DR:
- O Windows 8 pode reproduzir vídeo codificado em x264, desde que esteja em um arquivo MP4 ou 3GP ( referência )
- Arquivos AVI podem funcionar, mas não precisam, porque o AVI não suporta tudo o que o x264 oferece.
Para mais informações, mostrarei a resposta que publiquei aqui: O que é um codec (por exemplo, DivX?), e como ele difere de um formato de arquivo (por exemplo, MPG) ? Isso vai muito além do que estou escrevendo aqui, mas, para essa questão, podemos reduzi-lo um pouco.
O que é x264?
Portanto, em primeiro lugar, libx264
é uma biblioteca FFmpeg que permite ao FFmpeg codificar vídeo usando o codificador x264 . O x264 novamente é apenas um codificador que codifica o vídeo no padrão de codec H.264 - também conhecido como MPEG-4 Parte 10 AVC / Advanced Video Coding. O codec ("codificador / decodificador") simplesmente especifica um padrão que os codificadores e decodificadores devem seguir.
Como há apenas um padrão de codec, há muitos outros codificadores H.264 além do x264, como o Mainconcept ou até mesmo um built-in de FFmpeg. Mas x264 é gratuito, de código aberto, muito eficiente e oferece boa qualidade, e é por isso que é usado com tanta frequência.
Por que precisamos de um contêiner?
O x264 só pode codificar o vídeo real. Você poderia, teoricamente, apenas armazená-lo em um arquivo .264
, e seria um bit / bytestream de vídeo válido. Sem áudio, sem legendas, etc. Mas, muitas vezes, você não quer apenas assistir a vídeos sem áudio. É por isso que precisamos mesclar vídeo, áudio e legendas em um arquivo. Esse arquivo é chamado de container , pois contém todas as faixas de mídia individuais.
Um contêiner sincronizará os quadros de áudio e vídeo de acordo com o PTS (Carimbo de hora de apresentação), o que garante que eles sejam exibidos exatamente ao mesmo tempo.
Contêineres populares atualmente incluem…
-
MP4 , abreviação de MPEG-4 Parte 14, não deve ser confundido com padrões de codec de vídeo, como vídeo MPEG-4 Parte 2 (por exemplo, codificado por XviD) ou MPEG-4 Part 10 vídeos (o H.264 do qual falamos acima, por exemplo, x264-codificado).
-
MKV , abreviação de Matroska, um contêiner que pode incluir quase tudo você alimenta.
-
AVI , um formato de contêiner muito antigo que é compatível com praticamente qualquer lugar, mas não suporta muito em si. Não use a menos que você realmente precise.
Para resumir: Codecs são armazenados dentro de um contêiner. Os codecs representam a mídia real e os contêineres apenas os agrupam em um arquivo. Você poderia chamá-los de "formatos", mas não use esse termo porque é ambíguo.