Como posso mesclar dois arquivos mp4 sem perder qualidade?

47

Eu tenho dois arquivos mp4 de alta qualidade, que são de duas partes do mesmo programa.

Eu quero mesclá-los juntos em um arquivo, e eu geralmente uso o VirtualDub para mesclar meus arquivos ... Mas parece que não suporta o mp4.

Quais alternativas estão disponíveis (especialmente aquelas que não exigem recodificação)?

    
por Paolo Bergantino 19.09.2009 / 00:20

8 respostas

39

I usually use VirtualDub to merge my files, but it doesn't seem to support mp4. So what alternatives are there?

Avidemux . É como o VirtualDub, apenas com mais formatos suportados e codecs e filtros integrados. Eu sempre uso isso de preferência; ele une arquivos AVC + AAC.MP4 (sem recodificação) para mim.

Para se juntar a eles no AviDemux:

  1. Arquivo - > Aberto - > Selecione o arquivo
  2. Arquivo - > Anexar - > Selecione o arquivo
  3. Definir tudo como Copiar
  4. Arquivo - > Salvar - > FileName
  5. Espere ..

De acordo com os fóruns da AViDemux, este processo de junção é sem perdas ( link )

    
por 19.09.2009 / 14:05
29

Você pode fazer isso com o ffmpeg:

mkfifo temp0 temp1
ffmpeg -i input0.mp4 -c copy -bsf:v h264_mp4toannexb -f mpegts -y temp0 2> /dev/null & \
ffmpeg -i input1.mp4 -c copy -bsf:v h264_mp4toannexb -f mpegts -y temp1 2> /dev/null & \
ffmpeg -f mpegts -i "concat:temp0|temp1" -c copy -absf aac_adtstoasc output.mp4

Isso não recodifica nada, coloca-os em um novo contêiner de fluxo de transporte, o que facilita a concatenação e concatena-os novamente em um MP4. Se output.mp4 já existir, o comando falhará. A versão acima usa pipes nomeados, se você estiver em um sistema que não suporta aqueles que você teria que usar arquivos intermediários (como janelas):

ffmpeg -i input0.mp4 -c copy -bsf:v h264_mp4toannexb temp0.ts
ffmpeg -i input1.mp4 -c copy -bsf:v h264_mp4toannexb temp1.ts
ffmpeg -i "concat:temp0.ts|temp1.ts" -c copy -bsf:a aac_adtstoasc output.mp4
    
por 21.12.2012 / 17:39
12

Demuxer Concat

O demuxer de concat foi adicionado ao ffmpeg 1.1. Se a sua versão do ffmpeg for antiga, obtenha o mais recente binário estático aqui: link

Instruções

Crie um arquivo mylist.txt com todos os arquivos que você deseja concatenar no seguinte formulário (as linhas que começam com um traço são ignoradas):

# this is a comment
file '/path/to/file1'
file '/path/to/file2'
file '/path/to/file3'

Note que estes podem ser caminhos relativos ou absolutos. Então você pode codificar seus arquivos com:

ffmpeg -f concat -i mylist.txt -c copy output

É possível gerar este arquivo de lista com um bash for loop ou usando printf. Um dos seguintes itens geraria um arquivo de lista contendo cada * .wav no diretório de trabalho:

for f in ./*.wav; do echo "file '$f'" >> mylist.txt; done
printf "file '%s'\n" ./*.wav > mylist.txt

Fonte: ffmpeg wiki

    
por 02.03.2014 / 02:54
8

YAMB juntamente com MP4BOX é uma boa opção.
Faça o download de ambos e descompacte-os (não é necessária a instalação e juntos eles têm cerca de 5MB), no YAMB escolha Configurações e defina o caminho da pasta do MP4box.
Para juntar arquivos mp4, escolha Editing > Clique para entrar no suporte ...

    
por 19.09.2009 / 01:09
6

SUPER © (codificador e renderizador de player universal simplificado) fornece a seguinte saída adicional Processo:

Qualquer arquivo multimídia de entrada suportado pode ser processado:

      o Join Format-Identical Files.
      o Mux Video & Audio Streams.
      o DeMux Extract Streams. 

é claro, o MP4 é um formato suportado.

SUPER © é freeware.

    
por 18.02.2010 / 03:35
5

Tente usar o contêiner de vídeos da Matroska.

Primeiramente, você precisa de mkvtoolnix . Faça o download e instale-o, então você precisa acionar o mkvmerge GUI (a menos que você goste de ferramentas de linha de comando, o que é bom para mim - embora você possa querer olhar para a seção de vinculação de arquivos de a documentação do mkvmerge ).

Adicione seu primeiro arquivo clicando em "adicionar". Em seguida, clique em "acrescentar" e abra seu segundo arquivo. Definir o arquivo de saída, clique em "Iniciar muxing" na parte inferior e você vai longe!

Se o container não for adequado às suas necessidades, você poderá reencitá-lo ou tentar convertê-lo em algum outro formato ... Embora o MKV seja um recipiente muito bonito!

    
por 19.09.2009 / 13:08
1

Se você puder reproduzi-los em seu sistema / tiver um codec instalado, o Windows Movie Maker poderá ser a maneira mais rápida (e gratuita) de unir os dois arquivos. Você pode então usar o Virtualdub para converter em um formato diferente.

    
por 19.09.2009 / 00:24
1

Outra solução é o Open Video Joiner . Também faz efeitos de transição.

    
por 19.09.2009 / 13:46

Tags