1.4. Sous-titres et OSD

MPlayer peut afficher des sous-titres durant le film. Les formats suivants sont supportés:

MPlayer peut convertir les formats précédemment listés (excepté les trois premiers) dans dans les formats de destination suivants, en utilisant ces options:

MEncoder peut convertir les sous-titres DVD au format VobSub.

Les options en ligne de commande diffèrent légèrement suivant les différents formats:

Sous-titres VobSub.  Les sous-titres VobSub consistent en un gros (plusieurs méga-octets) fichier .SUB, et d'éventuels fichiers .IDX et/ou .IFO. Si vous avez des fichiers tels que sample.sub, sample.ifo (optionnel), sample.idx - vous devrez passer à MPlayer l'option -vobsub sample [-vobsubid id] (éventuellement avec le chemin complet). L'option -vobsubid est comme l'option -sid pour les DVDs, vous pouvez choisir les pistes de sous-titres (langues) avec. Au cas où -vobsubid est omis, MPLayer essaiera d'utiliser les langues indiqués par l'option -slang et se rabattra sur l'objet langidx du fichier .IDX pour définir la langue de sous-titres. Si cela échoue, il n'y aura pas de sous-titres.

Autres sous-titres.  Les autres formats consistent en un seul fichier texte contenant le timing, l'emplacement et autres infos du texte. Utilisation: si vous avez un fichier tel que exemple.txt, vous devrez passer l'option -sub exemple.txt (éventuellement avec le chemin complet).

Réglage du timing et de l'emplacement des sous-titres:

-subdelay sec
Décale les sous-titres de sec secondes. Peut être négatif.
-subfps DÉBIT
Spécifie le rapport trame/sec du fichier de sous-titres (nombre à virgule).
-subpos 0-100
Spécifie la position des sous-titres sur l'écran.

Si vous constatez un décalage progressif entre le film et les sous-titres en utilisant un fichier de sous-titres MicroDVD, il est probable que la vitesse du film et celle des sous-titres sont différentes. Veuillez noter que le format de sous-titres MicroDVD utilise des numéros de trames absolus pour sa synchronisation, et de plus l'option -subfps ne peut pas être utilisée avec ce format. MPlayer n'a pas la possibilité de deviner la vitesse du fichier de sous-titres, vous devrez donc convertir manuellement la vitesse. Il y a un petit script perl dans le répertoire contrib du serveur FTP de MPlayer qui fera la conversion pour vous.

A propos des sous-titres DVD, voir la section DVD.

1.4.1. Format de sous-titres propre à MPlayer (MPsub)

