Accueil  Tutoriels  Outils Karaoké  Téléchargements  Forum  Multimedia  Contact

SweetKaraoké

Sous-titrage de karaokés


La fonction \clip en détail



Ce tutoriel apporte quelques précisions sur la fonction \clip.

Accédez directement à :

Cette fonction, quoique difficile à comprendre, n'en est pas moins très puissante. Elle correspond aux calques des outils tels que Paint Shop Pro ou Adobe After Effect.

Appartenant aux fonctions implantées dans le format de script Advanced SubStation Alpha (voir le tutoriel "La syntaxe SSA et ASS"), elle permet de définir un clip ou zone de visibilité à l'intérieur de laquelle le texte apparaîtra à l'écran. Cette zone peut-être une forme simple (rectangle) ou une forme plus complexe.

Nota : je n'utiliserai que des scripts ASS car ils vont nous permettre de gérer les lignes de "Dialogue" comme des calques qui vont se superposer les uns sur les autres.

Exemple : dans la capture d'écran suivante, la ligne de dialogue avec le calque 2 (layer) verra ses propriétés se superposer à celles de la ligne de dialogue 1 (script).


Afin de mieux comprendre cette fonction, nous allons commencer par un exemple simple.

Cacher une partie d'une ligne de sous-titre

Pour cela, ouvrez votre éditeur de texte préféré et copiez les lignes suivantes.

[Script Info]
; This is an Advanced Sub Station Alpha v4+ script.
; For Sub Station Alpha info and downloads,
; go to http://www.eswat.demon.co.uk/
; or email kotus@eswat.demon.co.uk
ScriptType: v4.00+
Collisions: Normal
PlayResX: 640
PlayResY: 100
Timer: 100.0000

[V4+ Styles]
Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, OutlineColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, Encoding
Style: kara,Arial Unicode MS,30,&H00ffffff&,&Hffffffff&,&Hff006666&,&H800f0f0f&,0,0,0,0,100,100,0,0.00,1,2,0,5,30,30,0,0

[Events]
Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
Dialogue: 1,0:00:00.00,0:00:10.00,kara,NTP,0000,0000,0000,,{\clip(0,0,640,55)}{\1c&H3366ff&}{\K400}futari tokeru toki mo himitsu dayo

Les moins courageux peuvent télécharger ce fichier.

Résultat :


Avant d'aller plus en avant, il me semble important de rappeler comment sont définies les coordonnées dans la syntaxe ASS. Le repère utilisé est un repère orthonormé. L'origine se situe en haut à gauche de l'écran. Le sens de l'axe des abscisses est de gauche à droite et celui de l'axe des ordonnées de haut en bas.


Dans cet exemple, la résolution de la vidéo est 640 pixels (abscisse) par 100 pixels (ordonnée). La zone de visibilité du texte (clip) se situe dans un rectangle dont les coordonnées sont : (0,0) pour le coin supérieur gauche, et (640,55) pour le coin inférieur droit. Le texte apparaît logiquement sur la partie haute de l'écran.


Ecrire une ligne de sous-titre avec plusieurs couleurs

On peut aussi, par exemple, sélectionner une partie d'une ligne de sous-titre pour lui appliquer un certain nombre de propriétés.

Un peu compliqué à comprendre ? Alors, passons à un exemple. Copiez les lignes suivantes ou téléchargez ce fichier.

[Script Info]
; This is an Advanced Sub Station Alpha v4+ script.
; For Sub Station Alpha info and downloads,
; go to http://www.eswat.demon.co.uk/
; or email kotus@eswat.demon.co.uk
ScriptType: v4.00+
Collisions: Normal
PlayResX: 640
PlayResY: 100
Timer: 100.0000

[V4+ Styles]
Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, OutlineColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, Encoding
Style: kara,Arial Unicode MS,35,&Hffffff&,&Hffffff&,&H006666&,&H0f0f0f&,0,0,0,0,100,100,0,0.00,1,0,0,5,30,30,0,0

[Events]
Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
Dialogue: 1,0:00:00.00,0:00:04.00,kara,,0000,0000,0000,,{\clip(0,0,640,47)}{\1c&H3333ff&}{\2c&H3333cc&}{\K400}futari tokeru toki mo himitsu dayo
Dialogue: 2,0:00:00.00,0:00:04.00,kara,,0000,0000,0000,,{\clip(0,47,640,55)}{\1c&Hff99ff&}{\2c&Hff33ff&}{\K400}futari tokeru toki mo himitsu dayo
Dialogue: 3,0:00:00.00,0:00:04.00,kara,,0000,0000,0000,,{\clip(0,55,640,100)}{\1c&Hffffff&}{\2c&Hcccccc&}{\K400}futari tokeru toki mo himitsu dayo

Résultat :


Dans ce script, trois zones de visibilité ont été créées, à l'intérieur desquelles ont été définies des couleurs de sous-titre avant et après l'effet karaoké.


Forme des zones de visibilité

Je n'ai utilisé, jusqu'à présent, que des cadres rectangulaires pour définir la zone de clip, mais d'autres formes sont également concevables : carré, pentagone, ovale...

Pour cela, il est nécessaire d'utiliser les commandes de dessin (voir le tutoriel "La syntaxe SSA et ASS").

La syntaxe est la suivante :

\clip([<1...5....>,] <commandes de dessins>)
<1...5....> a la même signification que pour la commande \p. Il permet de régler l'échelle de la zone de visibilité.


1er exemple : le miroir brisé. Copiez les lignes suivantes ou téléchargez ce fichier.

