Tutorial subtítulos formato SSA o ASS

42
Tutorial para subtítulos formato SSA o ASS Estructura del subtítulo y lista de comandos. El formato SSA/ASS es muy versátil para realizar subtítulos ya que se pueden introducir estilos y efectos, y hacer karaokes, lo que lo hace el formato manejado por los fansubs para desarrollar sus subtítulos. Este manual es para comprender la estructura de los subtítulos formato SSA (SubStation Alpha) y ASS (Advanced SubStation Alpha) (en realidad los dos formatos son similares, pero el formato ASS, más moderno, introduce más opciones en los "Estilos de Línea"). Con el tutorial les mostrare otros efectos que se logran con el VSFilter/Textsub. Recuerden siempre tener el VSFilter actualizado a la última versión, la forma más fácil de hacerlo es fijarse si tienen instalada la última versión del CCCP para visualizar videos, y la última versión del Aegisub para editar los subtítulos sino pueden ocurrir cosas como que no se muestren algunos de los efectos que hay en los subtítulos, ya que los programas que leen este formato ignoran todo lo que no entienden. Software necesario - Aegisub, programa para trabajar con subtítulos, efectos y que trae características interesantes contra otros programas de subtítulos, entre estas características cabe resaltar la posibilidad de ver las coordenadas en pantalla para poder así facilitar el poner carteles y similares: (Imagen de la característica /pos

Transcript of Tutorial subtítulos formato SSA o ASS

Page 1: Tutorial subtítulos formato SSA o ASS

Tutorial para subtítulos formato SSA o ASS Estructura del subtítulo y lista de comandos. El formato SSA/ASS es muy versátil para realizar subtítulos ya que se pueden introducir estilos y efectos, y hacer karaokes, lo que lo hace el formato manejado por los fansubs para desarrollar sus subtítulos. Este manual es para comprender la estructura de los subtítulos formato SSA (SubStation Alpha) y ASS (Advanced SubStation Alpha) (en realidad los dos formatos son similares, pero el formato ASS, más moderno, introduce más opciones en los "Estilos de Línea"). Con el tutorial les mostrare otros efectos que se logran con el VSFilter/Textsub. Recuerden siempre tener el VSFilter actualizado a la última versión, la forma más fácil de hacerlo es fijarse si tienen instalada la última versión del CCCP para visualizar videos, y la última versión del Aegisub para editar los subtítulos sino pueden ocurrir cosas como que no se muestren algunos de los efectos que hay en los subtítulos, ya que los programas que leen este formato ignoran todo lo que no entienden.

Software necesario - Aegisub, programa para trabajar con subtítulos, efectos y que trae características interesantes contra otros programas de subtítulos, entre estas características cabe resaltar la posibilidad de ver las coordenadas en pantalla para poder así facilitar el poner carteles y similares: (Imagen de la característica /pos

Page 2: Tutorial subtítulos formato SSA o ASS

Para los que quieren hacer karaokes, la característica más importante de todas es que se puede usar programación para crear efectos avanzados o karaokes súper avanzados, pudiendo así utilizar condiciones, ciclos y muchas otras cosas, similar al asscalc. El lenguaje utilizado para esta programación es LUA. Aunque también esta el after effect. - Para visualizar los subtítulos con los efectos en forma de softsubs, necesitamos el VSFilterMod. Una vez lo tenemos instalado, ponemos los subtítulos y el video en la misma carpeta, así: mivideo.avi mivideo.ssa (Incluso para poner una imagen dentro de las letras mivideo.png) - Para visualizar los subtítulos en el Virtualdub programa que sirve para pegarlos, necesitamos el Textsub (sólo es necesario si pensamos pegar los subtítulos al video en formato .ass y no .ssa, además para Textsub debemos también tener Virtualdub con VSFilterMod instalado). Explicándoles como poner VSFilterMod en VirtualDub o VirtualDubMod, no solamente se logra descargándolo y poniendo este archivo en la carpeta plugins de cualquiera de estos, ya que aunque lo tengan no podrán ver todos sus efectos en los videos, sino que deben copiar ese archivo y pégalo en la carpeta donde tienen instalado el Virtualdub(Mod), en la carpeta de plugins (usualmente C:/Archivos de programa/Virtualdub(Mod)/plugins) Y además también cambiar la extensión de este que de ser VSFilterMod.dll, la deben cambiar a VSfilterMod.vdf luego de eso cuando abran el Virtualdub aparecerá un nuevo filtro llamado Textsub. Luego de eso con ese filtro podrán ver los subtítulos .ass sin tener que exportarlos a .ssa y perdiendo los efectos. Esto sucede debido a que están estos programas en otra codificación. Comandos de sustitución para utilizar en las líneas de diálogo Esta parte es un comentario del subtítulo, es decir, es información útil pero que no es visible

cuando el archivo es cargado en un video. Sólo lo que está en negritas es obligatorio para

reproducir el subtítulo, el resto es opcional. Cada información del encabezado debe ir en su

propia línea, después de la línea

Title: El título del subtítulo (Opcional)

Original Script: Autor del subtítulo original (Opcional)

Original Translation: Traductor del subtítulo (Opcional)

Original Editing: Editor del subtítulo (Opcional)

Original Timing: Creador de los tiempos o timer, como le dicen algunos (Opcional)

Synch Point: En qué momento del transcurso del video debe comenzar el script (Opcional). Con

esta utilidad se pueden sincronizar los subtítulos que al principio del video están desfasados (si

además están acelerados o desacelerados, hay otra utilidad explicada un poco más abajo).

Pero hoy en día es más fácil hacerlo con un editor de subtítulos que trasteando con estos

números así que se puede decir que es una utilidad obsoleta. Si esta línea no aparece en el

encabezado de un subtítulo, los programas que reproducen ssa/ass asumen que el punto de

sincronización es cero (es decir, el tiempo cero del subtítulo es también el tiempo cero del

video).

Page 3: Tutorial subtítulos formato SSA o ASS

Script Updated By: Nombre de la persona que editó el subtítulo original (Opcional)

Update Details: Detalles de la actualización del subtítulo editado (Opcional)

Script Type: Qué versión de script se usa (en la práctica, si es un SSA o un ASS: por ejemplo si

es un ASS se escribe "ScriptType: v4.00+")

Collisions: Cuando dos o más subtítulos aparecen al mismo tiempo, qué ubicación tendrá cada

uno en la pantalla. Por ejemplo si se escribe "Normal", el programa que lee los subtítulos debe

ubicar el segundo subtítulo que aparece en el script, más arriba en la pantalla que el primero

que aparece, de esta forma no aparecen superpuestos en el mismo lugar y se pueden leer los

dos:

Personalmente yo no toco ni hago nada ahí xD

Page 4: Tutorial subtítulos formato SSA o ASS

En cambio si se escribe "Reverse" se deben acomodar los subtítulos de forma que el primero

pase a la parte de arriba y el segundo aparezca abajo, pero como el segundo subtítulo puede

tardar un poco más que el primero en aparecer, esto puede provocar que el primer subtítulo

parezca que apareció por el centro de la pantalla sin razón, creando espacios vacíos en la parte

inferior, hasta que aparece el segundo subtítulo.

El VSFilter, que más se usa para reproducir subtítulos en ssa/ass, ignora esta línea.

Por lo tanto en la práctica, siempre se termina escribiendo "Collisions: Normal"

PlayResX: Ancho de la máscara del video sobre el que se ubican los subtítulos. El valor es en

píxeles. Si trabajan con el Aegisub verán que el programa pone este valor automáticamente sin

preguntarle al autor del subtítulo, y lo hace coincidir con la anchura del video en píxeles que se

ingresó en el Aegisub para editar el subtítulo. Pero no necesariamente tienen que coincidir.

PlayResY: Altura de la máscara del video sobre el que se ubican los subtítulos. El valor es en

píxeles. Nuevamente, si trabajan con el Aegisub verán que el programa pone este valor

automáticamente sin preguntarle al autor del subtítulo, y lo hace coincidir con la altura en

píxeles del video que se ingresó en el Aegisub para editar el subtítulo. AL MENOS ESTE VALOR

ES OBLIGATORIO PARA QUE EL VSFILTER RECONOZCA EL SUBTÍTULO (si no este valor, entonces

el PlayResX, pero al menos uno de los dos). Esto es porque el tamaño de los subtítulos y varios

de los comandos que veremos, dependen de este valor. Por ejemplo si su video tiene una

altura de 600 píxeles, al ingresarlo en el Aegisub, el programa pone automáticamente en esta

sección "PlayResY: 600".

PlayDepth: Profundidad del color. El formato SSA v4 determina esto automáticamente.

Normalmente es "PlayDepth: 0"

Timer: Velocidad del cronómetro de un subtítulo formato SSA/ASS. Sirve para acelerar o

desacelerar un subtítulo para ajustarlo a un video distinto. La velocidad del cronómetro es un

multiplicador de tiempos aplicado a los tiempos de las líneas del script, para estirar o

comprimir la duración de los subtítulos:

-Una velocidad mayor a 100% reducirá la duración global, y los subtítulos aparecerán antes

que lo indicado en el tiempo escrito en la línea (mientras más avanzamos en el script, más lejos

del valor original aparecerán los subtítulos).

-Una velocidad menor a 100% aumentará la duración de los subtítulos, y los subtítulos

aparecerán después que lo indicado en el tiempo escrito en la línea (mientras más avanzamos

en el script, más lejos del valor original aparecerán los subtítulos).

Con esta utilidad se pueden sincronizar los subtítulos que al principio del video están bien y a

medida que éste avanza van desfasándose. Pero es más fácil hacerlo con un editor de

subtítulos que trasteando con estos números

En la práctica por lo tanto, es más fácil ajustar los tiempos con un editor de subtítulos, y dejar

este valor en el valor por defecto, por defecto se pone "100,0000" que es exactamente 100%.

Por lo tanto normalmente se escribe "Timer: 100,0000"

WrapStyle: Cómo se corta la línea cuando el texto del subtítulo ocupa más de una línea. Sus

valores (que son los mismos del comando q) pueden ser:

Page 5: Tutorial subtítulos formato SSA o ASS

* 0: Cortar automáticamente, cuando no quedan las dos líneas exactamente del mismo

tamaño, cortar de forma que la primer línea sea más ancha. Sólo \N fyerza los cortes de línea.

* 1: Cortar automáticamente sólo cuando en la primer línea ya no entra más texto. Sólo \N

fyerza los cortes de línea.

* 2: No cortar la línea de subtítulo aunque éste se extienda más allá de la pantalla. Tanto \n

como \N fuerzan los cortes de línea.

* 3: Cortar automáticamente como en 0, pero la línea de abajo es la más ancha.

En general se utiliza "WrapStyle: 0" Cuando hay una línea de texto en el script que no se

quiere cortar, se puede modificar el wrapstyle de esa línea con el comando \q2

Con las versiones nuevas de los filtros que reproducen subtítulos se agregó nueva información

en el encabezado:

ScaledBorderAndShadow: Cómo calcular el tamaño del borde y de la sombra. Sus valores

pueden ser 0 (que es el valor por defecto cuando no se especifica, y quiere decir que se

calculan a partir de la resolución del video) o 1 o "yes" (que se calculen según la resolución

dada por la máscara superpuesta al video dada por PlayResX y PlayResY). Por supuesto que si

queremos un script "multi-resolución" necesitamos que este valor sea 1 o "yes", de forma que

en un video tamaño VCD o tamaño HDTV, se vea el mismo tamaño de borde y sombra. Por lo

tanto en general conviene poner "ScaledBorderAndShadow: yes"

En resumen

Se puede decir que lo que hoy en día es "modificable" del encabezado de un script en SSA/ASS,

es la información de los autores del subtítulo (los créditos), y el PlayResX y/o el PlayResY (lo

demás está obsoleto o conviene dejarlo siempre igual).

Además, también en el encabezado como en todo el resto del script, se pueden agregar

comentarios si se empieza la línea con un punto y coma, y algunos editores de subtítulos

aprovechan esa opción para agregar información.

-------------------------

Particularidades del Aegisub. El Aegisub además agrega más información en la parte del

encabezado, que es para uso de ese programa, y no es en absoluto obligatoria para reproducir

el subtítulo, sólo sirve para que el Aegisub trabaje con él:

Video File: La ubicación del archivo de video que estamos utilizando para editar nuestro

subtítulo (solamente sirve en nuestra computadora, claro, porque en todas va a estar en un

lugar diferente y con un nombre diferente). De esta forma la segunda vez que abrimos el

subtítulo, el Aegisub ya sabe a qué video se corresponde y puede abrirlo también sin preguntar

dónde está por segunda vez.

Video Aspect Ratio: para uso en el visor de video del Aegisub

Video Zoom: para uso en el visor de video del Aegisub

Video Position: para uso en el visor de video del Aegisub

Page 6: Tutorial subtítulos formato SSA o ASS

Además, si no se ingresa ningún video en el programa, el programa pone automáticamente los

valores de PlayResX y PlayResY por defecto:

PlayResX: 640

PlayResY: 480

Que son los valores de la resolución del VCD.

Como ejemplo del encabezado de un subtítulo hecho con el Aegisub abierto con el block de

notas tenemos:

[Script Info] ; Script generated by Aegisub 2.1.8 ; http://www.aegisub.org/ Title: Neon Genesis Evangelion Episodio 01 (castell ano neutro) Original Script: RoRo Script Updated By: versión 3.02 (tiempos carteles) ScriptType: v4.00+ Collisions: Normal WrapStyle: 0 PlayResX: 800 PlayResY: 600 PlayDepth: 0 Timer: 100,0000 ScaledBorderAndShadow: yes Video File: Evangelion Renewal - 01.mkv Video Aspect Ratio: 0 Video Zoom: 6 Video Position: 33250

Estilo de Línea de un subtítulo SSA/ASS La sección siguiente a la del encabezado es la que comienza con el título [V4+ Styles] en un ASS (o [V4 Styles] en un SSA). Es en esta sección donde se definen los "estilos de línea", y se ve más o menos como sigue:

Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, TertiaryColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, AlphaLevel, Encoding Style: DefaultVCD,Arial,30,&H00B4FCFC,&H00B4FCFC,&H80000008,&H80000008,-1,0,0,0,100,100,0,0,1,2,1,2,30,30,30,0 Style: televVCD,Arial,28,&H00FEFECD,&H00FEFECD,&H00000000,&H00000000,-1,0,0,0,100,100,0,0,1,2,1,8,65,65,30,0 Los marcados de color verde están habilitados en el formato ASS, el resto ya estaba en el formato SSA. En los "estilos de línea" se definen el tipo de letra, tamaño de letra, color, características

Page 7: Tutorial subtítulos formato SSA o ASS

del borde, y la posición y alineación de los subtítulos. Se pueden crear todos los "estilos de línea" que se necesiten, por ejemplo es común que los fansubs tengan un estilo de línea para cada personaje. Esta sección puede ser interpretada como una grilla de filas y columnas, donde cada renglón representa una fila, y cada coma divide a una columna. La primer fila es la que le da el nombre a todas las columnas, las filas siguientes son las de los estilos. La primer línea, que da nombre a las columnas, es la que empieza con Format: y todas las líneas de estilo comienzan con "Style:" ¿Cómo se encuentra un valor dado? En el ejemplo aquí dado, el "Fontsize" (tamaño de fuente) del estilo llamado DefaultVCD, debe estar en la celda que se corresponde a la tercer columna de la fila con estilo de ese nombre, es decir, vale 30 puntos. Este formato de tabla en la parte de los estilos, donde cada campo está definido en la primer fila donde se dan los nombres de las columnas, permite agregar campos en futuras versiones del subtítulo, sin perder compatibilidad con versiones antiguas del software que lee el script, ya que el software igual encuentra los campos que necesita aunque el orden sea alterado. Los "estilos de línea" se utilizarán posteriormente cuando se escriban las líneas de diálogos del script. Además de los momentos de aparición y desaparición de cada línea de subtítulo, y el texto contenido en él, se debe especificar con qué estilo de línea el subtítulo debe ser mostrado. Nota: los programas de edición de subtítulos como el Aegisub ponen toda esta información automáticamente, y en el Aegisub por ejemplo, no tenemos que escribir los estilos "a mano" como se ve en el bloc de notas, sino que se definen en la barra de herramientas, en subtitles > styles manager. Ese programa también permite almacenar los estilos en el programa en sí además de en el script, lo cual es una funcionalidad muy cómoda cuando queremos hacer más de un script con los mismos estilos (por ejemplo cuando hacemos una serie de varios capítulos). A continuación la definición de cada columna (se marcará en verde la columna que se definirá): Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, TertiaryColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, AlphaLevel, Encoding Style: Texto, Comic Sans MS, 48, &H7BD1FE,&HBCECEC,&H1B3041,&H1B3041,1,1,0,0,100,100,0,0.00,1,2,2,8,20,20,20,0,1 Name: El nombre del estilo. Podemos poner el nombre que queramos, con la única salvedad de que no se debe escribir con comas.

Page 8: Tutorial subtítulos formato SSA o ASS

Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, TertiaryColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, AlphaLevel, Encoding Style: Texto, Comic Sans MS, 48, &H7BD1FE,&HBCECEC,&H1B3041,&H1B3041,1,1,0,0,100,100,0,0.00,1,2,2,8,20,20,20,0,1 Fontname: El tipo de fuente, escrito tal como se lo encuentra en windows/fonts. Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, TertiaryColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, AlphaLevel, Encoding Style: Texto,Comic Sans MS,48,&H7BD1FE,&HBCECEC,&H1B3041,&H1B3041,1,1,0,0,100,100,0,0.00,1,2,2,8,20,20,20,0,1 Fontsize: El tamaño de la fuente usada. Este valor depende de lo que hayamos puesto en el encabezado, en la fila que comienza con PlayResY:, por lo tanto el mismo número puede significar un tamaño de letra diferente con un PlayResY diferente. Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, TertiaryColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, AlphaLevel, Encoding Style: Texto,Comic Sans MS,48,&H7BD1FE, &HBCECEC,&H1B3041,&H1B3041,1,1,0,0,100,100,0,0.00,1,2,2,8,20,20,20,0,1 PrimaryColour: El color del estilo, se puede colocar los colores de dos formas. La forma hexadecimal: los colores son definidos por un número hexadecimal, por ejemplo el &H00ffff es el amarillo La forma numérica: por ejemplo el mismo amarillo es el 65535 Yo recomiendo que utilicen los colores en numeración hexadecimal ya que sera útil más adelante en los códigos de sustitución. Los programas de edición de subtítulos también suelen trabajar con la forma hexadecimal. Aquí les pongo una pequeña paleta para que utilicen los colores con numeración hexadecimal, de todas formas en los programas modernos de edición de subtítulos esta paleta ya está incorporada:

Page 9: Tutorial subtítulos formato SSA o ASS

a1=&HFFFFFF a2=&HE0E0E0 a3=&HC0C0C0 a4=&H808080 a5=&H404040 a6=&H000000 b1=&HC0C0FF b2=&H8080FF b3=&H0000FF b4=&H0000C0 b5=&H000080 b6=&H000040 c1=&HC0E0FF c2=&H80C0FF c3=&H0080FF c4=&H0040C0 c5=&H004080 c6=&H404080 d1=&HC0FFFF d2=&H80FFFF d3=&H00FFFF d4=&H00C0C0 d5=&H008080 d6=&H004040 e1=&HC0FFC0 e2=&H80FF80 e3=&H00FF00 e4=&H00C000 e5=&H008000

Page 10: Tutorial subtítulos formato SSA o ASS

e6=&H004000 f1=&HFFFFC0 f2=&HFFFF80 f3=&HFFFF00 f4=&HC0C000 f5=&H808000 f6=&H404000 g1=&HFFC0C0 g2=&HFF8080 g3=&HFF0000 g4=&HC00000 g5=&H800000 g6=&H400000 h1=&HFFC0FF h2=&HFF80FF h3=&HFF00FF h4=&HC000C0 h5=&H800080 h6=&H400040 Deben tener cuidado cuando sacan los colores de programas como Photoshop y Flash MX, ya que en estos programas el azul y el rojo están intercambiados, o sea en estos programas el azul se define como &H0000FF, y el rojo como &HFF0000, pero lo solucionan intercambiando los dos códigos de cada extremo. Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, TertiaryColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, AlphaLevel, Encoding Style: Texto,Comic Sans MS,48,&H7BD1FE,&HBCECEC, &H1B3041,&H1B3041,1,1,0,0,100,100,0,0.00,1,2,2,8,20,20,20,0,1 SecondaryColour: Sirve sólo cuando se hacen karaokes. Es el color al que cambia el color del texto cuando pasa el karaoke por él. Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, TertiaryColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, AlphaLevel, Encoding Style: Texto,Comic Sans MS,48,&H7BD1FE,&HBCECEC,&H1B3041,&H1B3041,1,1,0,0,100,100,0,0.00,1,2,2,8,20,20,20,0,1 TertiaryColour: Esto en el formato ASS se llama OutlineColor. Aquí se define el color

Page 11: Tutorial subtítulos formato SSA o ASS

del borde del subtítulo. Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, TertiaryColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, AlphaLevel, Encoding Style: Texto,Comic Sans MS,48,&H7BD1FE,&HBCECEC,&H1B3041,&H1B3041, 1,1,0,0,100,100,0,0.00,1,2,2,8,20,20,20,0,1 BackColour: En el formato SSA esto define el color del borde del subtítulo (lo mismo que OutlineColor en el formato ASS), y en el formato ASS define el color de la sombra (sí, qué desgracia que han puesto el mismo nombre para dos cosas distintas en los dos formatos). Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, TertiaryColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, AlphaLevel, Encoding Style: Texto,Comic Sans MS,48,&H7BD1FE,&HBCECEC,&H1B3041,&H1B3041,1, 1,0,0,100,100,0,0.00,1,2,2,8,20,20,20,0,1 Bold: Si el texto estará en negrita, si es así vale "1" o si no será "0". Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, TertiaryColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, AlphaLevel, Encoding Style: Texto,Comic Sans MS,48,&H7BD1FE,&HBCECEC,&H1B3041,&H1B3041,1,1,0,0,100,100,0,0.00,1,2,2,8,20,20,20,0,1 Italic: Si el texto será cursiva (o itálica) "1" o si no lo será "0". Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, TertiaryColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, AlphaLevel, Encoding Style: Texto,Comic Sans MS,48,&H7BD1FE,&HBCECEC,&H1B3041,&H1B3041,1,1,0,0,100,100,0,0.00,1,2,2,8,20,20,20,0,1 Underline: Si el texto será subrayado "1" o si no lo será "0" (habilitado en el formato ASS).

Page 12: Tutorial subtítulos formato SSA o ASS

Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, TertiaryColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, AlphaLevel, Encoding Style: Texto,Comic Sans MS,48,&H7BD1FE,&HBCECEC,&H1B3041,&H1B3041,1,1,0,0,100,100,0,0.00,1,2,2,8,20,20,20,0,1 Strikeout: Si el texto será tachado "1" o si no lo será "0" (habilitado en el formato ASS). Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, TertiaryColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, AlphaLevel, Encoding Style: Texto,Comic Sans MS,48,&H7BD1FE,&HBCECEC,&H1B3041,&H1B3041,1,1,0,0,100,100,0,0.00,1,2,2,8,20,20,20,0,1 ScaleX: Modifica el ancho de la fuente, el valor se debe poner en porcentaje (habilitado en el formato ASS). Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, TertiaryColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, AlphaLevel, Encoding Style: Texto,Comic Sans MS,48,&H7BD1FE,&HBCECEC,&H1B3041,&H1B3041,1,1,0,0,100,100, 0,0.00,1,2,2,8,20,20,20,0,1 ScaleY: Modifica el alto de la fuente, el valor se debe poner en porcentaje (habilitado en el formato ASS). Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, TertiaryColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, AlphaLevel, Encoding Style: Texto,Comic Sans MS,48,&H7BD1FE,&HBCECEC,&H1B3041,&H1B3041,1,1,0,0,100,100,0,0.00,1,2,2,8,20,20,20,0,1 Spacing: Espacio entre letras en píxeles. Habilitado sólo en el formato ASS. Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, TertiaryColour,

Page 13: Tutorial subtítulos formato SSA o ASS

BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, AlphaLevel, Encoding Style: Texto,Comic Sans MS,48,&H7BD1FE,&HBCECEC,&H1B3041,&H1B3041,1,1,0,0,100,100,0,0.00,1,2,2,8,20,20,20,0,1

Imagen explicativa:

Page 14: Tutorial subtítulos formato SSA o ASS
Page 15: Tutorial subtítulos formato SSA o ASS

Angle: Ángulo del subtítulo con respecto a la "posición normal" (la horizontal, la de siempre, que se define como de un ángulo de cero grados), en grados. Cambia la orientación del subtítulo con respecto al eje "z" (un eje que corta al video como si lo clavara). Sólo existe en el formato ASS. Como muestra la imagen de abajo, el valor se debe colocar según el ángulo que se quiera obtener:

Page 16: Tutorial subtítulos formato SSA o ASS

Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, TertiaryColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, AlphaLevel, Encoding Style: Texto,Comic Sans MS,48,&H7BD1FE,&HBCECEC,&H1B3041,&H1B3041,1,1,0,0,100,100,0,0.00,1,2,2,8,20,20,20,0,1 BorderStyle: Estilo de borde, que puede ser: "1", el subtítulo posee un borde en píxeles que rodea todo el texto. "3", el subtítulo se encuentra dentro de un rectángulo (antes el vsfilter no tenía habilitado el rectángulo pero ahora lo hace).

Page 17: Tutorial subtítulos formato SSA o ASS

Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, TertiaryColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, AlphaLevel, Encoding Style: Texto,Comic Sans MS,48,&H7BD1FE,&HBCECEC,&H1B3041,&H1B3041,1,1,0,0,100,100,0,0.00,1,2,2,8,20,20,20,0,1 Outline: Tamaño del borde del texto en píxeles. Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, TertiaryColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, AlphaLevel, Encoding Style: Texto,Comic Sans MS,48,&H7BD1FE,&HBCECEC,&H1B3041,&H1B3041,1,1,0,0,100,100,0,0.00,1,2,2,8,20,20,20,0,1 Shadow: Tamaño de la sombra del texto en píxeles.

Page 18: Tutorial subtítulos formato SSA o ASS

Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, TertiaryColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, AlphaLevel, Encoding Style: Texto,Comic Sans MS,48,&H7BD1FE,&HBCECEC,&H1B3041,&H1B3041,1,1,0,0,100,100,0,0.00,1,2,2,2,20,20,20,0,1 Alignment: Alineación. Es decir, cómo se alineará el subtítulo con respecto a la posición en la que debe ubicarse en la pantalla. Los valores pueden ser 1=superior izquierda, 2=superior centrado (es la alineación por defecto), 3=superior derecha, 5=inferior izquierda, 6=inferior centrado, 7=inferior derecha, 9=centro izquierda, 10=centro medio, 11=centro derecha Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, TertiaryColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, AlphaLevel, Encoding Style: Texto,Comic Sans MS,48,&H7BD1FE,&HBCECEC,&H1B3041,&H1B3041,1,1,0,0,100,100,0,0.00,1,2,2,2,20, 20,20,0,1 MarginL: Margen izquierdo en píxeles. Esta es la distancia desde el límite izquierdo de la pantalla. Si el subtítulo se pasa de este margen, se cortará la línea y seguirá en una segunda línea. Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, TertiaryColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, AlphaLevel, Encoding Style: Texto,Comic Sans MS,48,&H7BD1FE,&HBCECEC,&H1B3041,&H1B3041,1,1,0,0,100,100,0,0.00,1,2,2,2,20,20,20,0,1 MarginR: Margen derecho en píxeles. Esta es la distancia desde el límite derecho de la pantalla. Si el subtítulo se pasa de este margen, se cortará la línea y seguirá en una segunda línea. Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, TertiaryColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR,MarginV, AlphaLevel, Encoding Style: Texto,Comic Sans

Page 19: Tutorial subtítulos formato SSA o ASS

MS,48,&H7BD1FE,&HBCECEC,&H1B3041,&H1B3041,1,1,0,0,100,100,0,0.00,1,2,2,2,20,20,20,0,1 MarginV: Margen vertical en píxeles. Es la distancia desde el límite vertical (y horizontal) de la pantalla. Esto define la posición en que saldrán los subtítulos con respecto al borde superior y también con respecto al borde inferior. Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, TertiaryColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR,MarginV, AlphaLevel, Encoding Style: Texto,Comic Sans MS,48,&H7BD1FE,&HBCECEC,&H1B3041,&H1B3041,1,1,0,0,100,100,0,0.00,1,2,2,2,20,20,20,0,1 AlphaLevel: Transparencia de un subtítulo. El valor oscila entre 0 que es lo más opaco posible, y 250 que es totalmente transparente. Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, TertiaryColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR,MarginV, AlphaLevel, Encoding Style: Texto,Comic Sans MS,48,&H7BD1FE,&HBCECEC,&H1B3041,&H1B3041,1,1,0,0,100,100,0,0.00,1,2,2,2,20,20,20,0,1 Encoding: Codificación de la fuente. Sirve cuando la fuente está codificada en diferente escritura, para la escritura "normal" (que se usa en el mundo occidental, como la de nuestro idioma) se encuentra en cero, y para la escritura japonesa debe estar en 128.

Una vez que han escrito línea de dialogo solo con la tecla Enter/Intro o el botón confirmar queda en la línea de subtitulo.

Page 20: Tutorial subtítulos formato SSA o ASS

Comandos de Sustitución utilizados en los eventos

de líneas de diálogo

En esta sección se explica cómo se puede sustituir el estilo de un texto de subtítulos para que

sea mostrado en la pantalla de otra forma.

Todos los comandos de sustitución deben ir encerrados en llaves "{ }", excepto "\N" que debe

ir sin llaves, y antes de ellos debe ir un backslash "\".

Estos comandos pueden ser cancelados a mitad de la línea de subtítulo, para que sólo sea

mostrado en una parte del texto del subtítulo.}

Los comandos de sustitución son los siguientes:

Nota1: <0> significa que son los únicos valores que se pueden colocar en el determinado

comando. Pueden ser utilizados varios comando a la vez

Nota2:Todos los comandos de sustitución deben ir antes del subtítulo que se quiera modificar,

como se muestra abajo:

Dialogue:

Marked=0,0:00:52.70,0:00:55.10,Cancion1,NTP,0000,0000,0000,!Effect,{\bord2\be1\fscx90}D

espertándome por la mañana.

\N Este comando hace que la línea sea cortada siempre.

Ejem: Esta es la primera línea\Ny esta es la segunda línea.

\n Este comando hace que la línea sea cortada o no, dependiendo del valor de "wrapstyle" que

pusimos en el encabezado (o de si modificamos la línea con \q, que modifica al wrapstyle).

\h Este comando inserta un espaciado entre caracteres que no se puede cortar. Si en el

"wrapstyle" permitimos que se corte la línea automáticamente, nunca lo hará por este

espaciado.

A partir de aquí todos los comandos van entre llaves { }:

\b<0> Bold: Esto determina si el texto estará en negrita o no.

Ejem: {\b1}Esto está en negrita, {\b0}y esto no está en negrita.

Nota: algunas fuentes pueden soportar valores mayores a 1.

Page 21: Tutorial subtítulos formato SSA o ASS

\i<0> Italic: Esto determina si el texto estará en cursiva o no.

Ejem: {\i1}Esta palabra esta en cursiva.

\u<0> Underline: Esto determina el subrayado en un subtítulo.

Ejem. {\u1}Este texto está subrayado.

\s<0> Strikeout: Esto determina el tachado en un subtítulo.

Ejem. {\s1}Esta frase está tachada.

\bord Bord: Esto determina el grosor del borde. 0= significa que no tiene borde.

Ejem. En este texto a partir de {\bord0}aquí no tiene borde{\bord5} y aquí tiene un borde

grueso.

\shad Shadow: Esto determina el tamaño de la sombra que tendrá el subtitulo, 0 = significa

que no tiene sombra.

Ejem. {\shad10}Este texto tiene una sombra grande.

\be<0> Blur Edges: Esto determina la distorsión del borde, esto se aplica al borde del subtitulo

ya sea el texto, borde, y sombra.

Ejem. {\be1\bord7}Aquí el código distorsiona el borde, {\be1\bord0}y aquí el texto.

Page 22: Tutorial subtítulos formato SSA o ASS

En la imagen muestra cómo "be" altera el texto haciéndolo un poco borroso (nota: se nota

muy poco en comparación al nuevo comando \blur). Ahora \be puede tener valores más altos

que 1.

\fnFontname: Aquí se debe poner el nombre de la fuente que aparecerá en la pantalla, cuando

se usa una fuente que no está instalada en el sistema, la fuente por defecto sale en Arial.

Ejem. {\fnArial}Esta es una mezcla {\fnCourier New}de dos fuentes.

\fsFontsize: Esto determina el tamaño de la fuente.

Ejem. {\fs16}Este texto es pequeño, {\fs66}este texto es grande.

\fsc<x>Fontscale: Esto determina la escala de tamaño del subtítulo, x = escala horizontal, y =

escala vertical, el valor debe ser colocado en porcentajes.

Ejem. {\fscx130}Este texto es ancho, {\fscy130}este texto es largo.

\fspFontspacing: Esto determina la distancia entre las letras, el valor es determinado en

píxeles.

Ejem: {\fsp30}Las letras de este texto están separadas.

\fr<x>Fontrotate: Esto determina el ángulo que tendrá el subtitulo respecto a uno o varios

ejes, el valor debe ser introducido según el ángulo que se le quiera dar.

Ejem. {\frz30}Este texto tiene un ángulo de 30º en el eje z.

{\frx30}Este texto tiene un ángulo de 30º en el eje x.

{\fry30}Este texto tiene un ángulo de 30º en el eje y.

{\frz30\frx30\fry30}Y este texto tiene un ángulo de 30º en todos los ejes.

Page 23: Tutorial subtítulos formato SSA o ASS

En la imagen se ve que el texto Green Green esta en con una inclinación en el eje y.

\feFont encoding: El número que se introduce después de "fe" especifica el código de fuente

del carácter, 1 = determina los caracteres de nuestra escritura.

Ejem. Cielo en kanji se escribe {\fe128}‹ó{\fe1}, y en romanji se escribe Sora

\cColour: Este código determina el color que tendrá el subtítulo, aquí solamente se deben

poner colores en numeración hexadecimal. Sinónimo \1c

También son utilizados los códigos "\2c, \3c, \4c" que determinan el color secundario, el color

del borde, y el color de la sombra respectivamente.

Ejem. En este texto desde {\c&H000000\3c&Hffffff\4c&Hc0c0c0}este lugar se cambian los

colores.

El color secundario es el color en el que aparece el karaoke para cambiar al color primario.

\a Alignment: Este código determina la posición en la que saldrá el subtítulo en la pantalla.

El valor 1 determina que el subtitulo aparecerá en la parte inferior izquierda.

El valor2 determina que el subtitulo aparecerá en la parte inferior central.

El valor 3 determina que el subtitulo aparecerá en la parte inferior derecha.

Si a los valores anteriores se les adiciona 4 los subtítulos aparecerán en la parte superior.

Si se les adiciona 8 aparecerán en la parte central.

Ejem. {\a5}Este es un subtítulo en la parte superior izquierda.

{\a10}Este es un subtítulo en la parte central.[/color]

\an Alignment: Éste también es un comando de alineación, alternativo al anterior. En éste, los

subtítulos se acomodan según el teclado numérico, como muestra la imagen. Pero les aconsejo

que utilicen los valores del comando "\a", ya que este comando utiliza los mismos valores que

el de alineación en la parte de "Estilos de Línea".

Page 24: Tutorial subtítulos formato SSA o ASS

Ejem. {\an5}Este subtítulo está alineado por el comando "\an".

[color=red]\k Karaoke: Este comando determina el karaoke que se verá en la pantalla, los

valores se encuentran en centésimas de segundo.

Ejem. {\k94}Esta {\k48}es {\k24}una {\k150}línea {\k94}en karaoke.

también se puede utilizar "\kf" o "K", "\ko" el comando "kf" o "K" hace que las letras se

cambien de a poco a otro color.

Ejem.{\kf94}Esta {\kf48}es {\kf24}una {\K150}línea {\K94}en karaoke.

El código "ko" determina que durante el karaoke sólo aparezcan las letras sin borde y a medida

que éste avanza aparecen los bordes y cambia de color.

Ejem. {\ko94}Esta {\ko48}es {\ko24}una {\ko150}línea {\ko94}en karaoke.

En las imágenes de arriba se muestra un ejemplo de un karaoke normal, pero con ayuda de los

comandos de sustitución se pueden realizar karaokes como los de las imágenes de abajo.

Page 25: Tutorial subtítulos formato SSA o ASS

Para realizar un karaoke de este tipo es necesario que el karaoke lo hagan para cada letra

como muestra el ejemplo de abajo

{\kf13}S{\kf14}W{\kf13}E{\kf30}E{\kf30}T {\kf50}m{\kf50}e{\kf50}n{\kf50}...

Y utilizando una buena gama de colores como la de la imagen, y usando los comandos de

sustitución a cada karaoke se le cambia el color primario:

{\c&H??????}{\kf13}S{\c&H??????}{\kf14}W{\c&H??????}{\kf13}E{\c&H??????}{\kf30}E{\c&Hc

??????}{\kf30}T

{\c&H??????}{\kf50}m{\c&H??????}{\kf50}e{\c&H??????}{\kf50}n{\c&H??????}{\kf50}...

Y listo con eso tienen un karaoke como muestra el ejemplo.

Page 26: Tutorial subtítulos formato SSA o ASS

\alpha&H<0>Esto determina la transparencia de un subtítulo, para todo el subtítulo se utiliza

"\alpha&H" y para los colores, primarios, secundarios, borde y sombra se usa "\1a&H, \2a&H,

\3a&H, \4a&H" respectivamente.

FF es un valor en sistema Hexadecimal, que sería igual a 255 en sistema decimal.

Ejem. En este texto desde {\alpha&HFF}aquí las letras son transparentes.

\q<número>Esto se utiliza para cambiar el "wrapstyle" (estilo de corte de línea)

Puede valer 0, 1, 2, 3. Valores similares al "wrapstyle".

\rEsto se utiliza para terminar el efecto de un comando.

Ejem. {\i1}Esta frase es cursiva hasta aquí, {\r}luego el texto es normal.

Nota: este comando es de terminación de todos los comandos, a excepción de "\k, \a" y

tambien "\pos" o la función "\move" que no pueden ser terminados por ningún comando.

\r<estilo> Se utiliza para terminar todos los comandos si los hubiera, y además poner

determinado estilo.

Ejem. Esta frase tiene aquí el estilo especificado en la línea, {\rtelevVCD}y aquí el estilo

llamado televVCD.

[color=blue]Funciones

\t([<t1>, <t2>, ] [<aceleración>,] <estilos>)

Este comando determina la animación de un subtítulo.

"t1, t2" determinan el principio y el final de la animación, el tiempo esta determinado en

milisegundos.

"aceleración" determina la aceleración a la cual se desarrolla la animación, esto es opcional.

"estilos de cambio" determina el estilo de animación que se desea dar al texto, los estilos que

se pueden modificar aquí son "\c, \alpha, \fs, \fr[x,y,z], \fsc[x,y], \fsp, \bord, \shad,"

Ejem.

{\t(1000,2000,\fscx70\fscy130)}{\t(2000,3000,\fscx130\fscy70)}{\t(3000,4000,\frx90)}Este

texto está animado.

En el ejemplo pueden notar que di varios efectos a la animación, tienen que tener cuidado ya

que este comando es muy pesado para máquinas lentas por lo que recomiendo que lo

apliquen en máquinas Pentium IV.

Nota: este comando ignora las colisiones y si no se determina la posición en la que saldrá

puede superponerse a otro subtítulo

Page 27: Tutorial subtítulos formato SSA o ASS

Este comando es muy utilizado para desarrollar karaokes especiales. Para desarrollar un

karaoke de esta forma primero se debe realizar el karaoke.

El karaoke debe ser realizado para cada sílaba para que así con el código "\t" se pueda dar un

efecto apropiado

A continuación está un ejemplo de cómo desarrollar un karaoke con este efecto:

Ejemplo. Primero se debe desarrollar el karaoke para cada sílaba como se muestra abajo

{\kf110}Sa{\kf110}a...{\kf100} {\kf25}da{\kf25}i{\kf25}ji {\kf120}to...

Una vez realizado el karaoke se deben utilizar los valores del karaoke, ojo, tomando en cuenta

que los valores del mismo están en centésimas de segundo, ahora se puede colocar el

comando para desarrollar una animación en el karaoke

Ahora vamos a dar el efecto de que a medida que avance el karaoke las letras se vayan

inclinando hasta desaparecer:

{\kf110}{\t(0,1100,\frx90)}Sa{\r}{\kf110}{\t(1100,2200,\frx90)}a...{\r}{\kf100}

{\kf25}{\t(3200,3450,\frx90)}da{\r}{\kf25}{\t(3450,3700,\frx90)}i{\r}{\kf25}{\t(3700,3950,\frx9

0)}ji {\r}{\kf120}{\t(3950,5150,\frx90)}to...

Como muestra el ejemplo el karaoke que estaba "{\kf110}" se lo usa de la forma

"{\t(0,1100,.....)}" cambiando 110 a 1100, y en la siguiente sílaba en el karaoke se encuentra

"{\kf110}" y en la animación esta "{\t(1100,2200,.....)}" como pueden notar a diferencia del

karaoke donde los tiempos se los ponen normalmente en la animación se los debe ir sumando.

Otro apunte: notarán que cuando se termina cada animación se finaliza con "{\r}" esto indica

que la animación termina en ese lugar, ya que si no se pone el comando \r, la animación

realizará el cambio a todo el texto.

Bueno este sólo es un pequeño ejemplo de cómo usar este comando para realizar karaokes ya

que como mencioné antes, se pueden realizar cambios de diferente tipo.

Con este efecto se pueden realizar karaokes como muestra la imagen:

Page 28: Tutorial subtítulos formato SSA o ASS

\move(<x1>, <y1>, <x2>, <y2>[, <t1>, <t2>])

Este comando nos permite desarrollar subtítulos que se mueven por la pantalla, muy útil

cuando hay un cartel que se mueve en el video.

Como en el comando anterior, éste también ignora las colisiones.

<x1>, <y1> definen la posicion "x , y" iniciales.

<x2>, <y2> definen la posicion "x , y" finales.

<t1>, <t2> define el inicio y el fin del movimiento, esto es opcional.

ejem. {\move(100,100,500,500,1000,3000)}Este texto se está moviendo.

En la siguiente imagen se muestra cómo se puede mover un subtítulo.

Page 29: Tutorial subtítulos formato SSA o ASS

\pos(<x>, <y>)

Con esta función se puede colocar el subtítulo en cualquier lugar de la imagen, y también se lo

puede utilizar para encontrar las coordenadas iniciales y finales para la función "\move".

Los valores de "x, y" tienen el punto "0" en la parte superior izquierda de la pantalla, como

muestra la imagen, hacia la derecha estan los "x" positivos, y hacia abajo los "y" positivos.

Las funciones "\t, \move, \pos" ignoran las colisiones.

Ahora mostraré cómo se hace el karaoke de las imágenes que están a continuación:

Page 30: Tutorial subtítulos formato SSA o ASS

En este karaoke se utilizan las funciones "\t, \move y \pos" y los siguientes comandos de

sustitución: "\fr<x>, \fsc<x>,\shad, \1a&H y \3c&H", antes expliqué qué es cada comando y

para qué sirve, véanse los "comandos de sustitución".

Aquí esta el estilo de línea que utilizaré para el karaoke. Lo anoto porque para dar el efecto de

las letras que salen del karaoke se necesita que la función "\pos" trabaje al mismo tiempo con

la alineación, la fuente, el tamaño de fuente, la última a su vez depende de la escala del estilo

de línea o PlayResY, que se encuentra en el encabezado del subtítulo:

[Script Info]

; This is a Sub Station Alpha v4 script.

; For Sub Station Alpha info and downloads,

; go to http://www.eswat.demon.co.uk/

; or email [email protected]

Title: <untitled>

Original Script: <unknown>

ScriptType: v4.00

Collisions: Normal

PlayResY: 600

Page 31: Tutorial subtítulos formato SSA o ASS

PlayDepth: 0

Timer: 100.0000

Aqui utilicé un PlayResY de 600 píxeles.

Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, TertiaryColour,

BackColour, Bold, Italic, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV,

AlphaLevel, Encoding

Style: Ejemplo,Monotype

Corsiva,42,&H98A348,&HA7767E,&HF5FDF2,&HF5FDF2,1,0,1,2,0,6,30,30,30,0,0

Ojo marque de color "rojo" la parte de la sombra del subtítulo en "0" para que así con los

comandos de sustitución demos el efecto en el karaoke que la sombra crezca, y lo que está en

azul es la alineación del subtítulo, lo puse en "6" para que así el subtítulo aparezca en la parte

superior de la pantalla y así en el efecto de las letras que salen del subtítulo se muevan hacia

abajo y no hacia arriba donde ya empezarían a salirse de la imagen.

Dialogue: Marked=0,0:01:44.47,0:01:44.97,Ejemplo,,0000,0000,0000,,

{\move(400,30,400,0,0,500)}

{\t(0,250,,\frx80\fry80\frz90)}{\t(250,500,,\frx160\fry160\frz180)}Kitto meguri awaseta

Dialogue: Marked=0,0:01:44.97,0:01:45.47,Ejemplo,,0000,0000,0000,,{\frx160\fry160\frz180}

{\move(400,0,400,30,0,500)}

{\t(0,250,,\frx300\fry240\frz270)}{\t(250,500,,\frx360\fry360\frz360)}Kitto meguri awaseta

Para dar el efecto de movimiento en el subtítulo se debe hacer que éste aparezca un poco

antes, en el ejemplo hice que aparezca 1 segundo antes, para que así en ese tiempo le de el

efecto de rotación y movimiento, y se debe terminar el subtítulo en ese tiempo, ya que si se lo

ponen con todo el karaoke, debido al comando "\r" limitará el movimiento de rotación sólo a

la primera sílaba que en este caso seria "Ki".

Una vez dado el efecto del movimiento se termina es subtítulo en este caso sólo dura 1

segundo.

Ahora vamos al karaoke:

Como ya expliqué antes, para realizar un karaoke de este tipo primero se tiene que realizar un

karaoke para cada sílaba como se muestra abajo:

{\kf38}Ki{\kf35}tto {\kf30}me{\kf29}gu{\kf33}ri {\kf33}a{\kf25}wa{\kf25}se{\kf25}ta

Y con los tiempos conseguidos en el karaoke se los utiliza en las funciones, ojo, considerando

que las funciones trabajan en milésimas de segundo y el karaoke en centésimas de segundo.

Ahora se aplican los comandos "\fsc<x>, \shad". Con la primera función se da el efecto de

crecimiento en el karaoke, y en la animación incluso debido a que las sílabas crecen, todo el

subtítulo se mueve con el karaoke, con el siguiente comando se da el efecto de que la sombra

crezca a medida que avanza el karaoke.

Page 32: Tutorial subtítulos formato SSA o ASS

Ojo, tienen que tener cuidado al hacer la suma de los milisegundos ya que con tanto código

uno tiende a equivocarse, como un consejo en el último tiempo marcado en la función aparece

el tiempo en el que el subtítulo aparecerá en la pantalla, este tiempo y el tiempo del subtítulo

tienen que ser parecidos, mejor si son iguales.

En el ejemplo el último tiempo marcado por la función es "3730" que está en milisegundos en

realidad el tiempo es "3.730"

Ahora el tiempo del subtítulo lo sacas de la resta del tiempo final menos el tiempo inicial.

Aquí el tiempo inicial es "44.47" y el final es "48.40" haciendo la resta nos da "3.93" como ven

los tiempos son casi parecidos.

Dialogue: Marked=0,0:01:45.47,0:01:48.40,Ejemplo,,0000,0000,0000,,

{\t(1000,1190,\fscx110\fscy110}{\t(1190,1380,\fscx100\fscy100}{\t(1000,1380,\shad4}{\kf100}

{\kf38}Ki{\r}

{\t(1380,1555,\fscx110\fscy110}{\t(1555,1730,\fscx100\fscy100}{\t(1380,1730,\shad4}{\kf35}t

to {\r}

{\t(1730,1880,\fscx110\fscy110}{\t(1880,2030,\fscx100\fscy100}{\t(1730,2030,\shad4}{\kf30}

me{\r}

{\t(2030,2175,\fscx110\fscy110}{\t(2175,2320,\fscx100\fscy100}{\t(2030,2320,\shad4}{\kf29}g

u{\r}

{\t(2320,2485,\fscx110\fscy110}{\t(2485,2650,\fscx100\fscy100}{\t(2320,2650,\shad4}{\kf33}r

i {\r}

{\t(2650,2815,\fscx110\fscy110}{\t(2815,2980,\fscx100\fscy100}{\t(2650,2980,\shad4}{\kf33}a

{\r}

{\t(2980,3105,\fscx110\fscy110}{\t(3105,3230,\fscx100\fscy100}{\t(2980,3230,\shad4}{\kf25}

wa{\r}

{\t(3230,3355,\fscx110\fscy110}{\t(3355,3480,\fscx100\fscy100}{\t(3230,3480,\shad4}{\kf25}s

e{\r}

{\t(3480,3605,\fscx110\fscy110}{\t(3605,3730,\fscx100\fscy100}{\t(3480,3730,\shad4}{\kf25}t

a

Bueno eso es todo para hacer el karaoke del subtítulo

Ahora explicaré como se da el efecto de las letras que salen del karaoke, en esta parte se

utiliza las funciones "\t" y "\pos"

Ahora como muestra el ejemplo, cada sílaba tiene que tener su propio tiempo de duración

para que así sólo la sílaba que participa en el momento del karaoke se mueva y así no se afecte

a todo el subtítulo.

En la función "\t" se utiliza el comando de escala como en el karaoke pero aquí con una escala

mayor.

Como cada sílaba tiene su propio tiempo entonces el tiempo en la función se le realiza según el

tiempo que se obtuvo en el karaoke para dicha sílaba.

Los tiempos de las sílabas los consiguen sumando los tiempos del karaoke ya que el tiempo del

Page 33: Tutorial subtítulos formato SSA o ASS

karaoke y del subtítulo están en centésimas de segundo, ahora para que solamente aparezca

nlos bordes de las letras y todo lo demás sea transparente, se utiliza el comando "\a" que nos

da el efecto de transparencia al color primario.

Dialogue:

Marked=0,0:01:45.47,0:01:45.85,Ejemplo,,0000,0000,0000,,{\t(0,190,\fscx110\fscy110}{\t(190

,380,\fscx100\fscy100}{\pos(270,30)}{\1a&Hffffff\3c&Hffffff}Ki

Dialogue:

Marked=0,0:01:45.85,0:01:46.20,Ejemplo,,0000,0000,0000,,{\t(0,175,\fscx110\fscy110}{\t(175

,350,\fscx100\fscy100}{\pos(305,30)}{\1a&Hffffff\3c&Hffffff}tto

Dialogue:

Marked=0,0:01:46.20,0:01:46.50,Ejemplo,,0000,0000,0000,,{\t(0,150,\fscx110\fscy110}{\t(150

,300,\fscx100\fscy100}{\pos(353,30)}{\1a&Hffffff\3c&Hffffff}me

Dialogue:

Marked=0,0:01:46.50,0:01:46.79,Ejemplo,,0000,0000,0000,,{\t(0,145,\fscx110\fscy110}{\t(145

,290,\fscx100\fscy100}{\pos(390,30)}{\1a&Hffffff\3c&Hffffff}gu

Dialogue:

Marked=0,0:01:46.79,0:01:47.12,Ejemplo,,0000,0000,0000,,{\t(0,165,\fscx110\fscy110}{\t(165

,330,\fscx100\fscy100}{\pos(415,30)}{\1a&Hffffff\3c&Hffffff}ri

Dialogue:

Marked=0,0:01:47.12,0:01:47.45,Ejemplo,,0000,0000,0000,,{\t(0,165,\fscx110\fscy110}{\t(165

,330,\fscx100\fscy100}{\pos(443,30)}{\1a&Hffffff\3c&Hffffff}a

Dialogue:

Marked=0,0:01:47.45,0:01:47.70,Ejemplo,,0000,0000,0000,,{\t(0,125,\fscx110\fscy110}{\t(125

,250,\fscx100\fscy100}{\pos(472,30)}{\1a&Hffffff\3c&Hffffff}wa

Dialogue:

Marked=0,0:01:47.70,0:01:47.95,Ejemplo,,0000,0000,0000,,{\t(0,125,\fscx110\fscy110}{\t(125

,250,\fscx100\fscy100}{\pos(505,30)}{\1a&Hffffff\3c&Hffffff}se

Dialogue:

Marked=0,0:01:47.95,0:01:48.20,Ejemplo,,0000,0000,0000,,{\t(0,125,\fscx110\fscy110}{\t(125

,250,\fscx100\fscy100}{\pos(535,30)}{\1a&Hffffff\3c&Hffffff}ta

Bueno con todo eso realizamos un karaoke con animación.

Traten de realizar el karaoke en forma ordenada, ya que si no lo hacen debido a tanto código y

letra pueden confundirse. En el momento de utilizar la función "\t" es cuando más se tiende a

equivocarse.

Ahora ustedes pueden realizar el karaoke que deseen utilizando los comandos de sustitución,

solo necesitan un poco de imaginación para realizarlos, éste es un ejemplo de lo que se puede

hacer con las funciones en especial con la funcion "\t":

\org(<x>, <y>)

Mueve el origen de rotación (x,y). Esto es útil cuando los subtítulos se mueven en rotación.

Page 34: Tutorial subtítulos formato SSA o ASS

\fade(<a1>, <a2>, <a3>, <t1>, <t2>, <t3>, <t4>)

Este comando nos permite crear subtítulos que se desvanezcan.

"a1" Nos define el valor alpha antes del "t1"

"a2" Nos define el valor alpha entre los tiempos "t2" y "t3"

"a3" Define el valor alpha despues de "t4"

Loa valores de alpha están limitados entre 0 y 250, siendo 0 lo mas nítido, y 250 lo más

transparente.

<t1>, <t4> El comienzo y el fin de la animación, el tiempo se coloca en milisegundos.

<t1> - <t2> Es el tiempo en el cual la animación irá del valor alpha "a1" al valor alpha "a2".

<t2> - <t3> Es el tiempo en el cual la animación se mantendrá en el valor alpha "a2".

<t3> - <t4> Es el tiempo en el cual la animación irá del valor alpha "a2" al valor alpha "a3".

Esta opcion es útil para poner subtítulos en un video donde los carteles van desapareciendo.

Ejm. {\fade(250,10,250,0,1000,3000,4000)}Este texto está animado con el comando "\fade".

\fad(<t1>, <t2>)

Éste también es un comando para que las letras se desvanezcan, pero es más simple, como

ven, a diferencia de la función "\fade", en esta función no se puede elegir el nivel de

transparencia del subtítulo.

<t1> Es el tiempo en el cual el subtítulo aparecerá.

<t1> - <t2> Es el tiempo en el cual el subtítulo permanecerá nítido.

<t2> Desde este tiempo el subtítulo desaparece.

Ejm. {\fad(1000,3000)}Este texto está animado con la función "\fad".

Funciones Adicionales

\org(x1,y1) Básicamente esta función crea un punto de origen, pero este punto de origen es

creado para tener un punto de referencia de rotación cuando se usan las funciones \frx, \fry,

\frz.

Cuando se usa esta función, lo que se hace es que lo que se pone a girar, gira pero siempre a

una misma distancia de ese punto, es algo confuso así que lo mostraré con unas imagenes:

Los puntos rojos es una aproximación de en dónde se encontraría punto sobre el cual está

girando HOLA. Las primeras tres primeras imágenes muestran cómo el HOLA está girando

alrededor del punto 300,300 en el eje X, y las tres de abajo muestran al Hola girando alrededor

del mismo punto pero sobre el eje Z, el código usado fue:

Page 35: Tutorial subtítulos formato SSA o ASS

{\org(300,300}{\t(3000,30000,,\frx10080}Hola

Page 36: Tutorial subtítulos formato SSA o ASS

{\org(300,300}{\t(3000,30000,,\frz10080}Hola

Donde el valor de 100080 es simplemente para que de varias vueltas una y otra vez.

\clip([<scale>,] <comandos>)

Hace lo mismo que el clip pero dentro de la forma que se dibuje por medio de los comandos

de dibujo <scale> tiene el mismo significado que en el caso de \p<scale>, los cuales están

explicados en la parte más abajo.

Nuevos comandos del VSFilter

El VSFilter que se utiliza actualmente (actualizado por los chicos del Aegisub), a partir de la

versión 2.39, posee los siguientes comandos nuevos:

Y el comando \iclip que es igual a \clip pero invertido (es decir, en lugar de mostrar sólo lo que

está dentro del rectángulo, muestra sólo lo que está fuera del rectángulo). Al igual que con

\clip también puede utilizarse con gráficos vectoriales en lugar de rectángulos.

Además, a partir de esa misma versión del VSFilter los siguientes comandos nuevos pueden ser

animados con \t:

\fax \fay \be \blur \xbord \ybord \xshad \yshad \iclip

Para \clip e \iclip, solamente los rectángulos pueden ser animados. Los dibujos vectoriales no

pueden ser animados con \t.

Funciones de dibujo

Page 37: Tutorial subtítulos formato SSA o ASS

Por medio del formato ASS se pueden hacer dibujos, el dibujo que uno haga siempre debe

estar cerrado no debe quedar abierto y si queda abierto el programa lo cerrara con una línea

recta, los colores de ese dibujo están dados por el color de la fuente que uno le ponga, así que

si el Outline está en verde, la figura tendrá el borde verde y así con las demás propiedades,

tras hacer el dibujo, al dibujo se le pueden aplicar todas las funciones que se le pueden aplicar

a las letras, así que de igual manera se pueden hacer Karaokes combinados con el dibujo que

uno haga y letras. Como en la imagen del karaoke siguiente:

Page 38: Tutorial subtítulos formato SSA o ASS

Tras esa pequeña introducción pasemos entonces a los códigos para dibujar:

\p<scale>

<scale> Activa el modo de dibujo y pone el nivel de amplificación de las coordenadas al mismo

tiempo, dónde un número mayor significara un dibujo más pequeño y viceversa. Escala se

interpreta como dos elevado al numero de (<scale> menos uno). Por ejemplo {\p4} en la

coordenada (8,16) será lo mismo que {\p1} y (1,2), esta característica puede ser utilizada para

la precisión de sub-pixeles.

Si <scale> es cero el modo de dibujo se desactivara y el texto se interpretara como texto.

\pbo<y>

<y> Desviación de la linea base. Por defecto todos los dibujos se situan en la linea de escritura

actual. Con este valor es posible moverlos arriba o abajo en <y> pixeles. (Arriba y<0>0)

m <x> <y> Mueve el cursor a <x>, <y>

n <x> <y> Mueve elcursor a <x>, <y> (Las formas sin cerrar quedan abiertas)

l <x> <y> Dibuja una linea desde el punto actual hasta <x>, <y>

b <x1> <y1> <x2> <y2> <x3> <y3> Curva de tercer grado hasta el punto <x3> <y3> usando los

puntos 1 y 2 como puntos de control

Los siguientes tres comandos aún no los tengo muy claros pero sé que igual funcionan:

s <x1> <y1> <x2> <y2> <x3> <y3> .. <xN> <yN> Serie de curvas de tecer grado hasta el punto N

debe contener minimo 3 coordenadas.

p <x> <y> Extiende la serie de curvas hasta <x>, <y>

Cierra la serie de curvas

Ya con la explicación de eso toca aclarar que:

Los dibujos siempre deben empezar con un comando Move (m)

Las figuras que se encuentren se trataran por medio de una XOR entre ellas

Si un comando se va a repetir no hay necesidad de escribir la letra sólo las coordenadas.

Las coordenadas son relativas a la posición del cursor actual y a la alineación

Page 39: Tutorial subtítulos formato SSA o ASS

Los comandos p y c sólo pueden ir después del comandos

Y ahora sí pasemos a una serie de ejemplos simples:

Si se desea hacer un cuadrado lo que se debería escribir seria algo como:

{\pos(200,200)}{\p1} m 0 0 l 100 0 100 100 0 100{\p0}HOLA

Aquí se utilizo primero el comando \pos para ubicar el cuadrado en cualquier parte de la

pantalla, despues le puse la escala en 1, activando así el comando de dibujo, tars eso movi el

cursos a la posición (0,0) que en nuestro caso seria la (200,200) e hice una linea hasta (100,0)

despues continue la linea hasta (100,100) y por último la movi hasta (0,100) no hice la linea

hasta (0,0) de nuevo por lo que ya habia dicho de que el se cierra con una linea recta solo, y

por último termine de dibujar y escribi algo para mostrar como se puede escribir algo tras

hacer un dibujo. el resultado fue:

Ahora para mostrar la opción b se utilizo la siguiente función:

{\pos(200,200)}{\p1} m 0 0 b 100 0 100 100 0 100 -100 100 -100 0 0 0{\p0}

Imágenes:

Page 40: Tutorial subtítulos formato SSA o ASS

El {\p0} al final no es necesario, a la imagen se le hizo un rectángulo el cual encuadra el circulo

generado por la función, el punto en violeta es el punto inicial, los tres siguientes puntos en

azul fuerón los que generarón la primera mitad del Ovalo, el cual podemos ver a continuación:

{\pos(200,200)}{\p1} m 0 0 b 100 0 100 100 0 100

Los otros tres puntos o sea los puntos en rojo generaron la otra mitad del ovalo para dar como

resultado la imagen mostrada primero

Y por último para mostrar la función s se utilizo el siguiente comando:

{\pos(200,200)}{\p1} m 0 0 s 100 0 100 100 0 100 c

Page 41: Tutorial subtítulos formato SSA o ASS

Ese comando por alguna razón que desconozco ya que no entiendo claramente la función p

puede ser remplazado por

{\pos(200,200)}{\p1} m 0 0 s 100 0 100 100 0 100 p 0 0 100 0 100 100

Page 42: Tutorial subtítulos formato SSA o ASS

Donde se ve que se remplaza la función c por p y los primeros tres puntos o sea el punto de

inicio el primer punto de s y el segundo de s, pero de una u otra forma se obtiene el mismo

resultado.

La verdad no sé como llego a eso, así que hice una función la cual creí me daría un resultado

similar al de la función p o sea un cuadrado de las mismas dimisiones y poniéndole la misma

numeración de arriba llegue a: