Os vídeos compactados podem ser decodificados de volta ao formato original não compactado?

Os vídeos compactados podem ser decodificados de volta ao formato original não compactado?

O seguinte é mencionado nodocumentação do ffmpeg.

ffmpeg chama a biblioteca libavformat (contendo desmultiplicadores) para ler arquivos de entrada e obter pacotes contendo dados codificados deles... Pacotes codificados são então passados ​​para o decodificador... O decodificador produz quadros não compactados (vídeo bruto/áudio PCM/... ) que pode ser processado posteriormente filtrando...

Isso significa que você sempre pode extrair os vídeos originais de tamanho grande de todos os formatos/codecs compactados como h.264?

Responder1

A compactação de vídeo normalmente é "com perdas", em contraste com "sem perdas".

Isso significa que, ao compactar os dados e, posteriormente, descompactá-los, você obtém uma aproximação do original que é (espero) aceitável para o propósito.

Armazenar imagens e vídeos usando técnicas de compressão com perdas geralmente é bom, porque os humanos não são muito bons em perceber os detalhes de uma imagem - por exemplo, nosso cérebro pode preencher muitos detalhes apenas a partir do contexto (já que nossos olhos têm apenas uma pequena área no centro que é de "alta resolução"), e nossos olhos são mais sensíveis à intensidade do verde do que do vermelho ou do azul (o que explica a alocação no RGB565).

Então, quando você diz:

Isso significa que você sempre pode extrair os vídeos originais de tamanho grande de todos os formatos compactados como mp4?

Você está fazendo uma pergunta, mas deixando muitas aberturas para interpretações erradas.

  • Podemos extrair a imagem original com pixels perfeitos de um vídeo compactado usando técnicas com perdas?
    • Não
  • Podemos extrair um único quadro de um vídeo compactado usando técnicas com perdas que tenha alta qualidade e possa ser usado como uma imagem estática?
    • Provavelmente não- o movimento em uma cena causará um número maior de artefatos, enquanto uma cena estática normalmente ficará cada vez melhor com o tempo.
  • Podemos extrair uma imagem do tamanho original, que pareça "razoável"para um humano?
    • Sim- para uma determinada definição de "razoável"

Esta imagem resultante imperfeita terá "Artefatos de compressão". Conforme mostrado nos exemplos exagerados abaixo:

bom/100% JPEG

ruim / 5% JPEG


Como os comentários também se concentraram fortemente na qualidade do áudio, ocorre exatamente a mesma coisa. No entanto, o áudio é um meio de largura de banda significativamente menor, o que permite que codecs sem perdas sejam práticos (por exemploFLAC).

A conversão de PCM / WAV → MP3 → PCM resultará em um arquivo PCM de saída que contém os artefatos introduzidos pelo processo de codificação/decodificação de MP3 - eles não podem ser removidos.

Além disso, a concatenação de codecs permitirá que cada um introduza seus próprios artefatos, e a ordem em que os codecs são aplicados pode ter um efeito significativo na saída.

Converter PCM → MP3 → OGG vorbis → Opus énãoo mesmo que PCM → Opus, porque cada um dos codecs intermediários apresenta perdas.

Eu criei um exemplo de arquivo de áudio que apresenta isso como outroexemplo exagerado. Estes são os primeiros cerca de 30 segundos de "Essa noite" por "Os 69 Olhos", alternando a cada 5 segundos entre as seguintes cadeias:

  • CD → FLAC → Opus
  • CD → FLAC → MP3 → Vorbis → Opus

O efeito aqui é dramático, com as frequências mais altas (ou seja: high-hat) sendo quase completamente removidas do áudio, e com interação significativa do canal (esquerdo/direito) que é especialmente perceptível no início.

comparar

Responder2

Uma resposta curta paracodecsem geral:
Qualquercodec sem perdascomoFLACoufecho eclairpode ser revertido exatamente.
Qualquercodec com perdascomoJPEGouMP3não pode ser revertido exatamente.

Este princípio também é válido paracodecs de vídeo.
AquiHuffYUVé um exemplo de codec de vídeo sem perdas.
Ex264é um exemplo de codec de vídeo com perdas.

Responder3

Isso significa que você sempre pode extrair os vídeos originais de tamanho grande de todos os formatos compactados como mp4?

Não. Você está interpretando mal essa frase.

Você não pode exibir uma imagem compactada, assim como não pode ler texto compactado ou ler arquivo compactado com ZIP sem descompactá-lo primeiro. Para exibir qualquer imagem, você precisa representá-la de alguma forma descompactada na memória, pixel por pixel.

Isso não significa que a imagem descompactada será idêntica à original - isso depende dos codecs usados. Até onde eu sei, não existem codecs sem perdas comumente usados. Os codecs com perdas visam representar o original de maneira suficientemente próxima para tornar o vídeo não compactado indistinguível em circunstâncias normais, ou seja. quando jogado na resolução e taxa de quadros previstas. Ao observar imagens estáticas compactadas (ou seja, taxa de quadros = 0), você certamente verá artefatos, a menos que a taxa de bits durante a compactação seja definida de forma impraticável (ou seja, produzindo arquivos de saída muito grandes) (esta respostameu está de alguma forma relacionado).


A propósito, MP4 é apenas umarquivoformato, ou seja. informa como os dados compactados são armazenados em um arquivo, mas não determina como eles foram compactados. MP4 pode funcionar com uma variedade de codecs. H.264 é provavelmente o codec de vídeo mais popular usado com MP4, mas não me cite sobre isso. O áudio geralmente é compactado com AAC, eu acho.

Responder4

Este é um erro muito comum.

Você pode converter de um formato com perdas para um formato sem perdas, maso dano está feito.

O arquivo de saída sem perdas mostrará todos os danos (detalhes comprometidos, artefatos adicionados) que são o motivo pelo qual você não gosta do formato com perdas. Você não pode recuperar isso.

A única opção é entrar em contato com o editor e ver se ele ainda possui os arquivos originais sem perdas e se estaria disposto a carregá-los de alguma forma para você.

Não existe tal coisa comoBotão Aprimorar.aviso: TVtropes

informação relacionada