Eu tenho usado a GUI (clique com o botão direito => compactar) para tentar compactar um .tar contendo 3 vídeos no total de 1,7gb (.H264 MP4s). gzip, lrzip, 7z etc. tudo não faz nada com o tamanho do arquivo e a pasta compactada também tem 1,7 gb.
Tentei executar o lrzip na linha de comando (no caso de um problema de interface gráfica) e usei o sinalizador -z (compressão extrema), e essa foi a minha saída.
Como mostra a taxa de compactação, o tamanho real da pasta compactada é maior que o original! Não sei por que não estou tendo sorte, o lrzip em particular deve ser eficaz de acordo com as análises aleatórias que li e os documentos oficiais (arquivos maiores que 100mb, quanto maior, melhor) - consulte https: //wiki.archlinux. org / index.php / Lrzip
Por que não consigo compactar meus arquivos?
Respostas:
Como o @pram disse acima no comentário, os vídeos em mp4 já estão compactados e outros formatos de vídeo provavelmente também usam a compressão em certa medida. Portanto, tentar compactá-los não resultará em pequena (se houver) redução no tamanho (isso também se aplica, pelo menos em parte, a imagens e músicas). Nesse caso, parece que os metadados (para o próprio arquivo compactado) podem estar causando o aumento. O único formato de compactação que pode (e é forte) resultar em alguma redução é xz.
Em outra nota, se você deseja reduzir o tamanho desses vídeos, procure recodificá-los usando algo como o Handbrake.
fonte
Realmente, o fato de os arquivos já estarem compactados não é o problema crucial. É isso: a compactação em geral só pode funcionar se os dados tiverem algum tipo de redundância . Esse é praticamente sempre o caso de arquivos não compactados - no entanto, não é necessariamente óbvio qual é a redundância. Os algoritmos de compactação de uso geral visam principalmente o tipo de coisa óbvia nos arquivos de texto: muitas palavras aparecem não apenas uma vez, mas muitas vezes de forma idêntica, talvez frases de palavras possam ser combinadas etc. etc. Os algoritmos são muito bons em generalizando isso para qualquer coisa, de listas de números de telefone codificados em ASCII sobre poesia chinesa a código de máquina binário, mas eles não podem funcionar para qualquer tipo de dados. Em particular, os arquivos de mídia são conceitualmentedados analógicos , em uma representação digital barulhenta. Isso significa que não há realmente nenhum tipo de redunção de arquivo de texto: alguns motivos podem ser recorrentes, mas sempre com uma configuração ligeiramente diferente do ruído do sensor. É por isso que todos os formatos de imagem / AV compactados usam alguma transformação habilmente escolhida como sua primeira etapa de codificação, normalmente baseada em DCT ou wavelets . Essas transformações, grosso modo, movem as porções de imagem e porções de ruído para locais diferentes, para que possam ser separadas e com compressão com perdas, você retém apenas as informações que considera mais "importantes", que não incluem o ruído, enquanto as " boa informação "tem muita redundância. (Não é assim que funciona, mas é o que acontece.)
Se os compressores de uso geral usassem essas transformações, o efeito seria o oposto: a maioria das informações digitais seria na verdade classificada erroneamente como algum tipo de ruído, porque carece da estrutura "suave" encontrada nos sinais analógicos. E após a compactação de vídeo com perda, obviamente não é mais possível encontrar a suavidade analógica ou a recorrência digital (se fosse, os codecs usariam outro estágio bzip ou algo parecido!)
fonte
O motivo de você não ter sorte é que o mp4 já está compactado, não é possível compactá-lo ainda mais. Tudo o que você está fazendo é adicionar as informações do cabeçalho do formato de compactação ao arquivo.
Como os arquivos já estão compactados e você não pode compactá-los mais, isso resulta em um aumento no tamanho do arquivo, pois tudo o que você faz é manter as mesmas informações e adicionar mais alguns bytes de informações do cabeçalho.
fonte
Este é um bom exemplo do princípio do buraco de pombo .
Como o arquivo já está compactado (com perdas), há pouca ou nenhuma redução em qualquer lugar, o que significa que você já está com ganho líquido zero. Como os outros mencionados, o próprio formato compactado possui uma perda geralmente insignificante em seus próprios metadados. Tudo isso se reúne significa que provavelmente não resta nenhum buraco no conjunto de arquivos iguais ou menores e, portanto, seus dados compactados se enquadram no conjunto de arquivos maiores.
fonte
Se você deseja compactar esses arquivos, terá que reduzir a qualidade.
Sem saber por quanto tempo e que formato e tipo de conteúdo esses arquivos são difíceis de determinar se esses arquivos têm espaço para serem reduzidos sem muita perda de qualidade visível.
Os BluRays com vídeo 1080p tendem a ter mais de 25 GB, portanto não é improvável que você já tenha uma ótima relação qualidade / tamanho para o H.264.
Você pode tentar usar
ffmpeg
ouavconv
converter arquivos.Você poderia começar com
ffmpeg -i input_file.mp4 -preset slower -crf 20 -c:a copy output_file.mp4
O
anconv
comando funcionará de maneira semelhante.Aumente o
-crf
valor para diminuir o tamanho e a qualidade do arquivo, não recomendo mais que 25.Você pode alterar a predefinição para
slow
oumedium
para aumentar a velocidade, mas o tamanho do arquivo sofrerá comparaçõesslower
ou até mesmoveryslow
(se você for muito paciente!).Mais configurações podem ser encontradas aqui: http://mewiki.project357.com/wiki/X264_Settings
Eu recomendo ficar longe da maioria, pois as predefinições fornecem padrões saudáveis,
-tune
sendo a exceção.Tente um denoiser se o conteúdo for filme (
-vf hqdn3d
), você pode melhorar a qualidade visual em comparação com o uso de um-crf
valor alto .Reduza o conteúdo
-vf scale=-1:720
para 720p e-vf scale=-1:480
480p para melhorar a velocidade da codificação e manter a qualidade.fonte