2012-09-10 17:23:32 +0000 2012-09-10 17:23:32 +0000
44
44

Configurações do travão de mão para converter MKV para MP4, mantendo a qualidade original

Tenho uma tonelada de ficheiros MKV que preciso de converter para MP4 e o meu software escolhido é Handbrake.

Estou preso em que definições seria melhor para a conversão. Quero manter a qualidade total. Converto apenas com as definições originais e não altero nada ou há alguma coisa específica que eu precise de alterar?

Respostas (2)

87
87
87
2012-09-10 17:58:20 +0000

Qual é o problema com o travão de mão?

Quando utilizar o travão de mão para converter de um formato de contentor para o outro (ou seja, MKV para MP4 no seu caso), o travão de mão irá codificar novamente o vídeo. Ver também o respectivo pedido de recurso que teria permitido a passagem do vídeo:

Desculpe, a adição de passagem do vídeo não está planeada. O HandBrake foi concebido para ser um transcodificador de vídeo. Não foi concebido para permitir a passagem de vídeo.

Assim, sempre que mudar de contentores com Handbrake, o seu vídeo vai ser codificado novamente, o que significa que a) leva tempo e b) pode introduzir perda de qualidade.

Tenho de voltar a codificar? Não poderia eu simplesmente trocar o contentor?

Uma vez que a passagem não é possível, pergunte a si mesmo: Tenho de voltar a codificar? *Se quiser apenas mudar o contentor de MKV para MP4, *não precisa de codificar nada , basta mudar o “embrulho” à volta do vídeo. Isto não perde qualidade, e será um processo muito mais rápido.

Pode trocar facilmente os recipientes com FFmpeg - basta dizer-lhe para copiar os fluxos de vídeo e áudio:

ffmpeg -i input.mkv -c copy -map 0 output.mp4

Existem também ferramentas como MP4Box que também podem criar contentores MP4 - o mesmo existe para MKV com MKVtoolnix .

Contudo, há uma grande ressalva: isso só funciona se os codecs de áudio e vídeo forem suportados* no recipiente alvo (MP4), que é o caso para H.264/H.265 e AAC, por exemplo, mas não para muitos outros. Além disso, o suporte do formato de legendas para MP4 é diferente do MKV, e na verdade bastante restrito, pelo que este comando pode falhar.

Se este comando não funcionar, e ** se a sua entrada utilizar os codecs errados para o contentor de saída, terá provavelmente de recodificar**. Neste caso, os codecs serão adaptados ao contentor de saída.

Para compreender porque é que isto é necessário, é importante aprender a diferença entre codecs de vídeo e contentores . Isto irá ajudá-lo a compreender porque é que a mudança de contentores funciona e porque é que os contentores MP4 e MKV têm pouco a ver com os codecs de vídeo, na verdade.

Porque é que a re-encodificação é má, afinal?

Você não pode (normalmente) reter a qualidade total ao codificar um vídeo que já foi codificado. Isto porque o original já foi comprimido ao deitar fora informação, e ao fazê-lo novamente está a introduzir perda de geração &.

Muitas vezes, quer recodificar o vídeo quando, por exemplo, as suas dimensões mudam, ou precisa de uma taxa de bits específica para comprimir o seu fluxo de vídeo, ou o seu vídeo original utiliza um codec que não pode reproduzir por qualquer razão.

Então, se carregar o seu vídeo MKV no travão de mão, e o recodificar com x264, o codificador H.264 que o travão de mão usa, armazena-o num contentor MP4, vai perder qualidade não importa o quê, a não ser que defina a taxa de bits ou o factor de qualidade tão alto que (realmente) não verá a diferença. Mas então, o tamanho do ficheiro será também maior.

No caso ideal, converteria o vídeo para um vídeo não comprimido, que não perderá qualquer qualidade, mas dar-lhe-á ficheiros de uma dúzia de Gigabytes em tamanho, mesmo durante alguns minutos de material de vídeo.

Está bem, mas tenho mesmo de codificar de novo!

Se você realmente tem de recodificar, certifique-se de não definir uma taxa de bits média, mas escolha um Fator de Taxa Constante , que é algo como “qualidade constante”. Tal como “taxa de bits variável” para MP3: Vai certificar-se de gastar os bits nas partes do vídeo que precisam deles e melhorar a qualidade geral - com o mesmo tamanho de ficheiro. Os valores

Sane CRF são de 19 a 24, onde mais baixo significa “melhor”. Portanto, poderia tentar com um Factor de Taxa de 19. Além disso, certifique-se de definir o perfil “Alto”, que permite ao codificador utilizar todos os sinos e apitos e optimizar a qualidade para uma determinada taxa de bits.

4
4
4
2014-11-15 12:52:09 +0000

Isto funciona muito bem para mim. Abaixo está o código para converter todos os ficheiros .mkv para .mp4 no Windows.

  • Pode ser necessário adicionar ffmpeg ao seu caminho. pode simplesmente colocar o caminho completo para o executável ffmpeg, D:\apps\ffmpeg\bin\ffmpeg.exe
  • Descarregar ffmpeg para windows aqui.
  • Utilização: Deixar cair um ficheiro .mkv sobre ele. Ele irá fazer todo o directório.

  • Guardar num ficheiro chamado convert.bat.

for %%a in ("*.mkv") do ffmpeg.exe -i "%%a" -vcodec copy -acodec copy "%%~na .mp4"
pause