Concatenando vídeos com o ffmpeg
Enviado por Andre Noel (andrenoelΘubuntu·com):
“Esses dias precisei juntar alguns vídeos num só e daí tive aquele pensamento comum: “no ffmpeg vai ser mais rápido”.
Daí fui no site que tira todas as minhas dúvidas (google) e ele me indicou uma solução interessante: Basta você converter todos os vídeos para mpeg e concatenar usando o comando cat. Isso mesmo, o cat mesmo.
Veja mais no post.” [referência: andrenoel.com.br]
• Publicado por Augusto Campos em
2010-07-10
Bem, mas note que isso pode causar problemas, lembrando que o MPEG Video File (.mpeg) é bem ultrapassado, so funciona se os arquvios forem identicamente criados (por exemplo se eles forem encodificados e depois cortados, se vc cortar primeiro e encodificar depois é bem possivel que cause problemas).
Em geral, containers mais modernos tem a opção de append/merge. Matroska (.mkv) e MPEG-4 Part 14 (.mp4) tem essas opções (eu tenho experiencia só com o matroska).
Para mkv algo assim funciona
mkvmerge -o junto.mkv 1.mkv +2.mkv +3.mkv +4.mkv
Matroska (e o mkvmerge do mkvtoolnix) são bem avançados, eles arrumam capitulos (adicionando edições), legendas e tudo mais.
Para o mp4 usando o MP4box, funciona assim
MP4box -cat 1.mp4 -cat 2.mp4 -cat 3.mp4 -new junto.mp4
(Mas leia o manual, eu usei isso uma vez só, não lembro direito)
Para o outro caso muito comum, o container .avi, o avimerge do pacote transcode tem funcionado muito bem para mim. Mas avi tb é um container antigo, e o avimerge tem varias limitações.
A minha recomendação é que quando possivel você deve remuxar o seu conteudo para um container mais avançado, o Matroska, e utilizar os seus recursos avançados.
Porem remuxar para mpeg, quase nunca é uma boa opção…
(PS. Me desculpe pelo portugues…)
Eu vi e usei essa dica ontem! Funcionou perfeitamente. Só não sei por que a opção de usar o caractere curinga * não deu certo comigo, mas já favoritei a página!
lol, container estranho
@kazuo:
valeu pela dica, o Matroska é realmente um ótimo container (além da boa especificação tem boas ferramentas já prontas)
Mas que porcaria de dica. Ao juntar arquivos de vídeo a ÚLTIMA coisa a fazer é coventer NOVAMENTE para qualquer outro codec, pois será mais qualidade perdida.
Ainda bem que o Kazuo salvou a pátria e deu boas dicas com o mkvmerge e o mp4box. E eu complemento: para juntar arquivos AVI o mencoder dá conta do recado.
Canso de usar isso aqui e funciona perfeitamente bem, sem reconverter nada, apenas remuxando:
mencoder -oac copy -ovc copy -idx video1.avi video2.avi -o final.avi
matroska rulez, aqui estava baixando um vídeo via torrent, e eu pude assistir as partes que tinha baixado, sem perda de desempenho, isso para mim parece impossível com flv e alguns outros, mas o suporte no matroska é incrível.