viernes, 15 de enero de 2016

Aprendiendo informática: Recortar un video con VirtualDub

Ayer me hacian una consulta: ¿como puedo extraer un minuto de un video (supongo que para hacer un gif o algo parecido)? En realidad es algo bastante sencillo, y que usando VirtualDub tarda mas o menos el mismo tiempo.

Para no extenderme, os recuerdo que mencione el VirtualDub/VirtualDubMod/NanDub (cualquiera de los tres os funcionará) en los dos primeros posts sobre eliminar hardsubs (http://acerswap-recovery.blogspot.com.es/2015/12/aprendiendo-informatica-eliminar.htmlhttp://acerswap-recovery.blogspot.com.es/2015/12/aprendiendo-informatica-eliminar_24.html), con lo que solo tendreis que leer/releer esos posts para conocer el funcionamiento basico.

Vamos a ponernos ahora manos a la obra. Se trata de coger un video, recortar el trozo anterior a lo que queremos mantener y luego recortar el trozo que va despues de lo que queremos mantener.

Comenzaremos cargando el video que queremos manipular. En mi caso, lo hare con VirtualDubMod.

Como ya sabreis si usais este programa, podeis encontraros con el problema de la siguiente imagen. Dado que voy a quitar el audio, voy a ignorarlo. Seleccione una u otra opcion, me da lo mismo.



Nuestro siguiente paso es acomodar el programa a nuestro gusto. Mi recomendacion, que hagais un zoom en la imagen del video original para que cubra la pantalla lo mas ajustado posible y que le pongais un tamaño pequeño al video de salida, puesto que no lo usaremos para nada.



En la imagen vemos varios bloques de botones del programa. Estos nos permitiran movernos por el video, pausarlo y seleccionar. Son los que usaremos ahora.

Lo primero que deberemos hacer es localizar la escena a partir de la que queremos trabajar. Para eso se puede usar la barra de desplazamiento que hay encima de la botonera. Hecho esto buscaremos el keyframe mas cercano. ¿Veis esos botones con una llave debajo? Como recordareis, un keyframe es una imagen completa del video, y por tanto a partir de la cual se generaran los frames posteriores. Entonces, la calidad del fragmento se verá maximizada si empezamos a procesar desde un keyframe. Si lo hacemos a partir de un frame predictivo, es posible que aparezcan imagenes pixeladas al principio. Obviamente, solo lo haremos si es posible.


Localizado el punto desde el que editaremos el video presionaremos el ultimo boton de la barra. Nos aparecerá una marca en la barra de desplazamiento.



Esa marca indica que es el final de la seleccion. Ahora volveremos al comienzo del video presionando el cuarto boton de la botonera, y haremos lo propio con el penultimo boton. Esto nos mostrara lo siguiente en pantalla:


Nos aparecerá seleccionada la parte que queremos eliminar. Podeis observar las marcas negras en la barra de desplazamiento.

Ahora presionamos Supr o vamos a Edit->Delete. Eso eliminará el fragmento de video seleccionado. En realidad el anterior paso, el de volver al principio y seleccionar, es innecesario ya que eliminaria ese fragmento independientemente de si hemos marcado el comienzo. En cualquier caso, mejor hacer las cosas bien hechas que no tener que recomenzar el trabajo.

Una vez eliminado, la barra de desplazamiento cambiará para mostrarnos que estamos al principio del video. Ahora vamos a buscar el punto de final al que queremos ir. Dado que pretendemos quedarnos con un unico minuto del video buscaremos el frame correspondiente especificandolo. Vamos al menú Edit de nuevo y ahi a la opcion "Go to...". Nos aparecerá este cuadro:


Marcaremos ahi la opcion "Jump to frame at time:". En el cuadro de texto deberemos poner el punto al que queremos acceder. Viene en formato MM:SS.mmm (minutos, segundos y milesimas de segundo), con lo que si queremos desplazarnos al primer minuto, marcaremos 1:00.000 y al presionar OK saltaremos a la posicion correspondiente del video. Despues haremos lo mismo que hicimos para seleccionar el primer bloque, pero a la inversa. Marcaremos con el boton de inicio de la seleccion, iremos al final del video y marcaremos el final de la seleccion. En este caso hay que hacerlo obligatoriamente, ya que si no lo hicieramos asi podriamos eliminar una parte equivocada.


De nuevo, eliminaremos la parte seleccionada, dejando unicamente el fragmento de video que queremos conservar. Es posible que queden unas pocas milesimas sin grabar. Es un error que no tiene importancia.

Nuestros siguientes pasos estan destinados a grabar ese video. Iremos al menu Video y, dado que no queremos recodificar el video ni agregarle filtros ni nada parecido seleccionaremos la opcion "Direct Stream Copy". Esa opcion nos permite recortar el video sin procesar.

Para eliminar el audio, depende del editor que estemos usando. Si usamos VirtualDub, nos aparecera una opcion similar a la de Video. Si usamos VirtualDubMod, tendremos un menu llamado Streams. Presionamos en "Stream list" y nos aparecerán todas las pistas disponibles que no pertenezcan al video. Esas pistas pueden contener audio o incluso subtitulos. Si bien el estandar .avi no admite ni videos multiaudio ni subtitulos, los reproductores actuales permiten su uso. Seleccionaremos entonces la pista de audio existente para luego dar a "Disable" para desactivarla.


Ahora solo nos queda aceptar en esa ventana, ir a "File->Save as..." y poner un nombre distinto al video original para no sobreescribirlo por accidente. En mi ejemplo ha tardado 4 segundos en realizar el proceso de recorte. Es de esperar que para otros videos ocurra lo mismo.

Espero que haya sido util. Si teneis algun problema solo teneis que indicarlo en los comentarios. Un saludo.

No hay comentarios:

Publicar un comentario