MPlayer introduit un nouveau format de sous-titres appelé MPsub. Il a été conçu par Gabucino. Son principal avantage est de se baser dynamiquement sur la durée (bien qu'il possède également un mode basé sur les frames). Exemple (de DOCS/tech/mpsub.sub):

FORMAT=TIME
# premier nombre : attends cette durée après la disparition du dernier sous-titre
# second nombre  : affiche le sous-titre en cours pour tant de secondes

15 3
A long long, time ago...

0 3
in a galaxy far away...

0 3
Naboo was under an attack.

Comme vous pouvez le constater, l'objectif ici est de faciliter l'édition la synchronisation, la jointure et le découpage. Si vous avez un sous-titre SSA mal synchronisé avec votre version de la vidéo, faites simplement un

mplayer dummy.avi -sub source.ssa -dumpmpsub
Un fichier dump.mpsub sera crée dans le répertoire courant, contenant le texte du sous-titre au format MPsub. Vous pourrez alors aisément ajouter/soustraire du temps entre les sous-titres.

Les sous-titres sont affichés par une technique nommée 'OSD', On Screen Display (Affichage sur l'écran). L'OSD est utilisé pour afficher le temps de lecture, la barre de volume, d'avance/retour rapide, le contraste, etc.

1.4.2. Installer l'OSD et les sous-titres

Vous aurez besoin d'un paquet de polices MPlayer afin d'utiliser les fonctions d'OSD/SUB. Il y a plusieurs manières de les obtenir :

  • Utiliser le générateur de polices de TOOLS/subfont-c. C'est un outil complet pour convertir les polices TTF/Type1/etc en paquets de polices mplayer (voir TOOLS/subfont-c/README pour les détails).

  • Utiliser le plugin générateur de polices de GIMP dans TOOLS/subfont-GIMP (note: vous devez avoir le plugin brut HSI également, voir http://realtime.ssu.ac.kr/~lethean/mplayer/).

  • Utiliser une fonte TrueType (TTF), par l'intermédiaire de la librairie freetype. La Version 2.0.9 ou supérieur est obligatoire! Ensuite vous avez deux méthodes:

    • utiliser l'option -font /chemin/de/police.ttf pour spécifier un fichier de polices TrueType à chaque fois

    • créer un lien symbolique:

      ln -s /chemin/de/police.ttf ~/.mplayer/subfont.ttf

    Si MPlayer a été compilé avec le support fontconfig, les méthodes ci-dessus ne fonctionneront pas, à la place -font attends un nom de police fontconfig et sinon utilise la police sans-serif par défaut. Pour obtenir une liste des polices connues de fontconfig, utilisez fc-list. Exemple: -font 'Bitstream Vera Sans'

  • Télécharger des paquetages de polices prêtes à l'emploi depuis le site de MPlayer. Note: Les polices actuellement disponibles sont limitées a l'iso 8859-1/2, mais il y en a quelques autres (coréen, russe, 8859-8, etc) dans la section contrib/font du FTP, créées par les utilisateurs.

    Les polices devront disposer du fichier font.desc approprié qui associe les positions maps unicode au code actuel du texte sous-titré. Une autre solution est d'avoir des sous-titres encodés en UTF8 et d'utiliser l'option -utf8 ou de renommer le fichier des sous-titres en <nom_video>.utf. Enregistrer de codepages différents en UTF8 peut se faire en utilisant les programmes konwert ou iconv.

    Tableau 1.1. Quelques liens:

    URLCommentaire
    ftp://ftp.mplayerhq.hu/MPlayer/releases/ polices ISO
    ftp://ftp.mplayerhq.hu/MPlayer/contrib/fonts/ contributions d'utilisateurs
    http://realtime.ssu.ac.kr/~lethean/mplayer/ polices coréennes et plugin RAW

Si vous avez choisi des polices non-TTF, dézippez le fichier vers ~/.mplayer ou $PREFIX/share/mplayer. Ensuite renommez ou faites un lien symbolique de l'un d'eux sur font, par exemple:

ln -s ~/.mplayer/arial-24 ~/.mplayer/font
Vous pouvez maintenant voir un compteur dans le coin supérieur gauche du film. (Faites les apparaître/disparaître avec la touche o).

(les sous-titres sont toujours activés, pour les désactiver merci de lire la page de man)

L'OSD possède 4 états (interchangeable avec o):

  1. barre de volume + barre d'avancement (par défaut)
  2. barre de volume + barre d'avancement + compteur + position en pourcentages quand déplacement
  3. barre de volume + barre d'avancement + compteur + durée totale du média
  4. uniquement les sous-titres

Vous pouvez en modifier le comportement par défaut en spécifiant la variable -osdlevel dans le fichier config, ou en précisant l'option -osdlevel en ligne de commande.

1.4.3. Menu OSD

MPlayer possède une interface de menu OSD complètement modulable.

Note

Le menu des préférences n'est PAS IMPLÉMENTÉ pour l'instant !

Installation

  1. compilez MPlayer en passant le paramètre --enable-menu à ./configure
  2. assurez-vous que les polices OSD sont installées
  3. copiez etc/menu.conf dans votre répertoire .mplayer
  4. copiez etc/input.conf dans votre répertoire .mplayer, ou dans le fichier de config globale de MPlayer (par défaut: /usr/local/etc/mplayer)
  5. trouvez et éditez input.conf pour activer les touches correspondant aux mouvements dans le menu (c'est décrit sur place).
  6. lancez MPlayer avec par exemple:

    $ mplayer -menu fichier.avi

  7. pressez n'importe laquelle des touches menu que vous avez défini