Eu tenho dois *.avi
arquivos:
sequence1.avi
sequence2.avi
Como mesclar esses dois arquivos usando uma linha de comando ou GUI?
Existe uma ferramenta dedicada para fazer isso, avimerge
:
avimerge -o cd.avi -i cd1.avi cd2.avi
Se não estiver instalado, instale transcode: Avimerge faz parte do pacote transcode: https://manpages.debian.org/jessie/transcode/avimerge.1.en.htmlhttp: // manpages.ubuntu.com/manpages/bionic/man1/avimerge.1.html
Fácil com o mencoder (fornecido com o mplayer no Arch Linux):
$ mencoder -oac copy -ovc copy video1.avi video2.avi -o final.avi
Avidemux pode colar dois vídeos juntos, pelo menos se eles tiverem a mesma resolução e algumas outras restrições. Use "Anexar" no menu "Arquivo".
Você pode mesclar arquivos avi com avimerge
do pacote Transcode :
avimerge -i file1.avi file2.avi -o output.avi
Eu sei que não é uma ferramenta GUI, mas para ter uma GUI você pode usar esse script:
#!/bin/bash
file1=`kdialog --getopenfilename ~/ \*.avi`
file2=`kdialog --getopenfilename ~/ \*.avi`
output=`kdialog --getsavefilename ~/ \*.avi`
avimerge -i $file1 $file2 -o $output
Ele usa kdialog
para usuários do KDE, os usuários do GNOME devem modificá-lo para usar o Zenity ...
Se você não estiver conectado ao formato de contêiner AVI como saída, poderá obter a junção fácil e sem perdas de arquivos AVI na MKVtoolnix GUI. https://forums.plex.tv/t/howto-joining-multi-part-movies-files-with-mkvtoolnix-gui/113211 (As instruções neste link se resumem a: adicionar o primeiro arquivo AVI, clique com o botão direito do mouse em> anexar> escolha o segundo arquivo e clique em "iniciar muxing").
Isso também funciona para legendas, arquivos mp4 etc. Ele também tem a vantagem de um arquivo de saída mais confiável para reproduzir e transmitir em players modernos.
Que tal usar ffmpeg concat assim:
ffmpeg -f concat -i \
<(for f in $PWD/*.avi;do echo "file '$f'";done) \
-c copy output.avi
Se você receber um erro Nome de arquivo não seguro adicione -safe 0
entre concat
e -i
.