Cut video with mencoder

http://www.atareao.es/ubuntu/conociendo-ubuntu/dividir-un-video-desde-el-terminal-de-ubuntu/

Existen diferentes formas de dividir un vídeo en Linux, por ejemplo desde Openshot, sin embargo, creo que lo más sencillo puede ser hacerlo desde el terminal, donde fijas exactamente los tiempos para extraer el fragmento del vídeo que necesitas.

Lo intenté hacer con OpenShot, sin embargo, el resultado fue catastrófico, porque cada vez hacía una cosa distinta. Cuando cortaba el vídeo, y volvía al principio, no regresaba, y al final me terminé por desesperar, ni hice el vídeo, ni extraje los fragmentos que necesitaba.

En un momento de lucidez o inspiración Divina, recordé la existencia del Terminal, así que me puse manos a la obra a trastear en busca de las diferentes posibilidades para hacer lo que quería.

Primero necesitaba información del vídeo, en particular de la duración del mismo. Pero realmente no es necesario, porque tu vas a utilizar Totem (por ejemplo) para determinar el momento exacto en el que realizas el corte. Tampoco tiene mucho sentido que el corte lo hagas fuera de la duración del vídeo.

Y es que en un momento pensé que a lo mejor sería interesante hacer un pequeño script que permitiera hacer esta operación directamente desde Nautilus, de forma que al hacer clic con el botón derecho del ratón sobre un vídeo nos mostrara una ventana donde pudiéramos indicar en cuantas partes queremos dividir el vídeo y en que momentos. Pero claro, esto es para alguien que tiene que estar todo el día dividiendo películas cual carnicero profesional, y este no es mi caso, así que lo dejaré para otro momento, porque ahora mismo tengo la cola de aplicaciones pendientes repletas.

Por ello me quedaré con el terminal y mencoder. Lo primero que tenemos que hacer es instalar mencoder si acaso no lo tenemos, esto lo podemos hacer desde el terminal o bien haciendo clic en mencoder:

Instalación

1
sudo apt-get install mencoder

También podemos instalar ffmpeg, en el caso de querer obtener información del vídeo directamente desde el terminal. Para instalarlo, nuevamente hacemos clic en ffmpeg, o desde el terminal:

1
sudo apt-get install ffmpeg

Para conocer la información de un determinado vídeo, en el terminal:

1
ffmpeg -i video.avi

donde video.avi, es el vídeo del que queremos obtener información, que no tiene porque ser únicamente con formato avi, pueden ser muchos otros.

De cualquier forma, y tal y como he mencionado antes, esto a lo mejor tiene sentido, si lo que queremos hacer es simplemente dividir el video en partes iguales respecto al tiempo, pero para otra caso, creo que no tiene mucho sentido.

Dividir el vídeo en dos partes

Si por ejemplo queremos quedarnos con la primera hora de un video, el comando a ejecutar será el siguiente:

1
mencoder -endpos 01:00:00 -ovc copy -oac copy video.avi -o primera_parte.avi

donde:

  • -endpos 01:00:00 se refiere a que la posición final será en el tiempo 01:00:00
  • -ovc copy indica que se utilizará la misma codificación de video que en el video original
  • -oac copy indica que se utilizará la misma codificación de audio que en el video original
  • video.avi es el video que queremos dividir
  • primera_parte.avi es la primera parte resultante de dividir el video

Otra opción, es justo la opuesta, es decir, desde la primera hora hasta el final del vídeo:

1
mencoder -ss 01:00:00 -oac copy -ovc copy video.avi -o segunda_parte.avi

donde:

  • -ss 01:00:00 indica que empezamos en 01:00:00
  • -ovc copy indica que se utilizará la misma codificación de video que en el video original
  • -oac copy indica que se utilizará la misma codificación de audio que en el video original
  • video.avi es el video que queremos dividir
  • primera_parte.avi es la primera parte resultante de dividir el video

Extraer una parte del vídeo

Combinando las dos opciones anteriores, podemos extraer una fragmento del vídeo, por ejemplo, si nos interesa solo la segunda hora del vídeo (evidentemente si dura mas de dos horas, sino hay algo que no estamos haciendo bien)

1
mencoder -ss 01:00:00 0 -endpos 02:00:00 -oac copy -ovc copy video.avi -o fragmento.avi

donde:

  • -ss 01:00:00 indica que empezamos en 01:00:00
  • -endpos 02:00:00 se refiere a que la posición final será en el tiempo 02:00:00
  • -ovc copy indica que se utilizará la misma codificación de video que en el video original
  • -oac copy indica que se utilizará la misma codificación de audio que en el video original
  • video.avi es el video que queremos dividir
  • fragmento.avi es el fragmento que queremos extraer del video
This entry was posted in Uncategorized and tagged , , . Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s