Posso compactar mais um arquivo compactado?

1

Eu tenho acesso a um servidor via SSH, eu faço o download de arquivos dele via SFTP ou HTTP. Eu quero puxar para baixo um arquivo .mkv 4.4GB, mas tenho largura de banda limitada.

Eu usei zip , gzip e p7zip , mas o arquivo sempre é de 4,4 GB após o processo de compactação. Depois de mexer em alguns dos argumentos CLI, consegui em uma tentativa de baixar o arquivo para 4.3GBs. Eu entendo que o arquivo de vídeo que eu tenho é um arquivo h.264 compactado. Eu não entendo porque eu não posso comprimir isso ainda mais (talvez uma pergunta para outro fórum de troca de pilha)

Existe alguma maneira de compactar em um nível de byte para que a ferramenta de compactação seja independente do conteúdo do arquivo (o que presumo que essas outras ferramentas sejam de qualquer maneira, mas elas não estão funcionando).

Existe talvez alguma outra maneira que eu posso puxar esse preenchimento usando menos de 4.4GBs? Eu não tenho tamanho de arquivo de destino em mente, mas 4,3 GBs por exemplo é inútil (apenas 2-3% ~ menos).

    
por jwbensley 25.12.2012 / 12:19

2 respostas

4

A compactação aproveita o fato de haver padrões nos dados que podem ser otimizados e indicados de maneira diferente. Isso resulta em uma redução drástica no número de padrões (já que, se um padrão fosse deixado, a compactação original poderia otimizá-lo em vez de deixá-lo no arquivo final), o que significa que outra rodada de compactação não pode executar muito mais redução no tamanho.

    
por 25.12.2012 / 20:37
10

Seu stream h264 provavelmente já estará altamente compactado. Provavelmente, ao tentar comprimi-lo ainda mais, você irá de fato aumentar o tamanho do arquivo (através da adição de cabeçalhos, etc.). Você não pode simplesmente continuar compactando um arquivo para um tamanho que você goste sem comprometer em outro lugar, gzip e outros compressores não são mágicos.

Provavelmente, a única maneira de fazer isso é recodificando o fluxo h264 para uma taxa de bits menor.

    
por 25.12.2012 / 12:27