¿Como pegar subtítulos a un vídeo desde el terminal?


Visita Ubuntronics en Facebook. Dale 'Me gusta' y recibe todas las publicaciones.

Una manera muy rápida y sencilla de pegar los subtítulos a un archivo de vídeo en GNU/Linux desde el terminal es usando mencoder. Lo primero, como no podía ser de otra manera, es instalar mencoder desde los repositorios de la distribución que estamos utilizando.


Una vez lo hemos instalado, utilizaremos el siguiente comando para llevar acabo nuestra tarea:

  • mencoder archivo_original -sub archivo_subtitulo -oac copy -ovc xvid -xvidencopts pass=1 -o archivo_nuevo -subcp utf-8 -font ruta_a_la_fuente -subfont-text-scale 3.8

Recuerda modificar el comando según tus necesidades. Debes reemplazar los nombres de los archivos, así como también puedes jugar con el número que sigue a -subfont-text-scale para cambiar el tamaño de la letra, o cambiar lo que sigue a -ovc para que el vídeo final quede con un codec diferente.


NOTA: al realizar esta acción, el único problema con el que me encontré fue: al terminar, los subtítulos no se leían correctamente, esto se produce a causa de la codificación de caracteres.



¿ Como cambiar la codificación de archivos .srt desde el terminal?

Existen distintas formas de codificar un archivo de texto para poder mostrar los diferentes caracteres, y símbolos, propios de cada idioma. Los más utilizados son UTF-8 o UTF-16, además del popular Windows-1252. El uso del estándar 8859-1 está bastante extendido, pero suele presentar problemas si el software que utilizamos no puede configurarse para leer dicho formato.

De todas maneras es muy fácil solucionarlo, solo tendremos que usar un par de comandos en el terminal. Lo primero es saber en que juego de caracteres esta codificado el archivo que queremos utilizar, para esto usamos el siguiente comando:

  • file --mime-encoding nombre_archivo.srt

Ahora que sabemos en que formato esta codificado nuestro archivo, procedemos a convertirlo con el siguiente comando:

  • iconv --from-code=iso-8859-1 --to-code=utf-8 archivo_original.srt > archivo_convertido.srt

En el ejemplo anterior la codificación inicial es 8859-1 y lo convertimos a UTF-8. Las extensiones pueden ser de cualquier tipo: txt, srt, etc. Sin embargo, hay que verificar el los nombres del archivo original y final tengan menos de 7 caracteres antes de la extensión, ya que si son más largos o tienen espacios, no funcionará.


Fuentes:  http://www.pctux.com.ar | http://www.alvaromatiz.com

No hay comentarios:

Publicar un comentario en la entrada