Herramienta de terminal para unir videos mp4

14

Me gustaría unirme a videos mp4 como me uno a los archivos PDF pdfjoin.

¿Hay alguna herramienta predeterminada para unir videos?

Léo Léopold Hertz 준영
fuente

Respuestas:

15

Sí, puede unir varios videos en un archivo usando los comandos de terminal predeterminados. Usar un simple cathará lo que quieras.

cat video1.avi video2.avi videon.avi > output.avi

Hay un gran pero aquí: este método generará el encabezado video1.avi en output.avi. Por lo tanto, el encabezado de output.avi es el mismo que video1.avi, por lo que en la mayoría de los reproductores de video, se verá como video2.avi y videon.avi se pierden: fuente 1 , fuente 2 .

Para solucionar esto, necesita herramientas adicionales. Hay muchas otras herramientas de terminal para unir películas que también actualizan el encabezado. Las herramientas de edición de video más conocidas son mencoder (que es parte de MPlayer) y ffmpeg . Ambos tienen una enorme cantidad de opciones y configuraciones y está más allá de este foro entrar en muchos detalles, pero daré los comandos a continuación.

El uso e instalación de mencoder o ffmpeg puede ser intimidante, pero las capacidades de edición de video son las más poderosas que he encontrado hasta ahora. Como la instalación desde el origen puede ser una molestia para los usuarios nativos de OS X, le aconsejo que use Homebrew .

Para instalar estas herramientas usando Homebrew , ejecute este one-liner en su terminal:

ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go)"

Homebrew ya está instalado, es aconsejable seguir las sugerencias del instalador después de la instalación. Ahora instalamos ffmpeg y mencoder usando brew.

brew install ffmpeg mplayer

Ahora podemos usar mencoder para fusionar los dos videos:

mencoder -oac copy -ovc copy -idx -o output.mp4 video1.mp4 video2.mp4 video3.mp4

O podemos usar ffmpeg para fusionar los dos videos:

 ffmpeg -i concat:"video1.mp4|video2.mp4" -codec copy output.mp4

Usted solicita específicamente archivos .mp4. mp4es un formato contenedor, es posible que la instalación predeterminada de ffmpego mencoderno tenga los paquetes de codificación / decodificación ('códecs') correctos de forma predeterminada y que necesite instalarlos por separado. Pero eso está más allá del alcance de este tema.

PrimoCocaína
fuente
Tenga en cuenta que es posible que deba escapar del carácter "|" que es especial para muchas conchas, así que ffmpeg -i concat: video1.mp4 \ | video2.mp4
CousinCocaine
2
Usar comillas simples ('') podría ser más fácil que escapar del carácter de la tubería. En el comando utilizado en la respuesta, no importa de ninguna manera.
nohillside
Muy buena respuesta con una explicación clara. ¡Gracias!
Léo Léopold Hertz 준영
2
Intenté instalar Homebrew usando el comando de terminal como se describe en esta respuesta y obtuve "The requested URL returned error: 400 Bad Request". Según la página web de Homebrew , el nuevo comando de terminal es/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
Sparky el
@Sparky ve a las brew.shinstrucciones de instalación.
CousinCocaine