Incrustar Subtítulos A Un Video En Linux

por | 11 marzo, 2008

Hola, pues ha resultado que he tenido que añadir ( incrustar) los subtitulos a un vídeo y he estado probando diferentes alternativas que se proponían por la red de redes y aql final me he quedado con la opción de utilizar mencoder por la terminal. Seguramente alguno de vosotros os estéis preguntando que porqué he elegido la opción más difícil de recordar, pues por varias razones:

  1. Mayor rapidez.
  2. No me convierte el vídeo a otro tipo de formato.
  3. Siempre funciona.
  4. No tengo que aguantar los términos como frames, ratio y demás hechos por frikis que no los entienden ni ellos.

Probé con Avidemux, pero no se porqué no pillaba el fichero de los subtítulos, y encima era bastante tedioso porque se empeñaba en hacer una o dos pasadas. Luego probé Devede, éste es más lento que un caracol yendo montaña arriba, encima mi fichero era .avi y me obligaba a convertirlo a otro formato. Después lo intenté con Kino, pero no podía abrir el vídeo si antes no lo convertía al formato que soporta Kino, obviamente lo mandé a la mierda. Joder, sólo quiero añadir los subtítulos, no hacer un máster en edición de vídeos sólo para frikis

Así que encontré la solución con mencoder. Antes de nada debes instalar mencoder, también te recomiendo que instales msttcorefonts; y si usas Gnome co Nautilus te recomiendo que instales nautilus-open-terminal. Todos ellos se incluyen en los repositorios de cualquier distro linuxera.

Bien, una vez lo tengas instalado utilizaremos mencoder de la siguiente forma:

mencoder /ruta/al/archivo.avi -sub /ruta/al/archivo.srt -oac copy -ovc lavc -o video_nuevo.avi -subcp latin1 -font /ruta/a/la/fuente.ttf -subfont-text-scale 3.8

Os lo explico con un ejemplo que seguro lo entenderéis a la primera Supongamos que nuestro vídeo y el fichero de subtitulos a incrustar se llaman:

Roma Fellini (1972) Italiano.avi

Roma Fellini subtítulos esp.srt

Como veis ambos ficheros contienen en sus nombres espacios en blanco, símbolos, acentos y demás. Así mencoder no los admitirá, por tanto deberéis cambiarles el nombre para que los admita. Supongamos que los renombramos así:

RomaFelliniItaliano.avi

RomaSubEsp.srt

Ahora ya están correctos. Lo siguiente a tener en cuenta es saber la ruta donde se encuentra el tipo de fuente que queremos que tengan nuestros subtitulos en el vídeo.Yo no me he complicado mucho la vida y he decidido poner la arial.ttf que se encuentra en msttcorefonts en la ruta: /usr/share/fonts/msttcorefonts, con esto ya lo tenemos todo. Así que en nuestro ejemplo el comando será:

mencoder RomaFelliniItaliano.avi -sub RomaSubEsp.srt -oac copy -ovc lavc -o RomaFelliniSubtitulada.avi -subcp latin1 -font /usr/share/fonts/msttcorefonts/arial.ttf -subfont-text-scale 3.8

Nos esperamos a que lo haga y cuando finalice obtendremos un nuevo fichero .avi con los subtitulos incrustados, en nuestro ejemplo se llama RomaFelliniSubtitulada.avi. A mi con un Dual Core me ha tardado menos de 15 minutos para un vídeo de 700 Mb; con Devede llevaba casi 2 horas cuando me cansé y lo chapé, obviamente con el mismo PC. El vídeo ya nos vendrá soportado para acentos y demás. Podemos cambiar el 3.8 por el número que queramos, ya que éste número lo que indica es a qué tamaño queremos las fuentes de los subtitulos.

Fuente-> Foro Ubuntu-es Por Pacmanman 

Saludos :-h

