Desde hace tiempo los
smartphones han sustituido, al menos en mi caso, a las cámaras de
fotos/videos. Pero el problema de estos telefonillos es que nunca se
acuerda uno (también, en mi caso) de en qué postura (vertical u
horizontal) hay que ponerlo para sacar el video y que quede bien. El
resultado es que más de una y más de dos veces el video me sale
'girado'.
Hombre, para
visualizarlo, tanto en la pantalla del smartphone como, si lo
descargo, en el PC, no es problema, por ejemplo con el reproductor
VLC basta con ir a Herramientas-Efectos y Filtros-Efectos de
Video-Geometría-Rotar y darle el giro apropiado. Pero si lo quiero
guardar con esa configuración, ya rotado, me armo un pequeño lío.
Así que vamos a ver cómo hacerlo 'permanentemente'
Un procedimiento sencillo es hacerlo con Avidemux. Pero el problema es que el Avidemux (Qt), que tengo instalado, desde que dejó de estar en los repos oficiales de Debian (ahora está en los www.deb-multimedia.org) parece que anda regular, tiene problemas de traducción, etc. Pero bueno, se haría así:
- Abrir el video en Avidemux
- Ir a
Video-Filtros-Transform, ahí elegir Rotate (OJO, pone 'Bitrate') y,
tras doble clic, el ángulo que quieres rotar (90º, 180º o 270º, en sentido anti-horario)
(OJO, en mi Avidemux esto también está mal, y hay que ir a ciegas),
para que se añada. Cierras esa ventana
- Ahora, en Video-Output,
pinchas en 'Copy', para cambiarlo y que se recodifique, y eliges con qué
codificador hacerlo.
(En mis pruebas, si lo dejas en 'Copy', y no
recodificas, queda igual, sin rotar)
- Y solo queda ir a
File-Save, y guardar el video, rotado, que se genera.
Pero como esto era un
lío, busqué un sistema más claro. Este:
Rotar un video, por
consola, con ffmpeg
Es sencillisimo: abres
la consola en la carpeta donde tengas guardado el video original (que
supongamos que se llama, para ser original... video.mp4) y escribes
una orden como esta:
ffmpeg -i video.mp4 -vf
'transpose=1' video_rotado.mp4
y, en un ratito, te
producirá un video rotado 90º a la derecha (en el sentido de las
agujas del reloj). Esto es lo que se le indica la opción 'transpose=1'. (si no funciona, poner "transpose=1")
Las
posibilidades del modificador 'transpose=x' son...
'transpose=0' rota 90º en el sentido contrario de las agujas del reloj y giro vertical (por defecto).
'transpose=1', como se ha dicho, rota 90º en el sentido de las agujas del reloj.
'transpose=0' rota 90º en el sentido contrario de las agujas del reloj y giro vertical (por defecto).
'transpose=1', como se ha dicho, rota 90º en el sentido de las agujas del reloj.
'transpose=2' rota 90º en el sentido contrario a las agujas del reloj.
'transpose=3' rota 90º en el sentido de las agujas del reloj y giro vertical.
Y si, por ejemplo lo que queremos es hacer un volteo horizontal, escribiremos lo siguiente:
ffmpeg -i video.mp4 -vf 'transpose=1, transpose=1' video_rotado.mp4
pero es más elegante hacerlo así...
ffmpeg -i entrada.avi -vf "hflip" salida.avi
ffmpeg -i video.mp4 -vf 'transpose=1, transpose=1' video_rotado.mp4
pero es más elegante hacerlo así...
Y solucionado. Como se ve, con ffmpeg es muy fácil girar un video. Si acaso, solo es cuestión de hacer algunas pruebas para cogerle el tranquillo.
No hay comentarios:
Publicar un comentario