Usando o avconv (ffmpeg) para concatenar um monte de .bmps em um vídeo mkv / avi

2

Tentando descobrir como obter o avconv para concatenar um monte de .bmps juntos em um arquivo de vídeo.

Aqui está o que eu tenho até agora:

avconv -f image2 -i Capture/%d.bmp -vcodec mpeg4 -r 24 -b:v 20M Capture.mkv

Enquanto isso funciona, a qualidade é terrível - há toneladas de artefatos visíveis, cores distorcidas e tudo borrado.

Eu vasculhei a documentação de avconv e ffmpeg , mas não consigo encontrar nada que aumente a qualidade.

Alguma idéia de como posso obter a qualidade mais próxima possível dos bmps originais?

    
por slhck 07.07.2012 / 22:45

3 respostas

4

-vcodec mpeg4

Esse pode ser o seu problema. O MPEG-4 é um codec razoavelmente bom, mas é facilmente superado pelo h.264 - x264, sendo um exemplo popular para um codificador h.264. Eu não tenho certeza do tamanho do papel que o bitrate desempenha aqui, mas ajudaria apenas tentar o x264. Portanto, use

-c:v libx264

para alterar seu codificador. * Para ajustar a qualidade, defina o Fator de taxa constante para um nível de sua escolha. Os valores são de 19 a 24, onde valores mais baixos significam melhor qualidade.

avconv -f image2 -i Capture/%d.bmp -c:v libx264 -r 24 -crf 21 Capture.mkv

Se você ainda vê artefatos, talvez queira nos fornecer mais informações e atualizar sua postagem com a saída completa e não cortada do console de seu comando avconv .

* -c:v é a nova sintaxe usada em vez de vcodec , semelhante a -b:v . Tente manter-se fiel a isso.

    
por 09.07.2012 / 23:28
0

Eu tive um problema semelhante. Para obter a melhor correspondência para o seu BMP, sugiro fazer o que fiz: converter para TIF ou JPEG, pois o avconv não lida muito bem com o BMP - não importa as configurações de alta qualidade que eu descobri e configurei.

Uma maneira visual de fazer isso é simplesmente obter o GIMP e o BIMP (que é um excelente programa em lote) e fazer uma conversão em lote de seus BMPs para JPEGs com 100% de qualidade ou TIF (você pode usar a compactação TIF).

Agora tente a mesma ação avconv. Eu usei avconv -f image2 -r 15 -i animation%04d.jpg -r:v 15 -c:v h264 -crf 1 -an "animation_test.mov" , mas ele deve estar bem com sua ação mkv agora.

    
por 25.03.2016 / 21:41
-1

Tente usar um codec de vídeo diferente. Ele pode funcionar apenas em arquivos QuickTime (não Matroska), mas qtrle é um codec de vídeo sem perdas, embora não seja muito compactado.

    
por 08.07.2012 / 03:50