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 destinations 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. La valeur est ajouté au compteur d'avancement du film (movie's time position counter).
-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 soient différentes. Veuillez noter que le format de sous-titres MicroDVD utilise des numéros de trames absolus pour sa synchronisation, mais il ne contient pas d'information sur les fps et de ce fait l'option -subfps devrait être utilisée avec ce format. Si vous voulez résoudre ce problème de manière permanente, vous devez convertir manuellement le débit des trames du fichier de sous-titres. MPlayer peut faire cette conversion pour vous:

mplayer -dumpmicrodvdsub -fps subtitles_fps -subfps
 avi_fps -sub subtitle_filename 
 dummy.avi

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/synchronisation/jointure/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éé 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 HSI RAW également, voir http://realtime.ssu.ac.kr/~lethean/index.php?pagename=MplayerKoreanFonts).

  • Utiliser une fonte TrueType (TTF), par l'intermédiaire de la librairie freetype. La Version 2.0.9 ou supérieure 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 (incluant le Coréen, le Russe, l'ISO 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 UTF-8 peut se faire en utilisant les programmes konwert ou iconv.

    Tableau 1.1. Quelques liens:

    URLCommentaire
    ftp://ftp.mplayerhq.hu/MPlayer/releases/fonts/ polices ISO
    ftp://ftp.mplayerhq.hu/MPlayer/contrib/fonts/ contributions d'utilisateurs
    http://realtime.ssu.ac.kr/~lethean/index.php?pagename=MplayerKoreanFonts 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 correspondants 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