13 pensamientos en “Incrustar Subtítulos A Un Video En Linux

  1. volante

    Llámame friki pero prefiero hablar de frames antes que del peazo comando ese, friki lo serás tú

    Lo primero de todo, mencoder también codifica, no existen milagros, para incrustar subtítulos en un vídeo hay que recodificar el vídeo, por la orden que pones estás usando el codec lavc, así que ese debería ser el codecs a usar en avidemux para hacer la comparación (con este codecs no tendrá que hacer dobles pasadas, eso es con el xvid y divx).
    He hecho la prueba con ese codecs en ambos programas con un corto de 100 mg:
    avidemux: 5 min
    mencoder: 3.30 min

    Evidentemente mencoder es más rápido, las bondades de usar la consola, pero joder que orden hay que usar.

    Lo de que no te cargara los subtitulos, a mi me ha pasado que la ruta por defecto de la fuente era incorrecta, compruébalo, y claro opción de video tienes que elegir algún codecs, si lo dejas en copy no hará nada, por ejemplo a mi la tercera opción es el codecs lavc que es el que has usado con el mencoder.

    PD: lo que no acabo de entender es que tengas un reproductor que lea avi pero no srt :-S

    saludos

  2. volante

    Ah, y con respecto a la nomenclatura en consola, yo lo uso con mplayer, no acepta espacios a no ser que la dirección completa la pongas entre corchetes, así puedo hacer un copiar/pegar desde nautilus a la terminal sin tener que escribir ni renombrar

  3. Cristobal

    Jejeje, friki, friki, eres un friki (es de cachondeo)
    A ver, lo de recodificar me refiero a que devede me obliga a pasar el avi a mpg.
    Lo del .srt lo tengo perfecto, en avidemux no me funciona y con mencoder me ha funcionado a la primera. En avidemux he cogido el -lvac y el códec correspondiente para subtitulos, pero no me lo coge.
    Por cierto, necesitaba incrustar los subtitulos al vídeo porque es para llevármelo a casa de un colega, ponerlo en la tele con un reproductor de sobremesa y ver la peli con más peña mientras cenamos y nos emborrachamos <:-P

  4. Koki

    Apuntado para cuando necesite incrustar subtítulos.

    Yo usaba el DeVeDe y me creaba los DVDs con subtítulos sin complicaciones (aunque había que poner los parámetros para los subtítulos).

    Vamos a ver cuánto demora en mi PIV de 1.8 jeje

  5. Cristobal

    Bien, Koki es de los mios =D>
    Antes se me olvidó decir que lo del tamaño de las fuentes y elegir la fuente es opcional, lo he probado sin ellos y funca bien, pero yo lo recomiendo.
    Saludos

  6. Pingback: Incrustar Subtítulos A Un Video En Linux | BLOG AMICSMANIA

  7. JonnyC

    Gracias por tu colaboración, fue la única manera de lograrlo después de mucho probar, con avidemux fue imposible hasta el momento, mencoder es un tanto difícil de usar por la cantidad de variables que tiene sin embargo lo pude hacer, gracias por tu ayuda.

    PD: Nada como la vieja consola =D>

  8. LiViNgStOnE

    MUY BUENO

    Rápido y sin tener que andar tocando mil configuraciones

    Muchas Gracias

  9. Pingback: Edicion “casera” de videos desde consola « Ubuntu Life

  10. Pablonm

    Tremenda ayuda!!!! gracias este mencoder funciona a la perfección!!! les recomiendo ver Revolution OS que es la pelicula a la que le queria inscrustar los subtitulos

    Saludos

  11. dhuertas

    Mmmmmm Debo decir que si me ha puesto los subs, pero el archivo de salida increiblemente se quedo sin audio… Alguien me puede decir como arreglarlo? Aclaro que use el la linea que han puesto aqui. Mi archivo origina es un mp4 y el fichero de subs es un srt.

  12. Enrique González

    Funcionó de maravilla: Resulta que la película a la que le metí los subtítulos era un mp4 y la salida quedó en un .avi. Solo hay que modificar la línea de arriba, en vez de que sea -oac copy hay que poner -oac pcm y listo. Saludos!!!

  13. Enrique González

    De la línea de arriba, sólo cambia la opción -oac copy por -oac pcm y listo. Mira, yo lo hice así:

    mencoder /home/oegonzal/USB/ElPerfectoAcesinoSinEdicion/ElPerfectoAcesino.mp4 -sub /home/oegonzal/USB/ElPerfectoAcesinoSinEdicion/SubtitulosPerfectoAcesino.srt -oac pcm -ovc lavc -o ElPerfectoAcesino.avi -subcp latin1 -font /usr/share/fonts/msttcorefonts/arialbd.ttf -subfont-text-scale 3.8

    Saludos.

Los comentarios están cerrados.