[Script Info]
; This is an Advanced Sub Station Alpha v4+ script.
; For Sub Station Alpha info and downloads,
; go to http://www.eswat.demon.co.uk/
; or email kotus@eswat.demon.co.uk
ScriptType: v4.00+
Collisions: Normal
PlayResX: 640
PlayResY: 100
Timer: 100.0000

[V4+ Styles]
Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, OutlineColour, BackColour, Bold, Italic, Underline, StrikeOut,

ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, Encoding
Style: kara,Dolphins,44,&HCCFF66&,&H66CCFF&,&H6633FF&,&HFFCCCC&,0,0,0,0,100,100,0,0.00,1,1,4,1,0,0,0,0

[Events]
Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
Dialogue: 1,0:00:00.00,0:00:04.00,kara,NTP,0000,0000,0000,,{\clip(m 0 0 l 160 0 200 100 0 100)\pos(50,70)}{\K400}futari tokeru toki mo himitsu dayo
Dialogue: 2,0:00:00.00,0:00:04.00,kara,NTP,0000,0000,0000,,{\clip(m 164 0 l 640 0 300 100 204 100)\pos(50,60)}{\K400}futari tokeru toki mo himitsu dayo
Dialogue: 3,0:00:00.00,0:00:04.00,kara,NTP,0000,0000,0000,,{\clip(m 304 100 l 640 50 640 4)\pos(100,70)}{\K400}futari tokeru toki mo himitsu dayo
Dialogue: 4,0:00:00.00,0:00:04.00,kara,NTP,0000,0000,0000,,{\clip(m 309 100 l 640 55 640 100)\pos(60,80)}{\K400}futari tokeru toki mo himitsu

Résultat :


2eme exemple : créer une zone de visibilité arrondie. Copiez les lignes suivantes ou téléchargez ce fichier.

[Script Info]
; This is an Advanced Sub Station Alpha v4+ script.
; For Sub Station Alpha info and downloads,
; go to http://www.eswat.demon.co.uk/
; or email kotus@eswat.demon.co.uk
ScriptType: v4.00+
Collisions: Normal
PlayResX: 640
PlayResY: 100
Timer: 100.0000

[V4+ Styles]
Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, OutlineColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, Encoding
Style: kara,Dolphins,44,&HCCFF66&,&H66CCFF&,&H6633FF&,&HFFCCCC&,0,0,0,0,100,100,0,0.00,1,1,4,1,0,0,0,0

[Events]
Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
Dialogue: 1,0:00:00.00,0:00:05.00,kara,NTP,0000,0000,0000,,{\clip(m 0 0 l 310 0 200 100 0 100)\pos(50,70)}{\K400}futari tokeru toki mo himitsu dayo
Dialogue: 2,0:00:00.00,0:00:05.00,kara,NTP,0000,0000,0000,,{\clip(m 320 0 b 520 0 520 100 320 100)\pos(60,45)}{\K400}futari tokeru toki mo himitsu dayo
Dialogue: 3,0:00:00.00,0:00:05.00,kara,NTP,0000,0000,0000,,{\clip(m 309 100 l 640 55 640 100)\pos(60,80)}{\K400}futari tokeru toki mo himitsu dayo

Résultat :


Fonction \clip associée à la fonction d'animation \t

La fonction \clip peut aussi être associée à la fonction d'animation \t afin, par exemple, de faire disparaître progressivement une partie d'une ligne de sous-titre. Copiez les lignes suivantes ou téléchargez ce fichier.

[Script Info]
; This is an Advanced Sub Station Alpha v4+ script.
; For Sub Station Alpha info and downloads,
; go to http://www.eswat.demon.co.uk/
; or email kotus@eswat.demon.co.uk
ScriptType: v4.00+
Collisions: Normal
PlayResX: 640
PlayResY: 100
Timer: 100.0000

[V4+ Styles]
Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, OutlineColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, Encoding
Style: kara,Arial Unicode MS,30,&HCCFF66&,&H66CCFF&,&H6633FF&,&HFFCCCC&,0,0,0,0,100,100,0,0.00,1,1,4,4,0,0,0,0

[Events]
Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
Dialogue: 2,0:00:00.00,0:00:03.00,kara,NTP,0000,0000,0000,,{\clip(0,30,640,70)}{\pos(120,55)}{\t(1000,3000,\clip(0,58,640,58))} {\1c&H3366ff&}futari tokeru toki mo himitsu dayo
Dialogue: 1,0:00:00.00,0:00:04.00,kara,NTP,0000,0000,0000,,{\pos(120,55)}{\1c&H00FFFF&}futari tokeru toki mo himitsu dayo
Dialogue: 2,0:00:04.00,0:00:08.00,kara,NTP,0000,0000,0000,,{\clip(320,0,320,100)}{\pos(120,55)}{\t(1000,4000,\clip(0,0,640,100))} {\1c&H3366ff&}futari tokeru toki mo himitsu dayo
Dialogue: 1,0:00:04.00,0:0:08.00,kara,NTP,0000,0000,0000,,{\pos(120,55)}{\1c&H00FFFF&}futari tokeru toki mo himitsu dayo

Résultat :



Attention : l'association de la fonction \clip avec la fonction d'animation n'est valable que pour un clip rectangulaire de la forme \clip(<X1>,<Y1>,<X2>,<Y2>).


J’espère que ces quelques exemples vous aideront. N'oubliez pas que la fonction \clip peut-être associée à d'autres effets. Maintenant c’est à vous. Bon courage et bon karaoké !

Nombre total de visiteurs :